
- February 20, 2025
- 4:43 pm
วิธีการกำหนดค่าไฟร์วอลล์บน Linux ด้วย iptables
iptables
เป็นเครื่องมือสำหรับกำหนดค่ากฎไฟร์วอลล์ใน Linux โดยทำงานร่วมกับ Netfilter ซึ่งเป็นส่วนหนึ่งของเคอร์เนล Linux ที่ใช้สำหรับควบคุมและกรองแพ็กเก็ตเครือข่าย
หลักการทำงานของ iptables
iptables
ทำงานโดยการสร้าง กฎ (rules) ที่กำหนดว่าจะแบน (DROP), อนุญาต (ACCEPT) หรือดำเนินการอื่น ๆ กับแพ็กเก็ตเครือข่ายที่เข้ามา ขาออก หรือถูกส่งผ่านเซิร์ฟเวอร์
โครงสร้างของ iptables
Tables (ตาราง): ประกอบด้วยกฎหลาย ๆ ข้อที่ใช้กำหนดการควบคุมแพ็กเก็ต
filter
– ใช้สำหรับควบคุมการอนุญาตและปฏิเสธแพ็กเก็ตnat
– ใช้สำหรับการเปลี่ยนเส้นทางและการแปลงที่อยู่ IPmangle
– ใช้สำหรับแก้ไขแพ็กเก็ตเฉพาะทาง เช่น QoSraw
– ใช้สำหรับกำหนดแพ็กเก็ตที่ไม่ต้องการให้ถูกตรวจสอบโดยระบบติดตามการเชื่อมต่อ (connection tracking)
Chains (เชน): เป็นชุดของกฎที่ใช้กำหนดเส้นทางของแพ็กเก็ตในแต่ละตาราง
INPUT
– ควบคุมแพ็กเก็ตที่เข้ามาในเซิร์ฟเวอร์OUTPUT
– ควบคุมแพ็กเก็ตที่ออกจากเซิร์ฟเวอร์FORWARD
– ควบคุมแพ็กเก็ตที่ถูกส่งผ่านเซิร์ฟเวอร์ไปยังเครือข่ายอื่นPREROUTING
– ใช้เปลี่ยนแปลงแพ็กเก็ตก่อนเข้าสู่กระบวนการ RoutingPOSTROUTING
– ใช้เปลี่ยนแปลงแพ็กเก็ตก่อนออกจากเซิร์ฟเวอร์
วิธีการ Setup iptables
1. ดูกฎที่มีอยู่ใน iptables
ดูกฎทั้งหมดใน Chain INPUT, OUTPUT, FORWARD
sudo iptables -L -v --line-numbers
-L
→ แสดงรายการกฎทั้งหมด-v
→ แสดงรายละเอียดเพิ่มเติม--line-numbers
→ แสดงหมายเลขของกฎแต่ละข้อ
ดูกฎเฉพาะ Chain INPUT
sudo iptables -L INPUT -v --line-numbers
ดูกฎที่เกี่ยวข้องกับพอร์ตที่ต้องการ (เช่น 5015)
sudo iptables -L INPUT -v | grep 5015
ดูกฎทั้งหมดในรูปแบบที่ใช้กับ iptables-save
sudo iptables-save
2. เพิ่มกฎใหม่เข้า iptables (ตัวในการเพิ่ม)
ตัวอย่าง: อนุญาต TCP ขาเข้า (INPUT) บนพอร์ต 5015
sudo iptables -I INPUT -p tcp --dport 5015 -j ACCEPT
-I INPUT
→ แทรกกฎเข้าINPUT
(เป็นลำดับแรก) -p tcp
→ ใช้กับโปรโตคอล TCP--dport 5015
→ พอร์ตปลายทางคือ 5015-j ACCEPT
→ อนุญาตให้แพ็กเก็ตผ่าน
เพิ่มกฎให้อยู่ท้ายสุดของ Chain
sudo iptables -A INPUT -p tcp --dport 5015 -j ACCEPT
-A INPUT
→ เพิ่มกฎไว้ท้ายสุดของ ChainINPUT
3. ลบกฎออกจาก iptables
วิธีที่ 1: ลบกฎโดยใช้เงื่อนไขเดียวกับตอนเพิ่ม
sudo iptables -D INPUT -p tcp --dport 5015 -j ACCEPT
วิธีที่ 2: ลบกฎโดยใช้หมายเลขบรรทัด
sudo iptables -L INPUT --line-numbers
ลบกฎที่หมายเลข (เช่น หมายเลข 3)
sudo iptables -D INPUT 3
4. บันทึกและกู้คืนกฎ iptables (ให้รอดจากการรีสตาร์ท)
บันทึกกฎปัจจุบัน (Ubuntu/Debian)
sudo iptables-save > /etc/iptables/rules.v4
โหลดกฎกลับมาใช้ใหม่
sudo iptables-restore < /etc/iptables/rules.v4
ตัวอย่างการใช้งาน
อนุญาต SSH (พอร์ต 22)
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
บล็อก IP 192.000.0.000 ไม่ให้เข้าเซิร์ฟเวอร์
sudo iptables -A INPUT -s 192.000.0.000 -j DROP
อนุญาตให้เครื่อง IP 192.111.0.000 ใช้พอร์ต 3306 (MySQL)
sudo iptables -A INPUT -p tcp -s 192.111.0.000 --dport 3306 -j ACCEPT
ลบกฎที่บล็อก IP 192.000.0.000
sudo iptables -D INPUT -s 192.000.0.000 -j DROP
สรุป
- ใช้
iptables -L
เพื่อตรวจสอบกฎ - ใช้
iptables -A
หรือiptables -I
เพื่อเพิ่มกฎ - ใช้
iptables -D
เพื่อลบกฎ - ใช้
iptables-save
และiptables
เพื่อบันทึ-restore กและโหลดกฎใหม่
หมายเหตุ: iptables
จะรีเซ็
- Categories:
- Manual
- THAI DATA CLOUD Platform
หมวดหมู่ที่น่าสนใจ
- Account Settings
- AI
- Alibaba Cloud
- AWS Amazon Web Services
- Campaign
- CentOS/AlmaLinux
- Cloud
- Cloud Backup
- Cloud Communication
- Cloud Server Management
- Cloud Solution
- Cloud Solution for Government
- Cloud Solutions by Industry
- Cloud Storage
- Cloud VPS App Plus +
- Cloud VPS DirectAdmin
- Cloud VPS Plesk
- Cyber Security
- Database Server
- DDoS
- Digital Transformation
- Direct Mail
- Directadmin
- Domainname
- Ecommerce
- Generative AI
- Getting Started
- Google Cloud
- Google G Suite
- Huawei Cloud
- IT News
- Linux Server
- Manual
- Microsoft Azure
- News
- On-premise
- Promotion
- Recommend Solution (Enterprise)
- Server
- SMS
- THAI DATA CLOUD Platform
- Ubuntu
- Ubuntu
- VPS Server
- Web Design
- Web Hosting
- Web Hosting (DirectAdmin)
- Web Hosting (Plesk)
- Web Technologies
- Windows Server
- Wordpress
- Zimbra
- เรื่องราวความประทับใจ
- โซลูชันสำหรับธุรกิจการผลิตและยานยนต์
- โซลูชันสำหรับธุรกิจการศึกษา
- โซลูชันสำหรับธุรกิจการเงิน
- โซลูชันสำหรับธุรกิจขนส่งและกระจายสินค้า
- โซลูชันสำหรับธุรกิจค้าปลีก
- โซลูชันสำหรับธุรกิจท่องเที่ยว
- โซลูชันสำหรับธุรกิจบริการสุขภาพและโรงพยาบาล
- โซลูชันสำหรับธุรกิจประกันภัย
- โซลูชันสำหรับธุรกิจพลังงานและสาธารณูปโภค
- โซลูชันสำหรับธุรกิจสื่อสารมวลชนและเอ็นเตอร์เทนเมนท์
- โซลูชันสำหรับธุรกิจอสังหาริมทรัพย์
- โซลูชันสำหรับธุรกิจเทคโนโลยี