Block connection บน UBUNTU
ในserver ทั่วๆๆไปนั้นจะมีการเปิดใช้ Firewall อยู่แล้ว สำหรับFirewallนั้นสามารถconfigได้มากมาย จะblockแบบใหนอย่างไร ซึ่งจะเหมาะกับผู้ดูแลที่มีความเชียวชาญระดับหนึ่ง แต่หากต้องการblockโดยไม่พึ่งfirewall ก็สามารถทำได้โดยที่ใน ubuntu จะมีไฟล์อยู่สองไฟล์ที่สำคัญคือ
/etc/hosts.allow
สำหรับไฟล์นี่จะเก็บข้อมูลที่ต้องการจะบอกว่า อนุญาติให้ application ใด connect ได้บ้าง และ
/etc/host.deny
สำหรับ Drop connection จาก client ที่เราไม่ต้องการ
ทีนี่เรามาดูตัวอย่างกันครับ
จาก log ใน auth.log ของ ubuntu พบว่ามีเครื่องจาก จีน IP=125.88.177.87 กำลังทำการ brute-force secure shell ด้วย root user
[code language="shell"]Feb 15 03:53:06 platinum sshd[2400]: Received disconnect from 125.88.177.87: 11: [preauth]
Feb 15 03:53:06 platinum sshd[2400]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=125.88.177.87 user=root
Feb 15 03:53:08 platinum sshd[2402]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=125.88.177.87 user=root
Feb 15 03:53:10 platinum sshd[2402]: Failed password for root from 125.88.177.87 port 63689 ssh2
Feb 15 03:53:15 platinum sshd[2402]: message repeated 2 times: [ Failed password for root from 125.88.177.87 port 63689 ssh2]
[/code]
หากไม่ต้องการให้เครื่องดังกล่าวไม่มายุ่งกับเครื่องserverของเราได้อีกทำได้โดย
เข้าไปที่
vi /etc/host.deny
แล้วป้อนคำสั่ง
[code language="shell"]all:125.88.177.87[/code]
เพื่อบอกว่าไม่ว่าจะconnectด้วย application ใดๆ ด้วย IP 125.88.177.87 เครื่องจะทำการ drop package นั้นทิ้งทั้งหมด
หรือถ้าจะทำการ Drop เฉพาะ ssh ก็สามารถทำได้โดย
[code language="shell"]sshd:125.88.177.87[/code]
เป็นเรียบร้อยครับ IP 125.88.177.87 ก็จะไม่สามารถมาทำอันตรายเครื่องserverอันเป็นที่รักยิ่งของเราได้อีก