วิธีตรวจสอบ Service และ Port ที่ใช้งานอยู่บน Linux

วิธีง่ายๆ ในการตรวจสอบว่าพอร์ต ที่กำลังใช้งานบนอินเทอร์เฟซเครือข่ายของเซิร์ฟเวอร์ ว่ามีพอร์ตใหนบ้างที่เปิดอยู่ เพื่อตรวจสอบหรือ แก้ไขปัญหาแล้ว เรายังตรวจสอบได้ว่ามีการใช้งานพอร์ตโดยแอปพลิเคชันอื่นบนเซิร์ฟเวอร์ของเราอยู่หรือไม่ ตัวอย่างเช่นเราอาจติดตั้งเซิร์ฟเวอร์ Apache และ Nginx ในระบบเดียวกัน ดังนั้นจำเป็นต้องรู้ว่า Apache หรือ Nginx ใช้พอร์ต TCP # 80/443 ถูกต้องหรือไม่

มาดูวิธีเช็คกันง่ายๆ ในการใช้คำสั่ง netstat, nmap และ lsof เพื่อตรวจสอบพอร์ตที่ใช้งานและดูแอปพลิเคชันที่ใช้พอร์ตนั้นๆอยู่กันครับ

  1. Open a terminal application i.e. shell prompt.
  2. Run any one of the following command on Linux to see open ports:
  1. For the latest version of Linux use the ss command. For example, ss -tulw

Linux netstat syntax

Run netstat command along with grep command to filter out port in LISTEN

The netstat command deprecated for some time on Linux. Therefore, you need to use the ss command as follows:

โดยที่ option คำสั่ง ss มีคำอธิบายดังนี้:

  • -t : Show only TCP sockets on Linux
  • -u : Display only UDP sockets on Linux
  • -l : Show listening sockets. For example, TCP port 22 is opened by SSHD server.
  • -p : List process name that opened sockets
  • -n : Don’t resolve service names i.e. don’t use DNS

Leave a Reply

iameveme