วิธีบล็อกพอร์ตเฉพาะบน Linux ด้วย UFW หรือ firewalld

ในการบล็อกพอร์ตเฉพาะบน Linux ให้เพิ่มกฎไฟร์วอลล์สำหรับพอร์ตและโปรโตคอลที่คุณต้องการบล็อก ตัวอย่างเช่น บนระบบ Ubuntu ที่ใช้ UFW sudo ufw deny 8080/tcpจะบล็อกการเชื่อมต่อ TCP ขาเข้าใหม่ที่พอร์ต 8080 บนระบบที่ใช้ firewalld คุณสามารถลบการอนุญาตพอร์ตที่มีอยู่หรือเพิ่มกฎการปฏิเสธอย่างชัดเจน ส่วนสำคัญคือการเปลี่ยนไฟร์วอลล์ที่ระบบของคุณใช้งานจริง แทนที่จะผสมผสาน UFW, firewalld และกฎ nftables ระดับต่ำเข้าด้วยกัน

ก่อนที่คุณจะบล็อกพอร์ต

ขั้นแรก ให้ตรวจสอบหมายเลขพอร์ตและว่าแอปพลิเคชันใช้ TCP, UDP หรือทั้งสองอย่าง กฎ TCP ไม่ได้บล็อก UDP บนหมายเลขเดียวกันโดยอัตโนมัติ คุณยังสามารถตรวจสอบซ็อกเก็ตที่กำลังรอรับการเชื่อมต่อได้ด้วยคำสั่งต่อไปนี้:

sudo ss -lntup

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

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

ปิดกั้นพอร์ตด้วย UFW

Ubuntu ระบุว่า UFW เป็นเครื่องมือตั้งค่าไฟร์วอลล์เริ่มต้นโดยปกติ UFW จะถูกปิดใช้งานในตอนเริ่มต้น ดังนั้นควรตรวจสอบสถานะก่อนที่จะเพิ่มหรือเปิดใช้งานกฎต่างๆ

1. ตรวจสอบ UFW และเปิดใช้งานอย่างปลอดภัย

sudo ufw status

หากผลลัพธ์เป็นเช่นนั้นStatus: inactiveและคุณต้องการเปิดใช้งาน UFW ก่อนอื่นให้อนุญาตบริการการจัดการระยะไกลที่คุณใช้งานอยู่ สำหรับโปรไฟล์ OpenSSH มาตรฐาน:

sudo ufw allow OpenSSH
sudo ufw enable
เทอร์มินัล Linux แสดงสถานะ UFW ว่าไม่ทำงาน จากนั้นจึงเปิดใช้งานไฟร์วอลล์ UFW
ตรวจสอบว่า UFW เปิดใช้งานอยู่หรือไม่ก่อนที่จะเปลี่ยนแปลงกฎ โดยเฉพาะอย่างยิ่งในเครื่องที่ได้รับการจัดการจากระยะไกล

2. เพิ่มกฎการปฏิเสธสำหรับพอร์ต

แทนที่8080ด้วยพอร์ตที่คุณต้องการบล็อก ระบุโปรโตคอลเพื่อให้กฎมีความชัดเจน:

sudo ufw deny 8080/tcp

สำหรับ UDP ให้ใช้:

sudo ufw deny 8080/udp

หากแอปพลิเคชันใช้ทั้งสองโปรโตคอล ให้เพิ่มกฎทั้งสองข้อ UFW ยังรองรับการrejectปฏิเสธแบบเงียบๆ (non-silent deny) โดยการปฏิเสธแบบเงียบๆ จะแจ้งให้ผู้ส่งทราบว่าการเชื่อมต่อถูกปฏิเสธ

หน้าต่างเทอร์มินัล Linux แสดงคำสั่ง sudo ufw deny 8080/tcp และยืนยันว่าได้เพิ่มกฎไฟร์วอลล์เรียบร้อยแล้ว
กฎการปฏิเสธของ UFW จะบล็อกการรับส่งข้อมูล TCP ที่เข้ามายังพอร์ตที่เลือก

3. ตรวจสอบหรือยกเลิกกฎ UFW

sudo ufw status numbered

ผลลัพธ์ควรแสดง รายการ DENY INสำหรับพอร์ตที่ถูกบล็อก ไวยากรณ์อย่างเป็นทางการของ UFW ยังรองรับการลบกฎโดยการทำซ้ำด้วยdelete:

sudo ufw delete deny 8080/tcp
เทอร์มินัล Linux แสดงสถานะหมายเลข UFW พร้อมข้อความว่าพอร์ต TCP 8080 ถูกปฏิเสธสำหรับ IPv4 และ IPv6
ใช้เอาต์พุตสถานะที่มีหมายเลขเพื่อยืนยันว่ากฎ UFW ที่ต้องการใช้งานนั้นเปิดใช้งานอยู่

ปิดกั้นพอร์ตด้วย firewalld

หากระบบ Linux ของคุณใช้ firewalld ให้เริ่มต้นด้วยการค้นหาโซนที่ใช้งานอยู่:

sudo firewall-cmd --get-active-zones
sudo firewall-cmd --zone=public --list-all

publicหากอินเทอร์เฟซของคุณอยู่ในโซนอื่นโปรดแก้ไขข้อมูล ด้านล่าง หากพอร์ต 8080 ถูกเปิดไว้โดยชัดเจน ให้ลบการอนุญาตนั้นออก แล้วโหลดการกำหนดค่าถาวรใหม่:

sudo firewall-cmd --permanent --zone=public --remove-port=8080/tcp
sudo firewall-cmd --reload
หน้าต่างเทอร์มินัล Linux แสดงโซน firewalld ที่ใช้งานอยู่ การลบพอร์ต TCP 8080 และการรีโหลดไฟร์วอลล์
ใช้ firewalld เพื่อทำการเปลี่ยนแปลงในโซนที่ใช้งานอยู่ให้ถูกต้อง แล้วโหลดกฎถาวรใหม่

หากพอร์ตยังคงได้รับอนุญาตโดยอ้อมตามคำจำกัดความของบริการ หรือคุณต้องการบล็อกอย่างชัดเจน ให้เพิ่มกฎการปฏิเสธแบบละเอียด:

sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule port port="8080" protocol="tcp" reject'
sudo firewall-cmd --reload
sudo firewall-cmd --zone=public --list-rich-rules

เอกสารประกอบการใช้งานกฎที่ซับซ้อนของ firewalldรองรับการจับคู่พอร์ตด้วย การดำเนินการแบบ rejector dropนอกจากนี้คู่มือ firewall-cmdยังอธิบายถึงการกำหนดค่าแบบรันไทม์และแบบถาวรที่แยกจากกันด้วย

หากต้องการลบการบล็อก firewalld ที่ระบุไว้อย่างชัดเจนในภายหลัง ให้ลบกฎ rich rule เดียวกันนั้นออก แล้วโหลดใหม่:

sudo firewall-cmd --permanent --zone=public --remove-rich-rule='rule port port="8080" protocol="tcp" reject'
sudo firewall-cmd --reload

ตรวจสอบให้แน่ใจว่าไม่สามารถเข้าถึงพอร์ตได้อีกต่อไป

sudo ss -lntupหากต้องการตรวจสอบว่าแอปพลิเคชันยังคงทำงานอยู่หรือไม่ ให้รันคำสั่ง อีกครั้ง จากนั้นทดสอบจากเครื่องอื่นในเครือข่ายที่เกี่ยวข้อง หากติดตั้ง Netcat แล้ว การตรวจสอบ TCP อาจมีลักษณะดังนี้ nc -vz SERVER_IP 8080ทดสอบจากเส้นทางเครือข่ายเดียวกันกับที่ไคลเอนต์จริงของคุณใช้ การทดสอบบน localhost ไม่ได้พิสูจน์ว่าการรับส่งข้อมูลภายนอกถูกบล็อก

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

ฝากความเห็น

วิธีการสแกนคิวอาร์โค้ดบนเดสก์ท็อป Linux

วิธีการสแกนคิวอาร์โค้ดบนเดสก์ท็อป Linux

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

วิธีเปลี่ยนการตั้งค่าเว็บแคมบน Linux ด้วย Cameractrls

วิธีเปลี่ยนการตั้งค่าเว็บแคมบน Linux ด้วย Cameractrls

เปลี่ยนการตั้งค่าเว็บแคมบน Linux ด้วย Cameractrls: ปรับค่าแสง สี ลดการกระพริบ และการควบคุมอื่นๆ ที่รองรับ จากนั้นตรวจสอบโหมดวิดีโอที่เข้ากันได้

