Nástroj ss je příkaz CLI používaný k zobrazení informací o síťovém soketu v Linuxu. Ss znamená statistiku zásuvky. Je to podobný nástroj jako netstat, který dokáže zobrazit více informací, jako je TCP a stavové informace.
Nástroj ss je dodáván s balíčkem iproute2. Může zobrazovat statistiky pro PACKET, TCP, UDP, DCCP, RAW a Unix doménové sokety.
V tomto tutoriálu se naučíme příkaz ss v Linuxu s užitečnými příklady.
1. Vypsat síťová připojení
Příkaz ss bez jakýchkoli voleb vypíše všechny otevřené nenaslouchající sokety (např. TCP/UNIX/UDP), které navázaly spojení.
$ ss
- Netid:Zobrazuje typy soketů.
- Stav:Zobrazuje stav soketu, pokud je založen (ESTAB), nepřipojen (UNCONN) nebo naslouchající (LISTEN).
- Recv-Q:Zobrazuje počet přijatých paketů ve frontě.
- Send-Q:Zobrazuje počet odeslaných paketů ve frontě.
- Místní adresa:port:Zobrazuje adresu místního počítače a port.
- Adresa partnera:port:Zobrazuje adresu vzdáleného počítače a port.
Podrobnější informace můžete získat pomocí příkazu ss ve spojení s volbami. Můžete také vybrat více možností současně.
Syntaxe příkazu ss:
$ ss [Option] $ ss [Option1] [Option2] [Option3] 2. Seznam naslouchacích zásuvek
Chcete-li zobrazit seznam naslouchacích zásuvek pomocí -l nebo --listen možnost.
$ ss -l
3. Vypište všechny zásuvky
Pomocí -a můžete vypsat všechna naslouchající a neposlouchající síťová připojení nebo -all možnost.
$ ss -a
4. Vypsat TCP Connection
Chcete-li zobrazit připojení soketu TCP, použijte -t nebo --tcp možnost.
$ ss -t
Zobrazení seznamu všech připojení TCP , můžete použít -a a -t možnosti. To zahrnuje všechny stavy zásuvky.
$ ss -at
Chcete-li zobrazit připojení TCP pro všechny stavy naslouchání, zkombinujte -l a -t možnosti.
$ ss -alt 5. List UDP připojení
Chcete-li zobrazit připojení soketu UDP, použijte -u nebo --udp možnost.
$ ss -u
Zobrazení seznamu všech připojení UDP , použijte -a a -u možnosti. To zahrnuje všechny stavy zásuvky.
$ ss -au
Můžete kombinovat -l a -u zobrazíte připojení UDP pro všechny stavy naslouchání .
$ ss -lu 6. Seznam Unix Sockets
Chcete-li zobrazit všechny sokety Unixu, můžete použít příkaz ss spolu s -f unix nebo -x .
$ ss -f unix
7. Vypsat nezpracované zásuvky
Chcete-li zobrazit všechny sokety Raw, můžete použít -w nebo možnost --raw.
$ ss -w
8. Seznam připojení IP adresy
Pomocí příkazu ss můžeme zobrazit seznam připojení konkrétní cílové nebo zdrojové IP adresy.
Například pro výpis připojení cílové IP adresy:
$ ss dst 13.227.138.30
Například pro výpis připojení zdrojové IP adresy:
$ ss src 192.168.18.151
9. Seznam připojení IPv4 a IPv6 Socket
Pokud chcete zobrazit seznam připojení soketu IPv4, použijte volbu -4 a -6 pro zobrazení seznamu připojení soketu IPv6.
Zobrazení seznamu připojení soketu IPv4:
$ ss -4
Zobrazení seznamu připojení soketu IPv6:
$ ss -6
Chcete-li vypsat všechna připojení IPv4 TCP, můžete použít následující příklad.
$ ss -at4
10. Identifikujte procesy
Můžete najít procesy soketů pomocí -p volba spolu s příkazem ss. K identifikaci procesu budete potřebovat oprávnění sudo.
$ sudo ss -t -p
11. Seznam připojení bez rozlišení názvu hostitele
Chcete-li vyřešit číselnou adresu/porty, použijte volbu -r (resolve). Zatímco -n volba se nepokouší přeložit názvy služeb.
Zde v příkladu můžete vidět rozdíl mezi těmito dvěma:
$ ss -tn
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
ESTAB 0 0 74.208.235.196:22 48.192.234.17:60216
$ ss -tr
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
ESTAB 0 64 li82-186.members.linode.com:ssh n47-172-231-17.sun4.vic.optusnet.com.au:60317
$ 12. Filtrovat podle připojení
Podívejme se na několik příkladů, jak použít filtry pro výstup konkrétních informací.
Chcete-li filtrovat připojení TCP s nasloucháním stavu, zadejte:
$ ss -t state listening Chcete-li zobrazit navázaná připojení k portu ssh:
$ ss -tr state established '( dport = :22 or sport = :22 )' Můžete také filtrovat tradičním způsobem příkazu grep. Zde zobrazujem všechna TCP spojení, která naslouchají ve stavu:
$ ss -at | grep LISTEN Možnosti příkazu ss
Příkaz ss poskytuje různé možnosti ovládání výstupu, který se má zobrazit podle vašich požadavků. Můžete použít -h nebo --help spolu s příkazem ss k zobrazení základních voleb dostupných pomocí příkazového nástroje ss.
$ ss -h
příkaz ss vs netstat
Nástroj ss je součástí balíčku iproute2 a je výchozí ve většině distribucí Linuxu. Chcete-li mít netstat, musíte nainstalovat net-tools, který je již zastaralý. Příkaz ss je mnohem rychlejší, protože se načítá přímo z jádra. Ss není úplnou náhradou netstat, některé příkazy netstat jsou nahrazeny příkazem ip.
Závěr
V tomto tutoriálu jsme se dozvěděli o příkazu ss s několika užitečnými příklady. Další informace naleznete na manuálové stránce příkazu ss.