ติดตั้ง Firewall อย่างง่ายๆ ให้ Linux

Firewall แบบพื้นฐานสำหรับเครื่องเดี่ยวๆ คือการบังคับให้มีการส่งข้อมูลผ่านเน็ตเวิร์คได้เฉพาะบางพอร์ตที่เราอนุญาตเท่านั้น เพื่อมิให้มีใครแปลกปลอมแอบส่งข้อมูลเข้าหรือออกมาทางพอร์ตอื่นๆ โดยที่เราไม่รู้ พอร์ตหลักๆ ที่เราจะปล่อยให้ข้อมูลเข้าออกได้น่าจะได้แก่ TCP พอร์ต 80 สำหรับ HTTP protocol หรือเว็บเบราเซอร์นั่นเอง นอกจากนั้นก็คือ UDP พอร์ต 53 สำหรับ DNS

ในการติดตั้ง Firewall แบบ Stand-alone อย่างง่าย ๆให้กับ Linux Server เราใช้คำสั่ง iptables

# iptables -L

คำสั่งในนี้ใช้ดูว่ามีการ Firewall ไว้ในเครื่องแล้วหรือไม่ และมีอะไรบ้าง คำว่า INPUT หมายถึงข้อมูลที่ว่ิ่งเข้าเครื่อง OUTPUT คือวิ่งออก ส่วน FORWARD คือวิ่งผ่าน

ต่อไปให้สั่ง

# iptables -F

อันนี้เพื่อล้างการตั้งค่าของเก่าๆ ออกให้หมดก่อน

จากนั้นรันคำสั่งต่อไปนี้ทีละคำสั่ง

iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --sport 80 -j ACCEPT
iptables -A INPUT -p udp --sport 53 -j ACCEPT
iptables -A INPUT -j DROP
iptables-save > /etc/iptables.rules

คำสั่งเหล่านี้เป็นการเปิดพอร์ต tcp 80 และ udp 53 ไว้เท่านั้น แล้วให้บันทึกการตั้งค่าเหล่านี้ไว้ในไฟล์ /etc/iptables.rules ด้วย เพื่อว่าในการเปิดเครื่องครั้งต่อไป มันจะได้จำได้ด้วย แต่ก่อนจะเสร็จสมบูรณ์ต้องเติมบรรทัดต่อไปนี้ต่อท้ายบรรทัดสุดท้ายในไฟล์ชื่อ /etc/network/interfaces ด้วย

pre-up iptables-restore < /etc/iptables.rules

จากนั้นให้ทำการ restart เซิร์ฟเวอร์หนึ่งครั้ง เมื่อเปิดเครื่องขึ้นมาใหม่แล้วให้ลอง iptables -L ดูอีกทีว่าค่าต่างๆ ยังเป็นตามที่เราตั้งไว้หรือไม่

ส่วนถ้าเครื่องของคุณมีการใช้งานพอร์ตอื่นๆ อีก และต้องการเปิดเพิ่มก็แค่เพิ่มเติมการเปิดพอร์ตเหล่านั้นเข้าไป เช่น ต้องการเปิดพอร์ต tcp 20,21,22 ไว้ให้ FTP และ SSH ก็แค่เพิ่มคำสั่งนี้เข้าไปด้วย

iptables -A INPUT -p tcp --sport 20 -j ACCEPT
iptables -A INPUT -p tcp --sport 21 -j ACCEPT
iptables -A INPUT -p tcp --sport 22 -j ACCEPT

เท่านั้นเอง

Leave a Reply

Your email address will not be published. Required fields are marked *