ลด 50% ทุกแพ็กเกจ เวลาจำกัด เริ่มต้นที่ $2.48/mo
เหลืออีก 9 นาที
ความปลอดภัยและเครือข่าย

คำอธิบายคำสั่ง UFW: วิธีติดตั้ง เปิดใช้งาน และจัดการกฎ Firewall

เอดา เลิฟกูด By เอดา เลิฟกูด อ่าน 9 นาที อัปเดตเมื่อ 23 ก.พ. 2568
syntax คำสั่ง ufw

ถ้าคุณเป็น sysadmin คุณคงเคยมีช่วงเวลาที่อยากได้ระบบความปลอดภัยที่ทรงพลัง ตั้งค่าง่าย และบริหารจัดการได้สะดวก โดยไม่ต้องดำดิ่งลงไปใน กฎ iptables. UFW หรือ ไฟร์วอลล์ที่ไม่ซับซ้อน เป็นเครื่องมือความปลอดภัยของเครือข่ายที่ตอบโจทย์นี้ได้ดี ด้วยอินเทอร์เฟซที่เข้าใจง่าย UFW ช่วยให้คุณควบคุมการตั้งค่า firewall ของเซิร์ฟเวอร์ได้ด้วยคำสั่งที่ไม่ซับซ้อน

ใน UFW tutorial นี้ เราจะพาคุณไปรู้จักกับ UFW ตั้งแต่การติดตั้งจนถึงการตั้งค่าขั้นสูง ครอบคลุมทั้งการเปิดและปิดใช้งาน UFW การทำความเข้าใจ syntax และตัวอย่างการใช้งานจริงในสถานการณ์ต่าง ๆ เมื่ออ่านจบ คุณจะเข้าใจวิธีใช้ UFW เพื่อป้องกันเซิร์ฟเวอร์ได้อย่างมั่นใจ

ติดตั้ง UFW

แม้จะยังไม่คุ้นเคยกับการจัดการ firewall คุณก็ติดตั้ง UFW ได้ไม่ยาก เพราะขั้นตอนการติดตั้งตรงไปตรงมา ทำตาม UFW tutorial ด้านล่างนี้เพื่อเริ่มใช้งานบนเซิร์ฟเวอร์ของคุณ

ขั้นตอนที่ 1: อัปเดต Package List

ก่อนติดตั้งซอฟต์แวร์ใหม่ใด ๆ ควรอัปเดต package list ก่อนเสมอ

sudo apt update

ขั้นตอนที่ 2: ติดตั้ง UFW

ติดตั้ง UFW ได้ด้วยคำสั่งเดียว:

sudo apt install ufw

ขั้นตอนที่ 3: ตรวจสอบการติดตั้ง

เมื่อติดตั้งเสร็จแล้ว ตรวจสอบว่าการติดตั้งสำเร็จหรือไม่ได้โดยดูเวอร์ชันของ UFW ด้วยคำสั่ง:

ufw version

ขั้นตอนที่ 4: การตั้งค่าเบื้องต้น

ก่อนเปิดใช้งาน UFW ควรตั้งค่าเบื้องต้นให้เรียบร้อยก่อน เพื่อให้แน่ใจว่า UFW ทำงานตามที่คาดไว้เมื่อเปิดใช้งานจริง หนึ่งในขั้นตอนที่สำคัญที่สุดคือการกำหนด default policy ซึ่งโดยค่าเริ่มต้น UFW จะบล็อก connection ขาเข้าทั้งหมด และอนุญาต connection ขาออกทั้งหมด ใช้คำสั่งต่อไปนี้เพื่อตรวจสอบหรือตั้งค่า default เหล่านี้:

sudo ufw default deny incoming
sudo ufw default allow outgoing

ขั้นตอนที่ 5: เปิดใช้งาน UFW

การเปิดใช้งาน UFW จะเป็นการเปิด firewall พร้อมกับกฎและ default policy ที่คุณกำหนดไว้ ใช้คำสั่งต่อไปนี้:

sudo ufw enable

ขั้นตอนที่ 6: ตรวจสอบสถานะของ UFW

ดูสถานะของ UFW และกฎที่ใช้งานอยู่ในปัจจุบันได้ด้วยคำสั่งนี้:

sudo ufw status

