กลับไปหน้าบล็อก
มกราคม 13, 2026คู่มือ

วิธีกำหนดค่าไฟร์วอลล์บน Linux Server

คู่มือฉบับสมบูรณ์เกี่ยวกับการกำหนดค่าไฟร์วอลล์ UFW (Ubuntu) และ Firewalld (CentOS) เพื่อรักษาความปลอดภัยเซิร์ฟเวอร์ของคุณ

วิธีกำหนดค่าไฟร์วอลล์บน Linux Server

ไฟร์วอลล์มีความสำคัญต่อความปลอดภัยของเซิร์ฟเวอร์ ควบคุมการรับส่งข้อมูลเครือข่ายขาเข้าและขาออก คู่มือนี้ครอบคลุมการกำหนดค่า UFW บน Ubuntu/Debian และ Firewalld บนระบบ CentOS/RHEL

การติดตั้ง UFW

bash
sudo apt update
sudo apt install ufw -y

คำสั่ง UFW พื้นฐาน

bash
# ตรวจสอบสถานะ
sudo ufw status

# เปิดใช้งานไฟร์วอลล์
sudo ufw enable

# อนุญาต SSH (สำคัญ!)
sudo ufw allow 22/tcp

# อนุญาต HTTP และ HTTPS
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# ปฏิเสธพอร์ต
sudo ufw deny 3306/tcp

# ลบกฎ
sudo ufw delete allow 80/tcp

การใช้โปรไฟล์แอปพลิเคชัน

bash
# รายชื่อแอปพลิเคชันที่มี
sudo ufw app list

# อนุญาต Nginx
sudo ufw allow 'Nginx Full'

# อนุญาต OpenSSH
sudo ufw allow 'OpenSSH'

การติดตั้ง Firewalld

bash
sudo yum install firewalld -y
sudo systemctl start firewalld
sudo systemctl enable firewalld

คำสั่ง Firewalld พื้นฐาน

bash
# ตรวจสอบสถานะ
sudo firewall-cmd --state

# รายชื่อกฎทั้งหมด
sudo firewall-cmd --list-all

# อนุญาตบริการ
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

# อนุญาตพอร์ต
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload

การทำงานกับ Zones

Firewalld ใช้โซนเพื่อจัดการความปลอดภัยเครือข่าย โซนทั่วไป:

bash
# รายชื่อโซน
sudo firewall-cmd --get-zones

# ตั้งค่าโซนเริ่มต้น
sudo firewall-cmd --set-default-zone=public

# เพิ่มบริการในโซน
sudo firewall-cmd --zone=public --add-service=ssh --permanent
sudo firewall-cmd --reload

แนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัย

  • อนุญาต SSH เสมอก่อนเปิดใช้งานไฟร์วอลล์เพื่อหลีกเลี่ยงการล็อกตัวเองออก
  • ใช้ที่อยู่ IP เฉพาะเมื่อเป็นไปได้: sudo ufw allow from 192.168.1.100
  • ตรวจสอบกฎไฟร์วอลล์เป็นประจำและลบกฎที่ไม่ได้ใช้ออก
  • เปิดใช้งานการบันทึกเพื่อตรวจสอบกิจกรรมไฟร์วอลล์
  • ทดสอบกฎไฟร์วอลล์ก่อนนำไปใช้จริง