ฉันต้องกำหนดค่าเครื่องของฉันเพื่ออนุญาตการรับส่งข้อมูล HTTP ไปยัง / จาก serverfault.com เท่านั้น เว็บไซต์อื่น ๆ ทั้งหมดพอร์ตบริการไม่สามารถเข้าถึงได้ ฉันมากับกฎ iptables เหล่านี้:
#drop everything
iptables -P INPUT DROP
iptables -P OUTPUT DROP
#Now, allow connection to website serverfault.com on port 80
iptables -A OUTPUT -p tcp -d serverfault.com --dport 80 -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
#allow loopback
iptables -I INPUT 1 -i lo -j ACCEPT
มันใช้งานไม่ค่อยดี:
หลังจากฉันวางทุกอย่างแล้วไปยังกฎ 3:
iptables -A เอาท์พุท -p tcp -d serverfault.com - พอร์ต 80 -j ยอมรับ
ฉันได้รับข้อผิดพลาดนี้:
iptables v1.4.4: host/network `serverfault.com' not found
Try `iptables -h' or 'iptables --help' for more information.
คุณคิดว่าเกี่ยวข้องกับ DNS หรือไม่ ฉันควรอนุญาตด้วยหรือไม่ หรือฉันควรจะใส่ที่อยู่ IP ในกฎ? คุณคิดว่าสิ่งที่ฉันพยายามทำสามารถทำได้ด้วยกฎที่ง่ายกว่า? อย่างไร?
ฉันขอขอบคุณความช่วยเหลือหรือคำแนะนำเกี่ยวกับเรื่องนี้ ขอบคุณมาก!