ฉันจะตรวจสอบได้อย่างไรว่าพอร์ต 5060 เปิดใน centos หรือไม่


12

ฉันจะตรวจสอบได้อย่างไรว่าพอร์ต 5060 เปิดใน centos หรือไม่ ฉันจะทดสอบได้อย่างไรว่า linux ของฉันมีที่อยู่ IP จริงและฉันไม่ได้ตั้งกฎ iptables ให้ปิดกั้นกฎหรือมีเครื่องมือใดที่ฉันสามารถเรียกใช้ใน linux ได้ดังนั้น IP หรือเกตเวย์ของผู้ให้บริการอินเทอร์เน็ตของฉันสามารถฟังหรือส่งด้วยพอร์ต 5060


เพียงแค่ FYI : เนื่องจาก OP ถามเกี่ยวกับพอร์ต 5060 ฉันมักจะคิดว่าเขาถามเกี่ยวกับการตรวจสอบพอร์ตที่ใช้สำหรับโปรโตคอล SIP SIP เป็นสิ่งที่ VoIP ส่วนใหญ่ใช้พอร์ต 5060 เป็นค่าเริ่มต้น สมมติว่าเขาถามเกี่ยวกับ SIP การตรวจสอบจะต้องมองหา UDP ไม่ใช่ TCP
slm

2
นี้เป็นหัวข้อเก่า แต่การจราจร SIP ได้เป็นอย่างดีสามารถอยู่บน TCP เช่นเดียวกับ UDP ไม่ใช่ว่าทุกเซิร์ฟเวอร์จะรองรับโปรโตคอลทั้งสอง แต่จำเป็นต้องมีบางตัว ตามที่กล่าวไว้ telnet จะทดสอบการเชื่อมต่อ TCP เท่านั้น
GuitarPicker

คำตอบ:



9

lsof -i:5060 จะไม่เพียงแสดงว่ามันเปิดอยู่หรือไม่ แต่มันทำอะไรอยู่

ตัวอย่าง:

root@root.com# lsof -i:5060
COMMAND   PID USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
asterisk 1146 root   18u  IPv4 0xffffff000a053c60      0t0  UDP *:sip
asterisk 1146 root   18u  IPv4 0xffffff000a053c60      0t0  UDP *:sip
asterisk 1146 root   18u  IPv4 0xffffff000a053c60      0t0  UDP *:sip

หากคุณกำลังตรวจสอบเครื่องหมายดอกจันโดยเฉพาะเครื่องหมายดอกจัน -r แล้วจิบแสดงช่องจะแสดงว่าการฟังและหรือทำอะไรกับรายการที่เชื่อมต่อ

หากคุณคิดว่า iptables กำลังล้อเล่นกับผลลัพธ์ของคุณให้ปิดการทดสอบครั้งแรกของคุณ service iptables stop


5

คำสั่ง nmap ที่โหวตให้คะแนนสูงอื่น ๆ นั้นไม่ถูกต้องเนื่องจากเป็นการสแกน TCP ใช้สิ่งนี้แทน:

sudo nmap -v -sU 12.34.56.78 -p 5060


2

ตั้งแต่แรกที่คุณโพสต์ที่นี่ ^^

Nmap เป็นเครื่องมือที่ยอดเยี่ยมสำหรับการสแกนพอร์ต แต่เนื่องจากคุณสามารถเข้าถึงจุดปลายแต่ละจุดได้ฉันจึงควรใช้ netcat เพื่อแก้ไขปัญหานี้

ตามที่Wikipedia SIP ฟังบน 5060/5061 (UDP หรือ TCP) ในการตรวจสอบพอร์ตที่กำลังรับฟังคุณสามารถใช้หนึ่งในคำสั่งเหล่านั้นบนเซิร์ฟเวอร์ SIP:

  • lsof -P -n -iTCP -sTCP: LISTEN, ESTABLISHED
  • netstat --ant
  • tcpview (tcpvcon)