วิธีการติดตั้ง PhpStorm บน Linux: Toolbox, Tar.gz, Snap และ AUR

วิธีการติดตั้ง PhpStorm บน Linux: Toolbox, Tar.gz, Snap และ AUR

ติดตั้ง PhpStorm บน Linux ด้วย JetBrains Toolbox หรือไฟล์เก็บถาวร tar.gz แบบสแตนด์อโลน รวมถึงตัวเลือก Snap และ Arch AUR Java ถูกรวมมาให้แล้ว

วิธีตั้งค่าหน้าจอคู่บน XFCE 4

วิธีตั้งค่าหน้าจอคู่บน XFCE 4

สร้างแผง XFCE 4 แยกต่างหากสำหรับแต่ละจอแสดงผล กำหนดให้แผงที่สองแสดงผลทางด้านขวา จัดตำแหน่งและปรับขนาด และเพิ่มไอคอนเรียกใช้งานและรายการสถานะที่คุณต้องการ

วิธีการติดตั้ง Cisco Packet Tracer บน Linux

วิธีการติดตั้ง Cisco Packet Tracer บน Linux

ดาวน์โหลด Cisco Packet Tracer 9.0.1 สำหรับ Ubuntu 64-bit ติดตั้งแพ็คเกจ DEB ด้วย APT ยอมรับข้อตกลงใบอนุญาตในเทอร์มินัล และลงชื่อเข้าใช้เพื่อเริ่มการทดลอง

วิธีการตัดภาพบน Linux ด้วยโปรแกรม GIMP

วิธีการตัดภาพบน Linux ด้วยโปรแกรม GIMP

ลบพื้นหลังรูปภาพบน Linux ด้วย GIMP: ลากเส้นตามวัตถุ ลบพื้นหลังที่เลือก รักษาความโปร่งใส และส่งออกเป็นไฟล์ PNG ที่สามารถนำกลับมาใช้ใหม่ได้

วิธีสำรองข้อมูล CD-ROM เป็นไฟล์ ISO บน Linux

วิธีสำรองข้อมูล CD-ROM เป็นไฟล์ ISO บน Linux

สร้างไฟล์ ISO สำหรับ CD-ROM บน Linux ด้วย GNOME Disks หรือ dd ระบุไดรฟ์ออปติคัล ตรวจสอบสถานะการคัดลอก ตรวจสอบความถูกต้องของอิมเมจ และรู้ว่าเมื่อใดที่แผ่นเสียหายหรือแผ่นเสียงต้องการเครื่องมืออื่น

ดาวน์โหลด FlightGear ได้ฟรี: คู่มือการติดตั้งอย่างเป็นทางการ

ดาวน์โหลด FlightGear ได้ฟรี: คู่มือการติดตั้งอย่างเป็นทางการ

ดาวน์โหลด FlightGear ได้ฟรีจากเว็บไซต์ทางการ เปรียบเทียบแพ็กเกจสำหรับ Windows, macOS และ Linux ติดตั้งไฟล์ข้อมูล และเริ่มต้นการบินครั้งแรกของคุณ

OKSampler: โปรแกรมแซมpler เพลงฟรีและใช้งานง่าย สำหรับสร้างจังหวะจากคีย์บอร์ด

OKSampler: โปรแกรมแซมpler เพลงฟรีและใช้งานง่าย สำหรับสร้างจังหวะจากคีย์บอร์ด

OKSampler แปลงคลิป MP3 เป็นคีย์บนแป้นพิมพ์และสามารถเล่นเสียงวนซ้ำได้ เรียนรู้ว่าซอฟต์แวร์ฟรีรุ่นเก่านี้ทำอะไรได้บ้าง ฟีเจอร์เก่าๆ สิ้นสุดลงตรงไหน และควรตรวจสอบอะไรบ้างก่อนดาวน์โหลด

แอปพลิเคชัน Google Tasks สำหรับเดสก์ท็อป: วิธีใช้งานบนคอมพิวเตอร์

แอปพลิเคชัน Google Tasks สำหรับเดสก์ท็อป: วิธีใช้งานบนคอมพิวเตอร์

เปิด Google Tasks ในเบราว์เซอร์ เพิ่มทางลัด Chrome หรือเปิดใช้งานในรูปแบบแอป และจัดการรายการสิ่งที่ต้องทำตามวันที่ผ่านปฏิทินและ Gmail