ลดความยุ่งยากในการใช้คลาวด์ พูดคุยกับเจ้าหน้าที่

เปิดและปิดพอร์ตด้วย Plesk Firewall
Home เปิดและปิดพอร์ตด้วย Plesk Firewall

เปิดและปิดพอร์ตด้วย Plesk Firewall

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

Plesk มีส่วนขยาย Firewall ที่จัดการกฎผ่านหน้าจอได้ โดยเบื้องหลังคือ iptables หรือ nftables ของระบบ คู่มือนี้ตั้งค่าให้ปลอดภัยพร้อมวิธีกู้เมื่อพลาด

สิ่งที่ต้องเตรียม

  • Plesk Obsidian และสิทธิ์ผู้ดูแลระบบ
  • ช่องทางสำรองเข้าเซิร์ฟเวอร์ เช่น Console ผ่านหน้าเว็บของผู้ให้บริการ เตรียมไว้ก่อนเริ่มเสมอ
  • รายการบริการที่ใช้งานจริงและพอร์ตของแต่ละบริการ

ขั้นตอนที่ 1: ติดตั้งส่วนขยาย

เข้า Plesk ไปที่ Extensions ค้นหาคำว่า Firewall แล้วติดตั้ง จากนั้นจะพบเมนูใหม่ที่ Tools & Settings แล้ว Firewall

ตรวจจากบรรทัดคำสั่งได้เช่นกัน

plesk bin extension --list | grep -i firewall
plesk ext firewall --status

ขั้นตอนที่ 2: ดูกฎปัจจุบันก่อนแก้

ในหน้า Firewall กด Modify Plesk Firewall Rules จะเห็นรายการกฎที่ใช้อยู่

ตรวจจากระบบโดยตรงเพื่อให้เห็นภาพจริง

sudo iptables -L -n --line-numbers | head -40
sudo ss -tlnp

คำสั่งที่สองแสดงว่ามีบริการใดฟังพอร์ตอะไรอยู่จริง เทียบกับรายการที่คุณคิดว่าควรมี หากเห็นบริการที่ไม่รู้จัก ให้ตรวจสอบก่อนปิด

ขั้นตอนที่ 3: พอร์ตที่จำเป็นของ Plesk

ก่อนปิดอะไร ต้องรู้ว่าพอร์ตไหนขาดไม่ได้

  • 22 SSH
  • 80, 443 เว็บไซต์
  • 8443 หน้าจัดการ Plesk แบบเข้ารหัส
  • 8447 ตัวอัปเดตและติดตั้งของ Plesk จำเป็นสำหรับการอัปเดต
  • 21 และ 49152-65535 FTP และช่วงพอร์ตแบบ Passive หากใช้ FTP
  • 25, 465, 587 ส่งอีเมล
  • 110, 995, 143, 993 รับอีเมล POP3 และ IMAP
  • 53 DNS หากเซิร์ฟเวอร์นี้ทำหน้าที่ Name Server

พอร์ตที่ควรปิดหรือจำกัด ได้แก่ 8880 ซึ่งคือหน้า Plesk แบบไม่เข้ารหัส และ 3306 ของ MySQL หากไม่ได้ให้เชื่อมต่อจากภายนอก

ขั้นตอนที่ 4: เพิ่มกฎใหม่

ในหน้า Firewall กด Add Custom Rule ตั้งค่า

  • Rule name ตั้งชื่อที่สื่อความ เช่น "MySQL จากออฟฟิศ"
  • Match direction เลือก Incoming
  • Action เลือก Allow หรือ Deny
  • Ports ใส่หมายเลขพอร์ตและเลือกโพรโทคอล
  • Sources ใส่ IP หรือช่วง IP ที่อนุญาต หากเว้นว่างคืออนุญาตทุกที่

ตัวอย่างที่ควรทำ จำกัดหน้าจัดการ Plesk ให้เข้าได้เฉพาะจาก IP ของออฟฟิศ

  • Ports: 8443
  • Action: Allow
  • Sources: 203.0.113.0/24

แล้วเพิ่มอีกกฎที่ปฏิเสธ 8443 จากที่อื่นทั้งหมด โดยวางไว้หลังกฎอนุญาต เพราะกฎถูกใช้ตามลำดับจากบนลงล่าง

ขั้นตอนที่ 5: ตั้งนโยบายเริ่มต้น

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

