หลังจากลงเสร็จ เราก็มาเริ่มกันเลยดีกว่า
ก่อนอื่น สมมุติว่าเราอยากจะปิดเครื่องเราโดยสมบูรณ์แบบ แบบว่าชาตินี้ข้าไม่ต้องการคุยกะชาวบ้าน ชาวช่องอีกเลย ก็ให้สั่งว่า
> iptables -A INPUT -i eth0 -j DROP
ถ้าสั่งแบบนี้ แปลว่าเราไม่รับ package ใดๆ ที่เข้ามาทาง eth0 เลย (ก็ไม่ฟังชาวบ้านหน่ะละ)
note: eth0 ก็คือ LAN Card ตัวที่ 1 ของเรา ถ้ามีตัวอื่นๆ อีกก็ไล่ไปเรื่อย
note2: ถ้าไม่ได้อยู่หน้า console อย่าไปสั่ง command นี้เชียว เดี๋ยวจะเป็นเรื่อง
ที นี้มันเป็นไปได้หรือ? ที่จะไม่คุยกะชาวบ้านชาวช่องเลย คำตอบคือ เป็นไปไม่ได้ครับ แล้วทีนี้จะทำไงละ? ก็ต้องปิดเป็นจุดๆ ไป เช่น สมมุติว่า เราไม่อยากให้ชาวบ้านเค้า ping เราเจอ เราก็จะสั่งว่า
> iptables -A INPUT -p icmp -j DROP
มัน แปลว่า ถ้ามีอะไรก็ตามที่เป็น icmp เข้ามา ก็ให้ drop ทิ้งไป ไม่ต้องสนใจ ที่นี้ ถ้าสมมุติว่าเรามี LAN Card หลายตัว เกิดอยากปิดแค่บางตัวจะทำยังไง เราก็ต้องผสมคำสั่งเข้าไปซิครับ ย้อนกลับไปดูอันบนกันหน่อย ผมมี -i eth0 อยู่ใช่ม่ะ? เราก็เอาไอ้ -i eth0 นี่ละ มาใส่เข้าไปเลย กลายเป็น
> iptables -A INPUT -i eth0 -p icmp -j DROP
คราวนี้มันก็จะแปลได้ว่า ถ้ามี icmp เข้ามาทาง eth0 เมื่อไหรให้ drop ทิ้งไป แต่ถ้ามาทางอื่นๆ ก็ไม่ต้องทำอะไร (คือปล่อยไปตามปกติ)
คราวนี้มาดูความหมายกันมั่งว่าไอ้ parameter แต่ละตัวเนี่ย มันคืออะไรกันบ้าง? เริ่มจาก
: -A INPUT ไอ้เข้า -A INPUT เนี่ย มันหมายถึงขาเข้า ทีนี้มีขาเข้ามันก็ต้องมีขาออก ก็เปลี่ยนจาก -A INPUT เป็น -A OUTPUT เท่านั้นเองครับ ถ้าเราใช้ -A ต่อๆ กันหลายๆ คำสั่ง มันก็จะเอา rule ไปต่อท้ายเรื่อยๆ ถ้าหากต้องการแทรก ให้ใช้ -I INPUT 1 แทน ซึ่งถ้าใส่ 1 มันจะเติมเข้าไปเป็นตัวแรกสุดเลย
: -i eth0 ใช้ได้กะ -A INPUT เท่านั้น เอาไว้ระบุว่าจะให้ดู package ที่ LAN Card ตัวไหน อีกตัวที่เป็นไปได้คือ -o eth0 ก็จะใช้ได้กะ -A OUTPUT เท่านั้นเหมือนกัน
: -p icmp ไอ้ตัวนี้ละที่จะเป็นตัวกำหนดเลยว่าเราจะ monitor protocal ประเภทไหน เช่น icmp (ping), tcp, udp หรือว่าอื่นๆ ถ้าเป็น tcp หรือว่า udp เราสามารถกำหนด port เพิ่มเติมได้ด้วย parameter -dport 80 หรือ -sport 80 สองตัวนี้ต่างกันตรงที่ว่า ตัวนึงไว้ใช้กะ -A INPUT (-dport 80) ส่วนอีกตัวไว้ใช้กะ -A OUTPUT (-sport 80)
: -J DROP ไอ้เจ้าตัวนี้ละสำคัญที่สุด มันจะเป็นตัวที่บอกว่า ถ้ามี package เข้ามาตามเงื่อนไขที่ระบุไว้ในบรรทัดนี้แล้ว จะให้ทำยังไง เป็นไปได้คือ DROP, ACCEPT, REJECT, REDIRECT ซึ่งที่เราสนใจจะมีสองตัวคือ DROP กะ ACCEPT ความหมายก็ตามชื่อมันเลย DROP ก็ช่างหัวมัน ทิ้งไปโล้ด ส่วน ACCEPT ก็รับมาเข้ามาแล้วจะจัดการยังไงต่อเป็นอีกเรื่องนึง
: -F อันนี้รุนแรงสุดละ มันคือคำสั่งที่จะลบ rule ทั้งหมดที่เคยทำไว้ ถ้าเกิดทำๆ ไปแล้วเจ๊งก็สามารถ reset ได้ด้วยวิธีนี้ครับ
คลังบทความของบล็อก
-
▼
2008
(65)
-
▼
สิงหาคม
(57)
- โปรแกรม portsentry
- all-in-one 2 (portsentry+iptables+apt-proxy+squid3)
- ทำเองได้ Centralized log แถมวิวได้ด้วย PHP SYSLOGV...
- เวอร์ชั่นเต็ม: การติดตั้ง Centralized log ตาม พรบ....
- debian: iptables
- สคริปท์ บล็อค keyword โดยใช้ Squid คับ เห็นมีคน ถาม
- compile ipp2p บน debian etch ไม่ผ่าน ช่วยทีครับ
- compile debian lenny support l7
- http://www.opentle.org/th/node/7854
- ลองติดตั้ง dns แบบเปลี่ยนค่าได้
- http://download.grisoft.cz/softw/70/update/
- การติดตั้ง Samba Server
- My sources.list for Debian Lenny/Sid
- NTPDate: เวลานั้นสำคัญไฉน .
- บทความ debian เยอะมากๆ
- set php บน debian
- การเก็บ log
- โครงการเก็บข้อมูลจราจร (Traffic Data) ด้วยซอฟต์แวร...
- Squid + Radius authentication
- ntop โปรแกรม monitor network
- ติดตั้ง Shorewall บน Ubuntu
- ผมจะทำ Server สำหรับให้บาง user สามารถเข้าอินเตอร์...
- คำสั่งเฝ้ามองระบบ Linux
- สงสัยเรื่อง ไฟล์วอล
- IPTABLES เป็น Firewall พื้นฐานของ Linux เกือบทุก D...
- ดูข้อมูลของ CPU
- Ubuntu : iptables rule
- Iptables : SSH Brute force attack
- My Firewall Config:
- debian: iptables
- ICMP iptables
- วิธี set iptables บน linux แบบง่ายๆ
- ปัญหาเรื่อง function บน MySQL 5.x
- NTPDate: เวลานั้นสำคัญไฉน ....
- ตั้งเวลาด้วย at
- การ dump ข้อมูลใน MySQL ให้ถูกต้องตาม Character-set
- การติดตั้ง shoutcast เป็น video streaming
- ทำเองได้ centralized log แถมวิวได้ด้วย php syslogv...
- backup mysql database ด้วย mysqldump
- Comodo Firewall
- ป้องกันการโจมตีด้วย SSH
- Debian:Install eBox package on Debian
- การเปิดปิด Service ตอนที่บูทเครื่องขึ้นมา
- ทดลองติดตั้ง apache2 mysql5 phpmyadmin
- เดเบียน ๑๐๑
- Intro to Debian Process (ตอนจบ)
- Intro to Debian Process (3)
- Intro to Debian Process (2)
- Intro to Debian Process (1)
- เอกสารเกี่ยวกับ Linux
- เกี่ยวกับ rc.statd จำเป็นไหม จะ disable ได้ไหม
- CoovaChilli Documentation
- shorewall on Debian
- คำสั่ง Firewall
- Firewall บน Debian
- เพิ่มความปลอดภัยให้กับ Linux
- Debian+ Inno DB Myisam
-
▼
สิงหาคม
(57)