เมื่อทำตาม UFW tutorial นี้ครบถ้วนแล้ว คุณจะติดตั้งและเปิดใช้งาน UFW บนเซิร์ฟเวอร์ได้สำเร็จ การตั้งค่าเริ่มต้นนี้ทำให้การปรับแต่งในขั้นต่อไปทำได้ง่ายขึ้น UFW มีความยืดหยุ่นสูงและรองรับการเพิ่มกฎเฉพาะเพื่ออนุญาตหรือบล็อก traffic ตามที่ต้องการ

คำสั่งและ Syntax พื้นฐานของ UFW

UFW ถูกออกแบบมาให้ใช้งานง่าย จึงมีคำสั่งที่ตรงไปตรงมาและ syntax ที่ชัดเจน ช่วยให้การจัดการ firewall ไม่ยุ่งยาก การเข้าใจคำสั่งพื้นฐานและ syntax เหล่านี้จะช่วยให้คุณตั้งค่าและดูแล firewall ของเซิร์ฟเวอร์ได้อย่างมีประสิทธิภาพ ในหัวข้อก่อนหน้าของ UFW tutorial นี้ เราได้พูดถึงการเปิดใช้งาน UFW ไปแล้ว มาดูคำสั่งสำหรับปิดใช้งาน UFW กันต่อ

ปิดการใช้งาน UFW

หากต้องการปิดใช้งาน UFW เพื่อแก้ปัญหาหรือบำรุงรักษาระบบ ใช้คำสั่งนี้:

sudo ufw disable

ตรวจสอบสถานะของ UFW

การตรวจสอบสถานะของ UFW อยู่สม่ำเสมอช่วยให้คุณทราบว่ากฎใดกำลังทำงานอยู่ และยืนยันได้ว่า firewall ทำงานตรงตามที่ต้องการ ตรวจสอบสถานะด้วยคำสั่งนี้:

sudo ufw status

เพิ่ม verbose option ต่อท้ายคำสั่งนี้เพื่อดูรายละเอียดสถานะของ UFW เพิ่มเติม

sudo ufw status verbose

อนุญาตการจราจร

หนึ่งในฟังก์ชันหลักของ UFW คือการอนุญาตหรือบล็อกทราฟฟิกตามข้อกำหนดด้านความปลอดภัยของคุณ หากต้องการอนุญาตทราฟฟิกผ่านพอร์ตที่ระบุ ให้ใช้คำสั่ง allow ตามด้วยหมายเลขพอร์ตและโปรโตคอล (tcp/udp) ตัวอย่างเช่น:

sudo ufw allow 22/tcp

คำสั่งนี้อนุญาตการเชื่อมต่อ SSH ขาเข้าบนพอร์ต 22 โดยใช้โปรโตคอล TCP

ปฏิเสธการเข้าถึง

ในทำนองเดียวกัน หากต้องการบล็อกทราฟฟิก ให้ใช้คำสั่ง deny

sudo ufw deny 23/tcp

คำสั่งนี้บล็อกการเชื่อมต่อ Telnet ขาเข้าบนพอร์ต 23 โดยใช้โปรโตคอล TCP

การอนุญาตทราฟฟิกตาม IP Address

UFW ยังรองรับการอนุญาตหรือบล็อกทราฟฟิกจาก IP address ที่ระบุได้ด้วย วิธีนี้ช่วยให้คุณกำหนดกฎความปลอดภัยได้ละเอียดขึ้น ตัวอย่างเช่น:

sudo ufw allow from 192.168.1.10

การบล็อกทราฟฟิกตาม IP Address

การบล็อกทราฟฟิกตาม IP address ทำได้ตรงไปตรงมาเช่นเดียวกับคำสั่งก่อนหน้า ตัวอย่างการใช้งาน:

sudo ufw deny from 10.0.0.0/8

การจัดการกฎ UFW

ในการทำงานกับ UFW คุณอาจต้องเพิ่ม แก้ไข หรือลบกฎต่าง ๆ มาดูกันว่าคำสั่ง UFW ใดที่ใช้ทำสิ่งเหล่านี้ได้บ้าง เริ่มต้นที่การเพิ่มกฎใหม่ก่อน คุณสามารถใช้คำสั่ง allow หรือ deny ที่อธิบายไปแล้วได้เลย แต่การลบกฎนั้นมีขั้นตอนมากกว่านั้นเล็กน้อย คุณต้องแสดงรายการกฎแบบมีหมายเลขก่อน เพื่อระบุว่าต้องการลบกฎข้อใด ใช้คำสั่งต่อไปนี้เพื่อแสดงรายการกฎพร้อมหมายเลข:

sudo ufw status numbered

จากนั้นลบกฎโดยระบุหมายเลขของกฎนั้น:

sudo ufw delete 1

กำลังโหลด UFW ใหม่

ทุกครั้งที่มีการเปลี่ยนแปลงกฎ UFW ควรโหลด firewall ใหม่เสมอ คำสั่ง UFW ต่อไปนี้จะโหลด UFW ใหม่ให้คุณ:

sudo ufw reload

คำสั่งนี้นำกฎทั้งหมดกลับมาใช้ใหม่โดยไม่จำเป็นต้องปิดและเปิด firewall อีกครั้ง

รีเซ็ตการตั้งค่า UFW

UFW มีคำสั่งสำหรับรีเซ็ตค่าและลบกฎทั้งหมดที่มีอยู่ด้วย แต่ควรทราบว่าหากรีเซ็ต UFW ระบบจะปิดใช้งาน UFW และลบกฎทุกข้อออก คำสั่ง UFW ต่อไปนี้จะรีเซ็ต UFW:

sudo ufw reset

การเรียนรู้คำสั่ง UFW พื้นฐานเหล่านี้และทำความเข้าใจ syntax ของแต่ละคำสั่งเป็นสิ่งจำเป็นสำหรับการจัดการ firewall อย่างมีประสิทธิภาพ ในหัวข้อถัดไป เราจะเจาะลึกการตั้งค่าขั้นสูงและ use case ต่าง ๆ ที่จะช่วยเสริมความปลอดภัยให้เซิร์ฟเวอร์ของคุณยิ่งขึ้น

การใช้ UFW ร่วมกับเครื่องมือความปลอดภัยอื่น

UFW เป็นเครื่องมือที่ดีสำหรับการจัดการ firewall แต่คุณยังสามารถใช้ร่วมกับเครื่องมือความปลอดภัยอื่น ๆ เพื่อให้ได้ประสิทธิภาพสูงสุด หนึ่งในนั้นคือ fail2banซึ่งช่วยป้องกันการโจมตีแบบ brute force โดยตรวจสอบ log และบล็อก IP address ที่มีพฤติกรรมน่าสงสัย วิธีการผสานการทำงาน UFW กับ fail2ban เพื่อเพิ่มความปลอดภัยมีดังนี้

fail2ban เป็นเครื่องมือด้านความปลอดภัยที่สแกน log file เพื่อหารูปแบบการเข้าสู่ระบบที่ล้มเหลวซ้ำ ๆ หรือกิจกรรมที่น่าสงสัยอื่น ๆ เมื่อพบรูปแบบดังกล่าว ระบบจะอัปเดตกฎ firewall โดยอัตโนมัติเพื่อบล็อก IP address นั้น การใช้ UFW ร่วมกับ Fail2ban มีประโยชน์มากในการรับมือกับการโจมตีแบบ brute-force login ที่เกิดซ้ำ

การติดตั้ง fail2ban

หากต้องการติดตั้ง fail2ban ให้รันคำสั่งต่อไปนี้บนเซิร์ฟเวอร์ของคุณ:

sudo apt-get install fail2ban

การตั้งค่า fail2ban ให้ทำงานร่วมกับ UFW

ต่อไปจะอธิบายวิธีตั้งค่า fail2ban ให้ทำงานร่วมกับ UFW

ขั้นตอนที่ 1: สร้างไฟล์การตั้งค่า Local Jail

ไฟล์การตั้งค่าเริ่มต้นของ fail2ban อยู่ที่ /etc/fail2ban/jail.confอย่างไรก็ตาม แนะนำให้สร้างไฟล์สำเนาในเครื่องเพื่อป้องกันการเขียนทับการตั้งค่าของคุณเมื่อ fail2ban ได้รับการอัปเดต คุณสามารถคัดลอกไฟล์คอนฟิกได้ด้วยคำสั่งนี้:

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

ขั้นตอนที่ 2: แก้ไขการตั้งค่า Jail

เปิด jail.local ไฟล์ในโปรแกรมแก้ไขข้อความที่คุณต้องการด้วยคำสั่งต่อไปนี้:

sudo nano /etc/fail2ban/jail.local