ก่อนตั้งค่านี้ ต้องแน่ใจว่ามีกฎอนุญาต SSH และ 8443 อยู่แล้ว ไม่เช่นนั้นคุณจะเข้าเซิร์ฟเวอร์ไม่ได้ทันทีที่กดใช้งาน

ขั้นตอนที่ 6: ใช้งานกฎอย่างปลอดภัย

เมื่อกด Apply Changes Plesk จะแสดงหน้าจอนับถอยหลังพร้อมปุ่มยืนยัน หากคุณไม่กดยืนยันภายในเวลาที่กำหนด ระบบจะย้อนกฎกลับเป็นแบบเดิมอัตโนมัติ

นี่คือกลไกที่ช่วยชีวิตเมื่อตั้งกฎผิด ใช้ประโยชน์จากมันด้วยการเปิดหน้าต่างใหม่ทดสอบการเชื่อมต่อก่อนกดยืนยัน

# จากเครื่องคุณ ทดสอบก่อนกดยืนยัน
ssh [email protected]
curl -skI https://203.0.113.10:8443 | head -1

หากทั้งสองคำสั่งทำงานได้ จึงค่อยกลับไปกดยืนยันในหน้า Plesk

ขั้นตอนที่ 7: กู้เมื่อถูกล็อกออก

หากพลาดจนเข้าไม่ได้ ให้เข้าผ่าน Console ของผู้ให้บริการแล้วปิด Firewall ชั่วคราว

# ปิดกฎของ Plesk Firewall
sudo plesk ext firewall --disable

# หรือล้างกฎทั้งหมดของ iptables
sudo iptables -P INPUT ACCEPT
sudo iptables -F INPUT

จากนั้นเข้า Plesk แก้กฎให้ถูกต้องแล้วเปิดใหม่

sudo plesk ext firewall --enable

ขั้นตอนที่ 8: ใช้ร่วมกับ Fail2Ban

Firewall ปิดพอร์ตที่ไม่ใช้ ส่วน Fail2Ban แบน IP ที่พยายามเดารหัสผ่านบนพอร์ตที่เปิดอยู่ ควรใช้คู่กัน

ไปที่ Tools & Settings แล้ว IP Address Banning เปิดใช้งานแล้วตรวจว่า Jail ที่สำคัญเปิดอยู่

sudo fail2ban-client status
sudo fail2ban-client status plesk-panel
sudo fail2ban-client status ssh

ดู IP ที่ถูกแบนและปลดแบนเมื่อจำเป็น

sudo fail2ban-client set plesk-panel unbanip 203.0.113.55

ปัญหาที่พบบ่อย

เว็บเข้าไม่ได้หลังเปิด Firewall

ตรวจว่ากฎอนุญาตพอร์ต 80 และ 443 อยู่ และตรวจว่านโยบายเริ่มต้นไม่ได้ปิดกั้นทุกอย่างโดยไม่มีกฎอนุญาต

อัปเดต Plesk ไม่ได้

พอร์ต 8447 ถูกปิด ซึ่งจำเป็นสำหรับตัวติดตั้งและอัปเดตของ Plesk เปิดเฉพาะขาออกก็เพียงพอในบางกรณี แต่ขาเข้าจำเป็นสำหรับบางฟีเจอร์

FTP เชื่อมต่อได้แต่แสดงรายการไฟล์ไม่ได้

ช่วงพอร์ตแบบ Passive ถูกปิด เปิดช่วง 49152-65535 หรือกำหนดช่วงที่แคบกว่าใน ProFTPD แล้วเปิดเฉพาะช่วงนั้น

กฎที่ตั้งไว้หายหลังรีบูต

ตรวจว่าส่วนขยาย Firewall เปิดใช้งานอยู่ และอย่าแก้ iptables ด้วยมือควบคู่กัน เพราะ Plesk จะเขียนทับกฎเมื่อใช้งานกฎของตัวเอง

ต้องการ Cloud VPS พร้อม Plesk ที่ตั้งค่าความปลอดภัยมาให้แล้ว ติดต่อ THAI DATA CLOUD ได้ที่ https://thaidata.cloud/contact/

ผู้ให้บริการคลาวด์ไทย
เพื่อธุรกิจของคนไทย

"มุ่งมั่น" และ "มั่นคง"
พร้อมรับมือทุกการเติบโต
Trust Cloud
คลาว์ที่ปลอดภัย
คือรากฐานที่มั่นคง
cloud security