15 Przydatne „przykłady poleceń sockstat”, aby znaleźć otwarte porty w FreeBSD
- 4494
- 847
- Maurycy Napierała
Sockstat to wszechstronne narzędzie wiersza poleceń używane do wyświetlania sieci i systemu otwartego gniazda w FreeBSD. Głównie polecenie SOCKSTAT jest domyślnie zainstalowane w FreeBSD i jest powszechnie używane do wyświetlania nazwy procesów, które otworzyły określony port sieciowy w systemie FreeBSD.
Jednakże, Sockstat może również wymienić otwarte gniazda oparte na wersji protokołu (obie wersje IP), na stanie połączenia i na jakich portach demon lub program wiąże.
Przeczytaj także: 20 Przydatne przykłady polecenia „NetStat” do sprawdzenia połączeń sieciowych
Może również wyświetlać gniazda komunikacji między procesami, zwykle znanymi jako gniazda domeny unix lub IPC. Polecenie Sockstat w połączeniu z filtrem GREP lub narzędziem AWK okazuje się potężnym narzędziem dla lokalnego stosu sieciowego.
Może zmniejszyć wyniki dla otwartego połączenia na podstawie użytkownika, który jest właścicielem gniazda, deskryptora pliku gniazda sieciowego lub PID procesu, który otworzył gniazdo.
W tym przewodniku wymienimy kilka wspólnych przykładów wykorzystania, ale także bardzo potężne, narzędzia sieciowych linii poleceń sockstat w freebsd.
Wymagania
- FreeBSD 11.1 Przewodnik instalacyjny
1. Lista wszystkich otwartych portów w FreeBSD
Po prostu wykonane bez żadnych opcji lub przełączników, polecenie SOCKSTAT wyświetli wszystkie otwarte gniazda w systemie FreeBSD, jak pokazano na poniższym zrzucie ekranu.
# sockstatWyświetl porty sieciowe w FreeBSD
Wartości wyświetlane w danych wyjściowych sockstat są opisane jako:
- UŻYTKOWNIK : Właściciel (konto użytkownika) gniazda.
- KOMENDA : Polecenie, które otworzyło gniazdo.
- Pid : Identyfikator procesu polecenia, który jest właścicielem gniazda.
- FD : Liczba deskryptora pliku gniazda.
- Proto : Protokół transportu (zwykle TCP/UDP) powiązany z otwartym gniazdem lub typem gniazda w przypadku gniazd domeny Unix (Datagram, Stream lub SEQPAC) dla gniazd UNIX.
- LOKALNY ADRES : Reprezentuje lokalny adres IP dla gniazd opartych na IP. W przypadku gniazda Unix reprezentuje nazwę pliku końcowego dołączoną do gniazda.
"??"
notacja implikuje, że punkt końcowy gniazda nie można rozpoznać ani ustalić. - ZAGRANICZNY ADRES : Zdalny adres IP, do którego podłącza się gniazdo.
2. Wymień słuchanie lub otwarte porty w FreeBSD
Wykonane z -L
Flaga, polecenie sockstat wyświetli wszystkie gniazda słuchania otwarte na stosie sieciowym i wszystkie otworzyły gniazda domeny unix lub nazwane rury zaangażowane w jakieś lokalne przetwarzanie danych w systemie.
# sockstat -lLista otwartych portów sieciowych
3. List IPv4 otworzył porty w FreeBSD
Aby wyświetlić wszystkie otwarte gniazda IPv4 Tylko protokół, wydaj polecenie za pomocą -4
flaga, jak sugerowano w poniższym przykładzie.
# sockstat -4List IPv4 otworzył porty w FreeBSD
4. List IPv6 otworzył porty w FreeBSD
Podobnie jak wersja IPv4, możesz również wyświetlać otwarte gniazda sieciowe dla IPv6 Tylko, wydając polecenie, jak pokazano poniżej.
# sockstat -6List Otwarte porty IPv6
5. Lista TCP lub UDP otwarte porty w FreeBSD
W celu wyświetlania gniazd sieciowych opartych tylko na określonym protokole sieciowym, takim jak TCP Lub UDP, Użyj -P
flaga, a następnie nazwa argumentu protokołu.
Nazwy protokołu można znaleźć, sprawdzając zawartość /etc/protokoły plik. Obecnie protokół ICMP nie jest obsługiwany przez narzędzie Sockstat.
Pokaż tylko gniazda TCP
# sockstat -p tcpList TCP otworzył porty
Pokaż tylko gniazda UDP
# sockstat -p udpList UDP otworzył porty
Łańcuch obu protokołów.
# sockstat -p tcp, udp
6. Wypisz numery portów specyficzne dla TCP i UDP
Jeśli chcesz wyświetlić wszystkie gniazda TCP lub UDP IP, na podstawie numeru portu lokalnego lub zdalnego, użyj poniższych flag poleceń i składni, jak pokazano na poniższym zrzucie ekranu.
# sockstat -p tcp -p 443 [show tcp https port] # sockstat -p UDP -p 53 [pokaż por Port dns] # sockstat -p tcp -p 443,53,80,21 [Pokaż zarówno TCP i UDP]Wypisz specyficzny port TCP
7. Lista otwartych i podłączonych portów w FreeBSD
Aby wyświetlić wszystkie otwarte i podłączone gniazda, użyj -C
flaga. Jak pokazano na poniższych próbkach, możesz wymienić wszystkie Https podłączone gniazda lub wszystkie podłączone gniazda TCP, wydając polecenia.
# sockstat -p tcp -p 443 -c # sockstat -p tcp -cLista otwartych i podłączonych portów
8. Wymień porty słuchowe sieciowe w FreeBSD
Aby wymienić wszystkie otwarte gniazda TCP w stanie słuchania -L
I -S
flagi, jak pokazano w poniższym przykładzie. Będąc protokołem bez połączeń, UDP nie utrzymuje informacji o stanie połączenia.
UDP otwarto gniazda nie można wyświetlić za pomocą ich stanu, ponieważ protokół UDP używa danych do wysyłania/odbierania danych i nie ma mechanizmu walizacji do określenia stanu połączenia.
# sockstat -46 -l -sWymień porty słuchowe sieciowe
9. Wymień gniazda UNIX i nazwane rury
Gniazda domeny unix, a także inne formy lokalnej komunikacji międzyprocesowej, takie jak nazwane rury, mogą być wyświetlane przez polecenie sockstat za pomocą używania -u
flaga, jak pokazano na poniższym obrazku.
# sockstat -uLista gniazd Unix
10. Porty list otwarte według aplikacji w FreeBSD
Wyjście polecenia sockstat można filtrować przez narzędzie GREP, aby wyświetlić listę portów otwartych przez określoną aplikację lub polecenie.
Załóżmy, że chcesz wymienić wszystkie powiązane gniazda Nginx Serwer WWW, możesz wydać następujące polecenie, aby wykonać zadanie.
# sockstat -46 | GREP NginxLista aplikacji do słuchania gniazda
Aby wyświetlić tylko podłączone gniazda powiązane z serwerem WWW Nginx, wydać następujące polecenie.
# sockstat -46 -C | GREP Nginx
11. Wymień protokoły podłączone HTTPS
Możesz wymienić wszystkie połączone gniazda powiązane z Https protokół obok stanu każdego połączenia, uruchamiając poniższe polecenie.
# sockstat -46 -s -p tcp -p 443 -cWymień protokoły podłączone HTTPS
12. Wymień zdalne gniazda HTTP
Aby wymienić wszystkie zdalne gniazda powiązane z protokołem HTTP, możesz uruchomić jedną z następujących kombinacji poleceń.
# sockstat -46 -C | Egrep '80 | 443 '| awk 'drukuj 7 $' | uniq -c | sort -nr # sockstat -46 -C -p 80,443 | GREP -V Adres | awk 'drukuj 7 $' | uniq -c | sort -nrWymień zdalne protokoły HTTP
13. Znajdź najwyższe żądania HTTP według adresów IP
Jeśli chcesz znaleźć, ile połączeń HTTP jest żądane przez każdy zdalny adres IP, wydaj poniższe polecenie. To polecenie może być bardzo przydatne na wypadek, gdybyś chciał ustalić, czy Twój serwer WWW jest pod jakimś atakiem DDOS. W przypadku podejrzeń należy zbadać adresy IP z najwyższą stawką żądania.
# sockstat -46 -C | Egrep '80 | 443 '| awk 'drukuj 7 $' | CUT -D: -f1 | uniq -c | sort -nr
14. Lista DNS otworzyło gniazda
Jeśli skonfigurowałeś buforowanie i naprzód serwer DNS w lokalizacji, aby obsługiwać klientów wewnętrznych za pośrednictwem protokołu TCP Transport i chcesz wyświetlić listę wszystkich gniazd
Otwarte przez Resolver, wraz ze stanem każdego połączenia gniazda, wykonaj następujące polecenie.
# sockstat -46 -p tcp -p 53 -sLista DNS otworzyło gniazda
15. Zapytanie TCP DNS w domenie lokalnej
Jeśli w sieci nie ma ruchu DNS, możesz ręcznie uruchomić zapytanie DNS w gnieździe TCP z konsoli lokalnej maszyny, uruchamiając następujące polecenie DIG. Następnie wydaj powyższe polecenie, aby wymienić wszystkie gniazda rozdzielczych.
# kopa +tcp www.domena.com @127.0.0.1Zapytanie TCP DNS na lokalnych
To wszystko! Wraz z narzędziami wiersza poleceń NetStat i LSOF, linia poleceń SOCKSTAT jest potężnym narzędziem wykorzystywanym do pozyskiwania informacji o sieci i rozwiązywania problemów wielu aspektów stosu sieciowych i procesów i usług związanych z sieci.
FreeBsd Sockstat Dowódzka w Linux jest reprezentowany przez Netstat lub nowo SS Komenda. Wierzcie lub nie, w oparciu o narzędzie Sockstat, podobną aplikację opracowaną dla systemu Android, o nazwie Sockstat - proste GUI NetStat.
- « 11 sposobów znalezienia informacji o koncie użytkownika i szczegółów logowania w Linux
- Jak zainstalować i skonfigurować „Powerdns” (z Mariadb) i „PowerAdmin” w RHEL/CENTOS 7 »