บทความนี้จะกล่าวถึงวิธีการตรวจสอบดูว่ามี network ports อะไรบ้างที่เปิดใช้งานอยู่บน Linux
เราสามารถดูรายละเอียดของ port ที่เปิดใช้งานอยู่ด้วยคำสั่ง ss, netstat หรือ lsof นอกจากนี้ยังสามารถใช้คำสั่ง nmap ในการสแกนดู port บน server ต่างๆ ได้
ขั้นตอนแรก ทำการ login เข้าระบบ
ขั้นตอนที่สอง run คำสั่งใดคำสั่งหนึ่งตามด้านล่าง
$ sudo lsof -i -P -n | grep LISTEN
$ sudo netstat -tulpn | grep LISTEN
$ sudo ss -tulw
$ sudo nmap -sTU -O IP-address-Here
option #1 lsof
รูปแบบการใช้งาน
$ sudo lsof -i -P -n
$ sudo lsof -i -P -n | grep LISTEN
-i แสดง network connection ทั้งหมด (LISTENING & ESTABLISHED)
option #2 netstat
รูปแบบการใช้งาน
ทำงานคำสั่ง netstat พร้อมด้วย grep เพื่อทำการคัดกรองข้อมูลเฉพาะ LISTEN state
$ netstat -tulpn | grep LISTEN
-n แสดงค่าเป็น IP address
ตัวอย่าง
option #3 ss
รูปแบบการใช้งาน
$ sudo ss -tulw
$ sudo ss -tulwn
-t แสดงค่าเฉพาะ TCP protocol sockets
-u แสดงค่าเฉพาะ UDP protocol sockets
-l แสดงค่าเฉพาะ listening socket
-p แสดงชื่อ process ที่เปิดใช้ socket
-n ไม่ทำการ resolve name เช่น DNS
ตัวอย่าง
option #4 nmap
เป็นคำสั่งที่ใช้ในการสแกน port
รูปแบบการใช้งาน
$ sudo nmap -sT -O localhost
$ sudo nmap -sU -O 172.23.90.1 ==> [ list open UDP ports ]
$ sudo nmap -sT -O 172.23.90.1 ==> [ list open TCP ports ]
สามารทำการสแกนทั้ง TCP และ UDP พร้อมกันในคำสั่งเดียว
$ sudo nmap -sTU -O 172.23.90.1
-O แสดงค่า OS version
-sT list open TCP ports
-sU list open UDP ports
ตัวอย่าง
เราสามารถดูรายละเอียดของ port ที่เปิดใช้งานอยู่ด้วยคำสั่ง ss, netstat หรือ lsof นอกจากนี้ยังสามารถใช้คำสั่ง nmap ในการสแกนดู port บน server ต่างๆ ได้
ขั้นตอนแรก ทำการ login เข้าระบบ
ขั้นตอนที่สอง run คำสั่งใดคำสั่งหนึ่งตามด้านล่าง
$ sudo lsof -i -P -n | grep LISTEN
$ sudo netstat -tulpn | grep LISTEN
$ sudo ss -tulw
$ sudo nmap -sTU -O IP-address-Here
option #1 lsof
รูปแบบการใช้งาน
$ sudo lsof -i -P -n
$ sudo lsof -i -P -n | grep LISTEN
-i แสดง network connection ทั้งหมด (LISTENING & ESTABLISHED)
-n แปลงจาก network number เป็น host name
-P แปลงจาก port number เป็น port name
ตัวอย่างoption #2 netstat
รูปแบบการใช้งาน
ทำงานคำสั่ง netstat พร้อมด้วย grep เพื่อทำการคัดกรองข้อมูลเฉพาะ LISTEN state
$ netstat -tulpn | grep LISTEN
-n แสดงค่าเป็น IP address
-p แสดงค่า PID และชื่อโปรแกรม
-l แสดงค่าเฉพาะ listening socket
-u แสดงค่าเฉพาะ UDP protocol sockets
-t แสดงค่าเฉพาะ TCP protocol sockets
ตัวอย่าง
option #3 ss
รูปแบบการใช้งาน
$ sudo ss -tulw
$ sudo ss -tulwn
-t แสดงค่าเฉพาะ TCP protocol sockets
-u แสดงค่าเฉพาะ UDP protocol sockets
-l แสดงค่าเฉพาะ listening socket
-p แสดงชื่อ process ที่เปิดใช้ socket
-n ไม่ทำการ resolve name เช่น DNS
ตัวอย่าง
option #4 nmap
เป็นคำสั่งที่ใช้ในการสแกน port
- localhost - เป็นการดู open port บนเครื่องตัวเอง
- ระบุ IP address - เป็นการดู open port บนเครื่อง IP address นั้น
รูปแบบการใช้งาน
$ sudo nmap -sT -O localhost
$ sudo nmap -sU -O 172.23.90.1 ==> [ list open UDP ports ]
$ sudo nmap -sT -O 172.23.90.1 ==> [ list open TCP ports ]
สามารทำการสแกนทั้ง TCP และ UDP พร้อมกันในคำสั่งเดียว
$ sudo nmap -sTU -O 172.23.90.1
-O แสดงค่า OS version
-sT list open TCP ports
-sU list open UDP ports
ตัวอย่าง
วิธีการตรวจสอบดูว่ามี network ports อะไรบ้างที่เปิดใช้งานอยู่บน Linux
Reviewed by Wisoot Amatariyakul
on
3:55 PM
Rating:
No comments: