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

113

Makinemde hangi portların açık olduğunu görmek istiyorum, ör. Makinem hangi portları dinliyor? Örneğin. Eğer bir web sunucusu yüklediysem, bağlantı noktası 80'dir.

Bunun için herhangi bir komut var mı?

    
sordu Jonas 25.10.2010 14:49

7 cevap

219

Bunu her zaman kullandım:

sudo netstat -ntlp | grep LISTEN
    
verilen cevap SiLeNCeD 03.08.2013 20:06
53

Hangi bağlantı noktalarının listelendiğini ve güvenlik duvarı kurallarınızın neler olduğunu öğrenmenin diğer iyi yolları:

  • sudo netstat -tulpn

  • sudo ufw status

verilen cevap nathwill 25.10.2010 16:38
22

Bu, bağlantı noktası 80'de (standart web sunucusu bağlantı noktası numarası) 0.0.0.0 (herhangi bir talebe cevap vermesi için gerekli) IP adresini dinleyen bir işlem olduğunu göstermek için yeterlidir. Benim durumumda bu, lighttpd

web sunucusunu gösterir.
$ 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 izin verilen tek şeyin bağlantı noktası 80 olduğundan emin olmak isterim. Güvenlik duvarı testi gerçekleştirmek için sıklıkla ShieldsUp'ı www.grc.com adresinden kullanırım.

    
verilen cevap rstonehouse 05.11.2011 21:03
22

Açık bağlantı noktalarını listelemek için netstat komutunu 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ı.

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

Başka bir yöntem lsof komutunu 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 netstat veya man lsof .

    
verilen cevap inetpro 29.08.2013 23:42
11

sudo iptables -L , bilgisayarınız için bağlantı noktası kurallarını listeler. Eğer ufw veya shorewall güvenlik duvarları kullanıyorsanız çıktıyı okumak zor olabilir. Bu durumda, örneğin sudo ufw status kullanın.

Bu, bir bağlantı noktası açık olsa bile, o bağlantı noktasını dinleyen bir işlem yoksa bile erişimin reddedileceği gibi kendi başına çok kullanışlı değildir.

    
verilen cevap Ciaran Liedeman 05.11.2011 20:37
3

Sunucu makinelerinin veya yerel bağlantı noktalarının sürekli olarak izlenmesini istiyorsanız, daha ayrıntılı bir sürüm için nmap i.e Zenmap'in grafik sürümünü de kullanabilirsiniz.

Zenmap, Nmap Güvenlik Tarayıcısı için resmi grafik kullanıcı arabirimidir (GUI).

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

Bu araç görünümüne bakın:

    
verilen cevap Vishal G 06.12.2016 06:57

Etiketlerdeki diğer soruları oku