ฉันเป็นมือใหม่ใน iptables ที่จะซื่อสัตย์ ฉันมีกฎพื้นฐานบางอย่าง ทุกอย่างถูกปิดกั้นโดยค่าเริ่มต้น
iptables -t filter -F
iptables -t filter -X
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
...some rules for http, ftp etc...
iptables -t filter -A OUTPUT -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -t filter -A INPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
ด้วยสองบรรทัดสุดท้ายฉันพยายามเปิดการเข้าถึงสำหรับ ssh เพื่อให้ฉันสามารถเชื่อมต่อกับ bitbucket เมื่อฉันพยายามเชื่อมต่อกับ bitbucket:
ssh -Tv git@bitbucket.org
ฉันได้รับข้อผิดพลาด - การเชื่อมต่อหมดเวลา แต่เมื่อฉันปิดการใช้งาน iptables ฉันสามารถเชื่อมต่อได้โดยไม่มีปัญหา
ฉันกำลังคิดถึงอะไร ฉันควรเพิ่มกฎเพิ่มเติมหรือไม่
iptables -L -n -v
ขณะที่คุณพยายามเชื่อมต่อ นั่นจะบอกคุณว่ากฎ (หรือนโยบาย) ใดที่จับคู่แพ็คเก็ตซึ่งจะนำคุณไปสู่สิ่งที่คุณจำเป็นต้องปรับเปลี่ยน โปรดทราบว่าในกรณีส่วนใหญ่ACCEPT
นโยบายแบบง่าย ๆในห่วงโซ่ผลลัพธ์จะเพียงพอ เป็นเรื่องยากที่จะต้องกรองการรับส่งข้อมูลขาออกและเมื่อคุณทำเช่นนั้นเป็นไปได้ว่าคุณต้องการทำเช่นนั้นโดยอิงจากการเป็นเจ้าของบัญชีผู้ใช้