Makinemde hangi bağlantı noktalarının açık olduğunu nasıl görebilirim?


148

Makinemde hangi bağlantı noktalarının açık olduğunu görmek istiyorum, örneğin makinemin hangi bağlantı noktalarını dinlediğini görmek istiyorum. Örneğin bir web sunucusu kurduysam bağlantı noktası 80 vb.

Bunun için herhangi bir komut var mı?

Yanıtlar:


113

nmap Nmap yükle

Nmap ("Network Mapper") ağ araştırması veya güvenlik denetimi için ücretsiz ve açık kaynaklı bir yardımcı programdır

nmap 192.168.1.33 dahili Pc veya nmap external ip address

daha fazla bilgi man nmap


11
Teşekkürler, nmap localhostharika çalıştı.
Jonas

11
Unutmayın ki nmap localhostve nmap 192.168.0.3(ya da makine
IP'sinin

6
Netstat'ın buna daha iyi bir cevap olduğunu düşünüyorum. netstat, sistemin doğrudan ne dinlediğini ve ek bir uygulama kullanmadan veya localhost veya ağ üzerinden gereksiz çağrılar yapmadan listeleyeceğini listeler.
Mathieu Trudel-Lapierre

2
Bu aptalca. Bilgisayara erişiminiz varsa, sadece kullanın netstat -ln. Tüm açık portları anında göreceksiniz.
Alexis Wilke

1
nmap localhostyalnızca yerel ana bilgisayara bağlı olan hizmetleri bulamadı. Örneğin, ben koşmak influxdile bind-address:localhost:8086. Bu ortaya çıkmadı sudo nmap localhostama içeri girdi sudo netstat -tulpn.
Dan Dascalescu

279

Bunu hep kullandım:

sudo netstat -ntlp | grep LISTEN

4
sudo netstat -ntlp | grep LISTEN... sudoaksi takdirde kullanın ... pid yazdırılmaz.
Rafaf Tahsin

6
-lzaten dinlemek için filtreler. grep LISTEN2 satır başlık bilgisini gizlemenin ötesine geçmeyecektir.
Dan Dascalescu

3
-t: tcp,: -ldinleme soketi -p,: pid ve program adını göster,: yerine -nyazdır . Referans: linux.die.net/man/8/netstat127.0.0.1:80localhost:http
Rick

1
yüklemek netstatilesudo apt-get install net-tools
RichArt

2
Genişletilmiş komut sudo netstat --tcp --listening --programs --numeric. grepSütun başlıklarını kaldırmak istemediğiniz sürece kullanmanıza gerek yoktur .
Patrick Dark

60

Hangi portları listelediğini ve güvenlik duvarı kurallarınızın neler olduğunu bulmanın diğer iyi yolları:

  • sudo netstat -tulpn

  • sudo ufw status


Cevabı nmaptekrar değiştirdim, kullanılabilirliği netstatberbat.
Jonas

2
@Jonas: nmap cevabı altındaki yorumuma bakın. Yalnızca yerel ana bilgisayara bağlanan hizmetleri listelemez.
Dan Dascalescu

27

Açık portları listelemek için netstatkomutu kullanın.

Örneğin:

    $ sudo netstat -tulpn | grep LISTEN
    tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      5452/dnsmasq    
    tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1037/cupsd      
    tcp6       0      0 ::1:631                 :::*                    LISTEN      1037/cupsd

Yukarıdaki örnekte, üç servis geridöngü adresine bağlıdır.

"127.0.0.1" geridöngü adresine bağlı IPv4 hizmetleri yalnızca yerel makinede kullanılabilir. IPv6 için eşdeğer geri döngü adresi ":: 1" dir. IPv4 adresi "0.0.0.0", "herhangi bir IP adresi" anlamına gelir; bu, diğer makinelerin belirli bir bağlantı noktasındaki yerel olarak yapılandırılmış ağ arabirimlerinden birine bağlanabileceği anlamına gelir.

Başka bir yöntem de lsofkomutu kullanmaktır :

    $ sudo lsof -nP -i | grep LISTEN
    cupsd     1037   root    9u  IPv6  11276      0t0  TCP [::1]:631 (LISTEN)
    cupsd     1037   root   10u  IPv4  11277      0t0  TCP 127.0.0.1:631 (LISTEN)
    dnsmasq   5452 nobody    5u  IPv4 212707      0t0  TCP 127.0.0.1:53 (LISTEN)

Daha fazla ayrıntı için bkz. man netstatVeya man lsof.


3
-lSeçeneğin LISTENlimanlar listesi olduğunu düşündüm . Yani izgara burada gereksiz olacak mı ?!
Alexis Wilke

24

Bu, 0.0.0.080 numaralı bağlantı noktasında (standart web sunucusu bağlantı noktası numarası) IP adresini dinleyen bir işlemin (herhangi bir talebe yanıt vermesi için gerekli) olduğunu göstermek için yeterlidir . Benim durumumda bu web sunucusu olduğunu gösterirlighttpd

$ sudo netstat -ntlp | grep :80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN          2495/lighttpd

Daha sonra güvenlik duvarınızdan geçmesine izin verdiğiniz tek şeyin bağlantı noktası 80 olduğundan emin olmak istiyorsanız, güvenlik duvarı testi yapmak için www.grc.com adresinden ShieldsUp'ı sık sık kullanırım.


11

sudo iptables -LPC'niz için port kuralları listeler. UFW veya Shorewall güvenlik duvarları kullanıyorsanız, çıkışın okunması zor olabilir. Bu durumda sudo ufw status, örneğin kullanmak yerine .

Bir bağlantı noktası açık olsa bile, bu bağlantı noktasını dinleyen bir işlem yoksa, erişim hala reddedilecek olsa bile, bu çok kullanışlı değildir.


4

Sunucu makineleri veya yerel bağlantı noktalarının sürekli izlenmesini arıyorsanız, daha ayrıntılı bir sürüm için nmap'ın grafik sürümünü de kullanabilirsiniz.

Zenmap, Nmap Güvenlik Tarayıcısının resmi grafik kullanıcı arayüzüdür (GUI).

Mevcut destekler (Linux, Windows, Mac OS X, BSD, vb.)

Bu araç görünümüne bir göz atın:

görüntü tanımını buraya girin

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.