Jak mogę wyświetlić listę moich otwartych portów w Debianie?


58

Jakie polecenie wyświetla listę otwartych portów na serwerze Debian?

Próbowałem, netstat -a | egrep 'Proto|LISTEN'ale chciałbym coś bardziej szczegółowego, który faktycznie wyświetla numer portu.

Odpowiedzi:


86
 netstat -pln

-lwyświetli listę nasłuchujących portów, -pwyświetli również proces, -npokaże numery portów zamiast nazw. Dodaj, -taby pokazać tylko porty TCP.


12
Aby -pdziałało poprawnie, musisz uruchomić to jako root, w sudo netstat -tplnprzeciwnym razie kolumna procesu nie będzie szczególnie przydatna, chyba że jesteś użytkownikiem, którego proces nasłuchuje na danym porcie.
— cjc

21

lsof -i -P

Sprawdź na stronie podręcznika, lsofczy nie brakuje opcji. -Pwyświetla numer portu, a nie nazwę wziętą z /etc/servicesUruchom jako root, jednak dostarczy Ci listę wszystkich aktywnych połączeń sieciowych i ich status (nasłuchiwanie, nawiązanie połączenia itp.).


To powinna być poprawna odpowiedź. Netstat nie jest instalowany domyślnie
— José

10

To, czego prawie wszyscy chcą (TCP i UDP) netstat -tunlp.

Używam go codziennie, może co godzinę. Hack „lsof” jest bardziej przenośny (działa również w systemie Solaris), ale w Debianie nie jest to niezbędny pakiet, musisz go zainstalować.


Tak i uruchom go sudo.
— Martijn Heemels,

1
Mój przyjaciel nauczył mnie pamiętać to polecenie z nazwą kwiatu netstat -tulpenFlaga edaje dodatkowe informacje.
— Deele,

1
A teraz, w 2018 roku, moje świeże pudełko Debiana nie ma, netstatale ma lsof. :)
— Jason

10

Jestem wielkim fanem netstat -ntlpi lsof -ioba już wspomniane.

Nowe (er) polecenie dla mnie to ss .

Wywołanie jest jak:

ss -l

Dobrze jest mieć opcje pod względem poleceń i flag.


1
opcje są szczególnie dobre, ponieważ kontener dokujący mongo (i prawdopodobnie wiele innych) miał ss, ale nie netstat lub lsof
— Foon

Zacząłem używać tego jako pytania do wywiadu. Prawdopodobnie zapytało 40 różnych osób. Jak dotąd nikt nie wspomniał o ss. Pytam to jak OP, a jeśli odpowiedzą, mówię: „Ok, zabieram X, a teraz jak możesz to zrobić”. Aż do wyczerpania pomysłów.
— dmourati

6

Możesz to zrobić:

netstat -an | egrep 'Proto|LISTEN'

lub po prostu:

netstat -anl

który da ci wszystkie gniazda odsłuchowe w systemie.


2
To byłoby najlepsze rozwiązanie (gdzie „najlepsze” jest zdefiniowane jako „działa na najszerszym zakresie systemów” (BSD, Linux, AIX, Solaris, wierzę HP-UX))
— voretaq7

0

TechRepulic ma przyzwoity artykuł, który można znaleźć tutaj . Ma kilka podobnych poleceń, jak wymienione powyżej, ale także kilka odmian. Zdecydowanie poleciłbym również użycie nmap do wykonania skanowania portu danego komputera, abyś mógł zobaczyć z perspektywy zewnętrznej, które porty są otwarte i nasłuchują.


Czy możesz mi powiedzieć, dlaczego zostało to przegłosowane? Po prostu podałem link z wieloma powyższymi rozwiązaniami, które zostały zatwierdzone wraz z inną perspektywą wykonania zewnętrznego skanowania. Dzięki.
— Eric,

8
Nie przegłosowałem, ale w przypadku błędu serwera, takiego jak większość wymiany stosów, zwykle oczekujemy, że umieścisz tutaj odpowiedź, a nie tylko link do innego miejsca. Linki z czasem znikają, ale chcemy, aby zawartość SF nadal była cenna, gdy linki umrą.
— Zoredache

Jedyny wiersz kodu, który zawiera powyższy link do artykułu, to sudo nmap -T4 -A -v 192.168.1.1/24wszystko inne: idź zrób to - idź zrób to bez żadnych szczegółów ... To jak czytanie tylnej okładki książki - dużo słów bez mięsa.
— KingsInnerSoul,

0

Porty nasłuchu to nie to samo, co porty otwarte z zewnątrz. Musisz wziąć pod uwagę zaporę ogniową. Jeśli spróbujesz programu takiego jak nmapz innego komputera, zobaczysz, że otwarte porty nie są blokowane przez zaporę.


0

Wolę używać zamiast tego:

netstat -antp 
lsof -i 
netstat -lptu
netstat -tulpn
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.