1. บทนำ
การเปิดพอร์ต (Port Forwarding) คือการตั้งค่าที่จำเป็นเพื่อให้แอปพลิเคชันหรือบริการบางอย่างสามารถเข้าถึงได้จากภายนอก โดยปกติ Ubuntu จะปิดพอร์ตส่วนใหญ่ไว้เพื่อเสริมสร้างความปลอดภัย แต่หากจำเป็นต้องเปิดพอร์ตเฉพาะ เราสามารถใช้เครื่องมือที่ตั้งค่าได้ง่ายอย่าง “ufw (Uncomplicated Firewall)” บทความนี้จะอธิบายรายละเอียดเกี่ยวกับวิธีการเปิดพอร์ตใน Ubuntu
2. เกี่ยวกับไฟร์วอลล์ (ufw
) ของ Ubuntu
Ubuntu มีเครื่องมือที่ติดตั้งมาพร้อมสำหรับการตั้งค่าไฟร์วอลล์อย่างง่ายเรียกว่า ufw
เครื่องมือนี้สะดวกสำหรับผู้ดูแลเซิร์ฟเวอร์หรือผู้ใช้เดสก์ท็อป เพราะสามารถจัดการการเปิด-ปิดพอร์ตซึ่งเป็นพื้นฐานของความปลอดภัยเครือข่ายได้ด้วยคำสั่งเดียว การเปิดพอร์ตจำเป็นต้องทำ เช่น สำหรับเว็บเซิร์ฟเวอร์หรือการเชื่อมต่อ SSH
3. การเตรียมตัวล่วงหน้า
การเปิดพอร์ตต้องใช้สิทธิ์ผู้ดูแลระบบ คำสั่งทั้งหมดที่แนะนำในบทความนี้จะใช้ sudo
ในการรัน และโปรดตรวจสอบว่าระบบได้ติดตั้ง ufw
ไว้แล้ว โดยปกติแล้ว Ubuntu จะมีการติดตั้ง ufw
มาให้แล้ว แต่ถ้ายังไม่มี สามารถติดตั้งได้ด้วยคำสั่งต่อไปนี้
sudo apt-get install ufw
4. ตรวจสอบสถานะไฟร์วอลล์ปัจจุบัน
ก่อนอื่น มาตรวจสอบสถานะปัจจุบันของไฟร์วอลล์กัน ทำได้โดยรันคำสั่งต่อไปนี้ เพื่อดูว่า ufw
เปิดใช้งานอยู่หรือไม่ และพอร์ตใดบ้างที่เปิดอยู่ ณ ปัจจุบัน
sudo ufw status
ผลลัพธ์จากคำสั่งนี้จะแสดงกฎและสถานะของพอร์ตปัจจุบัน คุณสามารถตรวจสอบพอร์ตที่เปิดอยู่และการตั้งค่าได้ที่นี่
5. วิธีเปิดพอร์ตโดยใช้ ufw
หากต้องการเปิดพอร์ตเฉพาะ ให้ใช้คำสั่ง ufw allow
เช่น หากต้องการเปิดพอร์ต 80 ที่เว็บเซิร์ฟเวอร์ใช้ ให้รันคำสั่งต่อไปนี้
sudo ufw allow 80
ในทำนองเดียวกัน หากต้องการเปิดพอร์ต 22 สำหรับการเชื่อมต่อ SSH ให้ทำดังนี้
sudo ufw allow 22
หากคำสั่งสำเร็จ พอร์ตที่ระบุจะถูกเปิดและสามารถเข้าถึงได้จากภายนอก

6. รีโหลดการตั้งค่าไฟร์วอลล์
เพื่อให้การเปลี่ยนแปลงการตั้งค่ามีผล จำเป็นต้องรีโหลด ufw
การรีโหลดทำได้ด้วยคำสั่งต่อไปนี้
sudo ufw reload
เมื่อรันคำสั่งนี้ การตั้งค่าใหม่จะถูกนำไปใช้ และการเปิดพอร์ตจะมีผลทันที
7. การจัดการและลบกฎ
หากต้องการตรวจสอบกฎที่มีอยู่ ให้ใช้คำสั่งต่อไปนี้
sudo ufw status verbose
หากต้องการลบกฎเฉพาะ ให้ใช้คำสั่ง ufw delete
เช่น หากต้องการลบการเปิดพอร์ต 22 ให้ทำดังนี้
sudo ufw delete allow 22
นอกจากนี้ยังสามารถลบกฎโดยระบุหมายเลขได้ด้วย ในการทำเช่นนั้น ให้ตรวจสอบหมายเลขกฎก่อน
sudo ufw status numbered
ใช้หมายเลขที่แสดงเพื่อลบกฎ
sudo ufw delete [หมายเลข]
8. ทดสอบการตั้งค่า
ในการตรวจสอบว่าพอร์ตเปิดอย่างถูกต้องหรือไม่ สามารถทดสอบได้ด้วยวิธีต่อไปนี้
- ใช้คำสั่ง
netstat
เพื่อตรวจสอบสถานะของพอร์ต - ตรวจสอบความสามารถในการเข้าถึงจากภายนอกโดยใช้เครื่องมือออนไลน์
หากมีการตั้งค่าที่ผิดพลาด โปรดทบทวนกฎไฟร์วอลล์และการตั้งค่าเครือข่ายอีกครั้ง
9. ข้อควรพิจารณาด้านความปลอดภัย
การเปิดพอร์ตเป็นสิ่งสำคัญสำหรับการใช้แอปพลิเคชันหรือบริการที่จำเป็น แต่ก็มีความเสี่ยงด้านความปลอดภัยเช่นกัน การเปิดพอร์ตหมายถึงการอนุญาตให้มีการเข้าถึงจากภายนอก ซึ่งอาจเพิ่มโอกาสในการถูกโจมตี การเปิดพอร์ตที่จำเป็นขั้นต่ำเท่านั้น และปิดพอร์ตที่ไม่จำเป็นเป็นสิ่งสำคัญ
10. สรุป
เราได้อธิบายวิธีการเปิดพอร์ตใน Ubuntu โดยใช้ ufw
การเปิดพอร์ตเป็นการตั้งค่าที่ขาดไม่ได้สำหรับการใช้งานแอปพลิเคชันเครือข่าย แต่ก็มีความเสี่ยงด้านความปลอดภัยร่วมด้วย ดังนั้นจึงเป็นสิ่งสำคัญที่จะต้องจัดการอย่างเหมาะสม ขอแนะนำให้ตรวจสอบการตั้งค่าไฟร์วอลล์เป็นประจำ และใช้มาตรการรักษาความปลอดภัยล่าสุด