ค้นหาเว็บไซต์

วิธีตรวจสอบว่าสามารถเข้าถึงพอร์ตระยะไกลได้โดยใช้คำสั่ง 'nc'


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

เราสามารถแสดงรายการพอร์ตที่เปิดอยู่ใน Linux บนเครื่องท้องถิ่นได้อย่างง่ายดายโดยใช้ netstat หรือคำสั่ง Linux อื่นๆ เช่น NMAP

ในคู่มือนี้ เราจะแสดงวิธีตรวจสอบว่าพอร์ตบนโฮสต์ระยะไกลสามารถเข้าถึงได้/เปิดโดยใช้คำสั่ง netcat แบบง่ายๆ (หรือเรียกสั้นๆ ว่า nc) หรือไม่

netcat (หรือเรียกสั้น ๆ ว่า nc) เป็นโปรแกรมอรรถประโยชน์ที่ทรงพลังและใช้งานง่าย ซึ่งสามารถนำไปใช้กับอะไรก็ได้ใน Linux ที่เกี่ยวข้องกับ TCP, UDP หรือ UNIX - ซ็อกเก็ตโดเมน

yum install nc                  [On CentOS/RHEL]
dnf install nc                  [On Fedora 22+]
sudo apt-get install netcat     [On Debian/Ubuntu]

เราสามารถใช้เพื่อ: เปิดการเชื่อมต่อ TCP, ฟังพอร์ต TCP และ UDP ที่กำหนดเอง, ส่งแพ็กเก็ต UDP, ทำการสแกนพอร์ตภายใต้ทั้ง IPv4 และ IPv6 และนอกเหนือจากนั้น

เมื่อใช้ netcat คุณสามารถตรวจสอบว่ามีพอร์ตเดียวหรือหลายพอร์ตหรือช่วงที่เปิดอยู่ดังต่อไปนี้ คำสั่งด้านล่างจะช่วยให้เราดูว่าพอร์ต 22 เปิดอยู่บนโฮสต์ 192.168.56.10 หรือไม่:

nc -zv 192.168.1.15 22

ในคำสั่งด้านบน แฟล็ก:

  1. -z – ตั้งค่า nc ให้สแกนหาภูตที่กำลังฟัง โดยไม่ต้องส่งข้อมูลใดๆ ไปให้พวกมัน
  2. -v – เปิดใช้งานโหมดรายละเอียด

คำสั่งถัดไปจะตรวจสอบว่าพอร์ต 80, 22 และ 21 เปิดอยู่บนโฮสต์ระยะไกล 192.168.5.10 ( เราสามารถใช้ชื่อโฮสต์ได้เช่นกัน):
nc -zv 192.168.56.10 80 22 21

นอกจากนี้ยังสามารถระบุช่วงของพอร์ตที่จะสแกนได้:'

nc -zv 192.168.56.10 20-80

สำหรับตัวอย่างเพิ่มเติมและการใช้คำสั่ง netcat โปรดอ่านบทความของเราดังต่อไปนี้

  1. ถ่ายโอนไฟล์ระหว่างเซิร์ฟเวอร์ Linux โดยใช้คำสั่ง netcat
  2. คำสั่งการกำหนดค่าและการแก้ไขปัญหาเครือข่าย Linux

นั่นคือทั้งหมดที่ ในบทความนี้ เราได้อธิบายวิธีตรวจสอบว่าพอร์ตบนโฮสต์ระยะไกลสามารถเข้าถึงได้/เปิดโดยใช้คำสั่ง netcat แบบง่ายๆ หรือไม่ ใช้ส่วนความคิดเห็นด้านล่างเพื่อเขียนกลับมาหาเราเกี่ยวกับเคล็ดลับนี้