ในไฟล์นี้ ให้ค้นหาส่วน [DEFAULT] และตั้งค่า ระยะเวลา禁止, ค้นหาเวลา และ maxretry ต่อไปนี้คือรายการความหมายของแต่ละพารามิเตอร์:

  • เวลาห้ามแต่ง: กำหนดระยะเวลาที่ IP จะถูกแบน
  • Findtime: กำหนดช่วงเวลาที่นับการพยายามเข้าสู่ระบบที่ล้มเหลว
  • Maxretry: กำหนดจำนวนครั้งที่ยอมให้ล้มเหลวก่อนที่จะถูกแบน

ตัวอย่างเช่น คุณสามารถตั้งค่าพารามิเตอร์เหล่านี้ได้ดังนี้:

[DEFAULT]
bantime = 600
findtime = 600
maxretry = 5

ขั้นตอนที่ 3: เปิดใช้งาน UFW ในการตั้งค่า Jail

ค้นหา [sshd] ส่วน (หรือบริการอื่นที่คุณต้องการป้องกัน) ในไฟล์ jail.local ตรวจสอบให้แน่ใจว่า enabled ถูกตั้งเป็น true และระบุให้ใช้ UFW สำหรับการแบน:

[sshd]
enabled = true
banaction = ufw
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 5

การตั้งค่านี้จำเป็นเพื่อให้ fail2ban ตรวจสอบบริการ SSH และอัปเดตกฎ UFW เพื่อแบน IP ที่มีพฤติกรรมอันตราย

การเริ่มต้นและเปิดใช้งาน fail2ban

หลังจากตั้งค่า fail2ban แล้ว ให้เริ่มบริการและตั้งให้ทำงานอัตโนมัติเมื่อบูตเครื่อง:

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

จากนั้นตรวจสอบสถานะของ fail2ban เพื่อให้แน่ใจว่าทำงานได้ถูกต้อง:

sudo systemctl status fail2ban

ประโยชน์ของการใช้ UFW ร่วมกับ fail2ban

การรวม fail2ban เข้ากับ UFW ช่วยให้คุณมี การป้องกันแบบหลายชั้นUFW ช่วยจัดการกฎ Firewall ได้ตรงไปตรงมา ส่วน fail2ban เพิ่มการป้องกันแบบไดนามิกด้วยการแบน IP ที่แสดงพฤติกรรมอันตราย การทำงานร่วมกันนี้ช่วยลดความเสี่ยงจากการโจมตีแบบ Brute-force และทำให้เซิร์ฟเวอร์ของคุณปลอดภัยอยู่เสมอ

สรุป

ในบทความนี้เราได้อธิบายวิธีใช้ UFW เพื่อเสริมความปลอดภัยให้ระบบและทำให้การจัดการ Firewall เป็นเรื่องง่าย เราได้นำเสนอขั้นตอนการติดตั้งและตั้งค่าที่ทำตามได้ไม่ยาก รวมถึงอธิบายวิธีใช้ UFW ร่วมกับเครื่องมือความปลอดภัยอื่น เช่น fail2ban เพื่อให้การป้องกันมีประสิทธิภาพยิ่งขึ้น

คำถามที่พบบ่อย

จะลบกฎ UFW ที่เพิ่มไปแล้วได้อย่างไร?

หากต้องการลบกฎ UFW ที่ระบุ ให้ใช้คำสั่ง ufw delete ตามด้วยกฎที่ต้องการลบ ตัวอย่างเช่น หากต้องการลบกฎที่อนุญาตการรับส่งข้อมูลบนพอร์ต 80 (HTTP) ให้ใช้คำสั่งต่อไปนี้:

sudo ufw delete allow 80/tcp

UFW ดีกว่า iptables หรือไม่?

UFW ทำให้การจัดการ Firewall ง่ายขึ้นด้วย Syntax ที่เข้าใจง่ายและคำสั่งที่ใช้งานสะดวก จึงเหมาะสำหรับผู้เริ่มต้น ส่วน iptables นั้นให้การควบคุมและปรับแต่งได้ละเอียดกว่า จึงเหมาะสำหรับผู้ใช้ขั้นสูงที่ต้องการกฎ Firewall ที่เฉพาะเจาะจง

อะไรดีกว่ากัน ระหว่าง Firewalld กับ UFW?

UFW ใช้งานง่ายกว่าสำหรับผู้เริ่มต้น เพราะคำสั่งตรงไปตรงมา เหมาะกับการตั้งค่าแบบไม่ซับซ้อน Firewalld มีฟีเจอร์ขั้นสูงและความยืดหยุ่นมากกว่า ทำให้เหมาะกับสภาพแวดล้อมที่ซับซ้อนและกฎ Firewall แบบไดนามิก การเลือกใช้ขึ้นอยู่กับความต้องการและความคุ้นเคยกับแต่ละเครื่องมือ

Firewall ที่ดีที่สุดสำหรับ Ubuntu คืออะไร?

Firewall ที่เหมาะกับ Ubuntu ขึ้นอยู่กับความต้องการของคุณ UFW เป็นตัวเลือกเริ่มต้นที่แนะนำสำหรับผู้ใช้ส่วนใหญ่ เพราะใช้งานง่ายและตรงไปตรงมา สำหรับการตั้งค่าขั้นสูง iptables ให้การควบคุมกฎ Firewall ได้อย่างละเอียด ส่วน Firewalld เป็นอีกตัวเลือกที่รองรับการจัดการกฎ Firewall แบบไดนามิก คุณสามารถใช้ UFW สำหรับงานทั่วไป และพิจารณา iptables หรือ Firewalld สำหรับความต้องการที่ซับซ้อนกว่า

แชร์

บทความอื่นจากบล็อก

อ่านต่อ

ภาพประกอบสำหรับ Cloudzy ในคู่มือ MikroTik L2TP VPN แสดงแล็ปท็อปที่เชื่อมต่อกับ Server Rack ผ่านอุโมงค์ดิจิทัลสีฟ้าและทองพร้อมไอคอนโล่ป้องกัน
ความปลอดภัยและเครือข่าย

การตั้งค่า MikroTik L2TP VPN (พร้อม IPsec): คู่มือ RouterOS (2026)

ในการตั้งค่า MikroTik L2TP VPN นี้ L2TP ทำหน้าที่สร้าง Tunnel ส่วน IPsec ดูแลการเข้ารหัสและความสมบูรณ์ของข้อมูล การใช้งานร่วมกันช่วยให้รองรับ Native Client ได้โดยไม่ต้องพึ่งพาซอฟต์แวร์ของบุคคลที่สาม

เรกซา ไซรัสเรกซา ไซรัส อ่าน 9 นาที
หน้าต่าง Terminal แสดงข้อความเตือน SSH เกี่ยวกับการเปลี่ยนแปลง Remote Host Identification พร้อมหัวข้อ Fix Guide และแบรนด์ Cloudzy บนพื้นหลังสีเขียวเทาเข้ม
ความปลอดภัยและเครือข่าย

คำเตือน: Remote Host Identification Has Changed และวิธีแก้ไข

SSH คือโปรโตคอลเครือข่ายที่ปลอดภัย สร้างช่องเชื่อมต่อที่เข้ารหัสระหว่างระบบ ยังคงเป็นที่นิยมในหมู่นักพัฒนาที่ต้องการเข้าถึงเครื่องระยะไกลโดยไม่จำเป็นต้องใช้อินเทอร์เฟซแบบกราฟิก

เรกซา ไซรัสเรกซา ไซรัส อ่าน 10 นาที
ภาพประกอบคู่มือแก้ปัญหา DNS พร้อมสัญลักษณ์เตือนและเซิร์ฟเวอร์สีฟ้าบนพื้นหลังมืด สำหรับข้อผิดพลาด Name Resolution ของ Linux
ความปลอดภัยและเครือข่าย

Temporary Failure in Name Resolution คืออะไร และแก้ไขอย่างไร?

ขณะใช้งาน Linux คุณอาจพบข้อผิดพลาด Temporary Failure in Name Resolution เมื่อพยายามเปิดเว็บไซต์ อัปเดตแพ็กเกจ หรือรันงานที่ต้องใช้การเชื่อมต่ออินเทอร์เน็ต

เรกซา ไซรัสเรกซา ไซรัส อ่าน 12 นาที

พร้อม Deploy แล้วหรือยัง? เริ่มต้นที่ $2.48/เดือน

Cloud อิสระ ให้บริการมาตั้งแต่ปี 2008. AMD EPYC, NVMe, 40 Gbps. คืนเงินภายใน 14 วัน