เมื่อคุณทราบว่าพอร์ตใดที่กำลังรับฟังคุณสามารถใช้ Netcat (ncat, socat, iperf) เพื่อตรวจสอบว่าไฟร์วอลล์บล็อกการเชื่อมต่อ / พอร์ต

  1. หยุด SIP Server เพื่อให้พอร์ตพร้อมใช้งานสำหรับคุณในการทดสอบ / ใช้งาน
  2. ทำงาน: netcat -l [-u] 506 [0-1]
  3. จากไคลเอ็นต์: netcat SIP_Server_IP_FQDN [-u] 506 [0-1]
  4. พิมพ์ข้อความสุ่มบนปลายทางถ้ามันปรากฏบนปลายทางอื่นการรับส่งข้อมูลจะไม่ถูกบล็อก

ป้อนคำอธิบายรูปภาพที่นี่

-u สำหรับ UDP ค่าเริ่มต้นคือ TCP

-l สำหรับการฟัง (โหมดเซิร์ฟเวอร์) ค่าเริ่มต้นคือโหมดไคลเอนต์


1

หากคุณมีเครื่องอื่นที่ทำงานในเครือข่ายเดียวกันลอง:

telnet <centos-machine-ip> 5060

หากคุณสามารถเปิดการเชื่อมต่อได้แสดงว่าพอร์ตนั้นเปิดอยู่ นอกจากนี้คุณยังสามารถรับ NMAP และสแกนพอร์ต Centos ของคุณได้ด้วยตัวเอง หากพอร์ตปิดอยู่ให้ตรวจสอบ system-config-securitylevel และตรวจสอบว่าไฟร์วอลล์ของคุณอนุญาตการเชื่อมต่อหรือไม่

ฉันคิดว่าคุณกำลังถามวิธีส่งต่อพอร์ตจากเราเตอร์อินเทอร์เน็ตของคุณไปยังเครื่อง centos ของคุณ (เพื่อโฮสต์เว็บไซต์จากบ้านของคุณหรือบางอย่าง) หากเป็นเช่นนั้นคุณจะต้องทราบวิธีการเข้าถึงเราเตอร์ของคุณจากนั้นส่งต่อพอร์ตจากเราเตอร์ไปยังเครื่อง centos ของคุณ

หากไม่ได้ผลให้โทรหา ISP ของคุณและถามวิธีการใช้งาน อย่างไรก็ตาม ISPs ส่วนใหญ่บล็อกการเข้าถึงพอร์ตทั่วไป (ISP ส่วนใหญ่ไม่ชอบผู้ที่ใช้เว็บเซิร์ฟเวอร์หรือเซิร์ฟเวอร์อีเมลจากที่บ้าน)


5
telnet สร้างการเชื่อมต่อ TCP SIP เป็น UDP protocal (UDP / 5060) ดังนั้นคุณจะไม่สามารถสร้าง connet telnet ผ่าน telnet ได้
Zypher

สิ่งนี้จะไม่ทำงานกับ UDP!
slm

1

ถ้าคุณเพียงต้องการดูว่าซ็อกเก็ตถูกผูกไว้คุณสามารถใช้ netstat หรือ lsof เพื่อตรวจสอบว่ากระบวนการเป็นเจ้าของซ็อกเก็ต UDP และ TCP ที่รับฟัง

ฉันขอแนะนำให้ใช้เครื่องมือทดสอบ SIP เช่นsipsakเพื่อทดสอบการทำงานระดับสูงขึ้น

Zypher: SIP ไม่ได้เป็น UDP เท่านั้น

จาก RFC 3162 หน้า 141:

  All SIP elements MUST implement UDP and TCP.  SIP elements MAY
  implement other protocols.

  Making TCP mandatory for the UA is a substantial change from RFC
  2543.  It has arisen out of the need to handle larger messages,
  which MUST use TCP, as discussed below.  Thus, even if an element
  never sends large messages, it may receive one and needs to be
  able to handle them.



0

อาจจะเล็ก ๆ น้อย ๆ ในระดับสูง แต่มีเครื่องมือออนไลน์เพื่อตรวจสอบห้องว่างพอร์ต

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.