{"id":3815,"date":"2023-03-20T23:11:23","date_gmt":"2023-03-20T22:11:23","guid":{"rendered":"https:\/\/www.gcportal.com\/wordpress\/?p=3815"},"modified":"2023-03-21T14:07:01","modified_gmt":"2023-03-21T13:07:01","slug":"comandi-di-rete-netstat-e-ss","status":"publish","type":"post","link":"https:\/\/www.gcportal.com\/wordpress\/archives\/3815","title":{"rendered":"Comandi di Rete: Netstat e SS"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Una&nbsp;<em>porta<\/em>&nbsp;\u00e8 un endpoint di comunicazione. All&#8217;interno di un sistema operativo, una porta viene aperta o chiusa per pacchetti di dati per processi o servizi di rete specifici.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In genere, le porte identificano un servizio di rete specifico assegnato a loro. Questo pu\u00f2 essere modificato configurando manualmente il servizio per l&#8217;utilizzo di una porta diversa, ma in generale \u00e8 possibile utilizzare le impostazioni predefinite.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le prime 1024 porte (numeri di porta a ) sono indicate come&nbsp;<em>numeri di porta noti<\/em>&nbsp;e sono riservate ai servizi pi\u00f9 comunemente utilizzati. Questi includono SSH (22), HTTP (80), HTTPS (443).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I numeri di porta superiori a 1024 sono indicati come&nbsp;<em>porte effimere<\/em>.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>I numeri di porta 1024 49151 sono chiamati&nbsp;<em>porte registrate\/utente<\/em>. Sono assegnate da IANA (Internet Assigned Numbers Authority) su richiesta e approvazione di un\u2019organizzazione o di uno sviluppatore di applicazioni. Queste porte sono usate dai protocolli di trasporto (TCP, UDP, DCCP, SCTP) per identificare un\u2019applicazione o un servizio specifico. Queste porte dovrebbero essere trattate come semi-riservate.<\/li>\n\n\n\n<li>I numeri di porta 49152 65535 sono chiamati&nbsp;<em>porte dinamiche\/private<\/em> o effimere. Queste porte non sono assegnate, controllate o registrate da nessuna autorit\u00e0. Sono usate per porte temporanee o private. Sono anche note come porte non riservate. Queste porte sono usate dai client e dai server per stabilire connessioni a breve termine. Queste porte possono essere cambiate dal sistema operativo o dall\u2019applicazione in base alle necessit\u00e0.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">I comandi Netstat e SS sono utilizzati per darci informazioni sullo stato di queste porte e sui servizi che le utilizzano. Passiamo ora dopo questa introduzione al loro approfondimento.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>Netstat<\/em><\/strong>, \u00e8 un comando composto dalle parole&nbsp;<em>network<\/em>&nbsp;(\u201crete\u201d) e&nbsp;<em>statistics<\/em>&nbsp;(\u201cstatistiche\u201d), \u00e8 un programma che funziona tramite istruzioni date dalla riga di comando. Fornisce statistiche essenziali su tutte le attivit\u00e0 di rete e d\u00e0 informazioni su quali&nbsp;<strong>porte e indirizzi<\/strong>&nbsp;funzionino le rispettive connessioni &#8211;&nbsp;TCP,&nbsp;UDP&nbsp;&#8211; oltre a indicare quali siano le porte aperte per accogliere le richieste.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>SS <\/em><\/strong>\u00e8 un&#8217;utilit\u00e0 utilizzata per studiare i socket nei sistemi Linux e Unix. Mostra informazioni simili a netstat e in grado di scaricare le statistiche del socket. Il comando ss pu\u00f2 visualizzare pi\u00f9 di TCP e informazioni sullo stato rispetto ad altri strumenti. Per impostazione predefinita, ss visualizza un elenco di socket aperti non in ascolto (ad esempio TCP\/UNIX\/UDP) che hanno stabilito una connessione.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Comando Netstat<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Il programma netstat fu implementato per la prima volta nel 1983 su BSD (Berkeley Software Distribution), sistema derivato di&nbsp;<strong>UNIX<\/strong>, di cui all\u2019epoca la versione 4.2 fu tra le prime a supportare la&nbsp;famiglia di protocolli Internet TCP\/IP. Su&nbsp;<strong>Linux<\/strong>, sviluppato nel 1991, cos\u00ec come su&nbsp;<strong>Windows&nbsp;<\/strong>a partire dalla versione 3.11 (1993), netstat \u00e8 stato integrato come standard. Le diverse implementazioni sono molto simili per quanto riguarda la loro funzionalit\u00e0, mentre i parametri dei&nbsp;<a href=\"https:\/\/www.ionos.it\/digitalguide\/server\/tools-o-strumenti\/comandi-netstat\/\">comandi netstat<\/a>, cos\u00ec come il loro output, si differenziano leggermente a seconda dei sistemi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il comando netstat \u00e8 uno strumento utile per monitorare le connessioni sulla tua rete. Puoi usare diverse opzioni per visualizzare diverse informazioni sulle connessioni, le porte, le statistiche e molto altro.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Oltre ai socket collegati, pu\u00f2 anche elencare i socket in ascolto che sono in attesa di connessioni in entrata. Quindi, verificando una porta aperta 80 \u00e8 possibile confermare se un server Web \u00e8 in esecuzione sul sistema o meno.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Questo lo rende uno strumento molto utile per gli amministratori di rete e di sistema. In questa guida vediamo alcuni esempi di utilizzo del comando netstat per vedere informazioni sulle connessioni di rete e aprire le porte su un sistema.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Vediamo ora qualche suo utilizzo interessante:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong>$ netstat -a<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ netstat -a\nActive Internet connections (servers and established)\nProto Recv-Q Send-Q Local Address Foreign Address State\ntcp 0 0 localhost:mysql 0.0.0.0:* LISTEN\ntcp 0 0 0.0.0.0:5355 0.0.0.0:* LISTEN\ntcp 0 0 0.0.0.0:webmin 0.0.0.0:* LISTEN\ntcp 0 0 127.0.0.53:domain 0.0.0.0:* LISTEN\ntcp 0 0 localhost:ipp 0.0.0.0:* LISTEN\ntcp 0 0 localhost:6010 0.0.0.0:* LISTEN\ntcp 0 0 0.0.0.0:2203 0.0.0.0:* LISTEN\ntcp 0 0 provisioner-local:2203 zpxr72700X.fritz.:14354 ESTABLISHED\ntcp 0 0 provisioner-local:2203 zpxr72700X.fritz.:14358 ESTABLISHED\ntcp6 0 0 [::]:5355 [::]:* LISTEN\ntcp6 0 0 [::]:http [::]:* LISTEN\ntcp6 0 0 localhost:ipp [::]:* LISTEN\ntcp6 0 0 localhost:6010 [::]:* LISTEN\ntcp6 0 0 [::]:https [::]:* LISTEN\ntcp6 0 0 [::]:2203 [::]:* LISTEN\nudp 0 0 0.0.0.0:631 0.0.0.0:*\nudp 0 0 0.0.0.0:mdns 0.0.0.0:*\nudp 0 0 0.0.0.0:5355 0.0.0.0:*\nudp 0 0 0.0.0.0:10000 0.0.0.0:*\nudp 0 0 127.0.0.53:domain 0.0.0.0:*\nudp 0 0 zpxwpress.fritz.:bootpc fritz.box:bootps ESTABLISHED\nudp 0 0 provisioner-loca:bootpc 0.0.0.0:*\nudp 0 0 0.0.0.0:39269 0.0.0.0:*\nudp6 0 0 zpxwpress:dhcpv6-client [::]:*\nudp6 0 0 zpxwpress:dhcpv6-client [::]:*\nudp6 0 0 [::]:51961 [::]:*\nudp6 0 0 [::]:mdns [::]:*\nudp6 0 0 [::]:5355 [::]:*\nraw6 0 0 [::]:ipv6-icmp [::]:* 7\nraw6 0 0 [::]:ipv6-icmp [::]:* 7\nActive UNIX domain sockets (servers and established)<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Per visualizzare tutte le connessioni sia in ascolto che non in ascolto da diversi protocolli come socket tcp, udp e unix. Tuttavia questo non \u00e8 interessante. Gli amministratori spesso desiderano scegliere connessioni specifiche in base a protocolli o numeri di porta, ad esempio.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Per visualizzare solo le connessioni TCP, usa:&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em><strong>$ netstat -at<\/strong><\/em><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ netstat -at\nActive Internet connections (servers and established)\nProto Recv-Q Send-Q Local Address           Foreign Address         State\ntcp        0      0 localhost:mysql         0.0.0.0:*               LISTEN\ntcp        0      0 0.0.0.0:5355            0.0.0.0:*               LISTEN\ntcp        0      0 0.0.0.0:webmin          0.0.0.0:*               LISTEN\ntcp        0      0 127.0.0.53:domain       0.0.0.0:*               LISTEN\ntcp        0      0 localhost:ipp           0.0.0.0:*               LISTEN\ntcp        0      0 localhost:6010          0.0.0.0:*               LISTEN\ntcp        0      0 0.0.0.0:2203            0.0.0.0:*               LISTEN\ntcp        0     72 provisioner-local:2203  zpxr72700X.fritz.:14354 ESTABLISHED\ntcp        0      0 provisioner-local:2203  zpxr72700X.fritz.:14358 ESTABLISHED\ntcp6       0      0 [::]:5355               [::]:*                  LISTEN\ntcp6       0      0 [::]:http               [::]:*                  LISTEN\ntcp6       0      0 localhost:ipp           [::]:*                  LISTEN\ntcp6       0      0 localhost:6010          [::]:*                  LISTEN\ntcp6       0      0 [::]:https              [::]:*                  LISTEN\ntcp6       0      0 [::]:2203               [::]:*                  LISTEN\nbitnami@zpxwpress:~$\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Per visualizzare solo le connessioni UDP, usa:&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>$ netstat -au<\/em><\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ netstat -au\nActive Internet connections (servers and established)\nProto Recv-Q Send-Q Local Address           Foreign Address         State\nudp        0      0 0.0.0.0:631             0.0.0.0:*\nudp        0      0 0.0.0.0:mdns            0.0.0.0:*\nudp        0      0 0.0.0.0:5355            0.0.0.0:*\nudp        0      0 0.0.0.0:10000           0.0.0.0:*\nudp        0      0 127.0.0.53:domain       0.0.0.0:*\nudp        0      0 zpxwpress.fritz.:bootpc fritz.box:bootps        ESTABLISHED\nudp        0      0 provisioner-loca:bootpc 0.0.0.0:*\nudp        0      0 0.0.0.0:39269           0.0.0.0:*\nudp6       0      0 zpxwpress:dhcpv6-client [::]:*\nudp6       0      0 zpxwpress:dhcpv6-client [::]:*\nudp6       0      0 [::]:51961              [::]:*\nudp6       0      0 [::]:mdns               [::]:*\nudp6       0      0 [::]:5355               [::]:*\nbitnami@zpxwpress:~$<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Per visualizzare solo le porte in ascolto, usa:&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>$ netstat -l<\/em><\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ netstat -l\nActive Internet connections (only servers)\nProto Recv-Q Send-Q Local Address           Foreign Address         State\ntcp        0      0 localhost:mysql         0.0.0.0:*               LISTEN\ntcp        0      0 0.0.0.0:5355            0.0.0.0:*               LISTEN\ntcp        0      0 0.0.0.0:webmin          0.0.0.0:*               LISTEN\ntcp        0      0 127.0.0.53:domain       0.0.0.0:*               LISTEN\ntcp        0      0 localhost:ipp           0.0.0.0:*               LISTEN\ntcp        0      0 localhost:6010          0.0.0.0:*               LISTEN\ntcp        0      0 0.0.0.0:2203            0.0.0.0:*               LISTEN\ntcp6       0      0 [::]:5355               [::]:*                  LISTEN\ntcp6       0      0 [::]:http               [::]:*                  LISTEN\ntcp6       0      0 localhost:ipp           [::]:*                  LISTEN\ntcp6       0      0 localhost:6010          [::]:*                  LISTEN\ntcp6       0      0 [::]:https              [::]:*                  LISTEN\ntcp6       0      0 [::]:2203               [::]:*                  LISTEN\nudp        0      0 0.0.0.0:631             0.0.0.0:*\nudp        0      0 0.0.0.0:mdns            0.0.0.0:*\nudp        0      0 0.0.0.0:5355            0.0.0.0:*\nudp        0      0 0.0.0.0:10000           0.0.0.0:*\nudp        0      0 127.0.0.53:domain       0.0.0.0:*\nudp        0      0 provisioner-loca:bootpc 0.0.0.0:*\nudp        0      0 0.0.0.0:39269           0.0.0.0:*\nudp6       0      0 zpxwpress:dhcpv6-client [::]:*\nudp6       0      0 zpxwpress:dhcpv6-client [::]:*\nudp6       0      0 [::]:51961              [::]:*\nudp6       0      0 [::]:mdns               [::]:*\nudp6       0      0 [::]:5355               [::]:*\nraw6       0      0 [::]:ipv6-icmp          [::]:*                  7\nraw6       0      0 [::]:ipv6-icmp          [::]:*                  7\nActive UNIX domain sockets (only servers)\nProto RefCnt Flags       Type       State         I-Node   Path\nunix  2      [ ACC ]     STREAM     LISTENING     11218    \/run\/systemd\/journal\/io.systemd.journal\nunix  2      [ ACC ]     STREAM     LISTENING     17091    \/var\/lib\/syslog-ng\/syslog-ng.ctl\nunix  2      [ ACC ]     STREAM     LISTENING     17672    \/run\/user\/1000\/systemd\/private\nunix  2      [ ACC ]     STREAM     LISTENING     17679    \/run\/user\/1000\/bus\nunix  2      [ ACC ]     STREAM     LISTENING     17681    \/run\/user\/1000\/gnupg\/S.dirmngr\nunix  2      [ ACC ]     STREAM     LISTENING     17683    \/run\/user\/1000\/gnupg\/S.gpg-agent.browser\nunix  2      [ ACC ]     STREAM     LISTENING     17685    \/run\/user\/1000\/gnupg\/S.gpg-agent.extra\nunix  2      [ ACC ]     STREAM     LISTENING     17687    \/run\/user\/1000\/gnupg\/S.gpg-agent.ssh\nunix  2      [ ACC ]     STREAM     LISTENING     17689    \/run\/user\/1000\/gnupg\/S.gpg-agent\nunix  2      [ ACC ]     STREAM     LISTENING     17691    \/run\/user\/1000\/pipewire-0\nunix  2      [ ACC ]     STREAM     LISTENING     17693    \/run\/user\/1000\/pk-debconf-socket\nunix  2      [ ACC ]     STREAM     LISTENING     17695    \/run\/user\/1000\/pulse\/native\nunix  2      [ ACC ]     STREAM     LISTENING     11945    \/var\/run\/vmware\/guestServicePipe\nunix  2      [ ACC ]     STREAM     LISTENING     11954    \/run\/systemd\/resolve\/io.systemd.Resolve\nunix  2      [ ACC ]     STREAM     LISTENING     18443    \/var\/run\/gonit.sock\nunix  2      [ ACC ]     STREAM     LISTENING     18189    \/opt\/bitnami\/php\/var\/run\/www.sock\nunix  2      [ ACC ]     STREAM     LISTENING     18237    \/opt\/bitnami\/mariadb\/tmp\/mysql.sock\nunix  2      [ ACC ]     STREAM     LISTENING     15014    \/run\/cups\/cups.sock\nunix  2      [ ACC ]     STREAM     LISTENING     10049    \/run\/systemd\/private\nunix  2      [ ACC ]     STREAM     LISTENING     11610    \/run\/acpid.socket\nunix  2      [ ACC ]     STREAM     LISTENING     10051    \/run\/systemd\/userdb\/io.systemd.DynamicUser\nunix  2      [ ACC ]     STREAM     LISTENING     10052    \/run\/systemd\/io.system.ManagedOOM\nunix  2      [ ACC ]     STREAM     LISTENING     11616    \/run\/avahi-daemon\/socket\nunix  2      [ ACC ]     STREAM     LISTENING     10063    \/run\/systemd\/fsck.progress\nunix  2      [ ACC ]     STREAM     LISTENING     12729    \/run\/dbus\/system_bus_socket\nunix  2      [ ACC ]     STREAM     LISTENING     10070    \/run\/systemd\/journal\/stdout\nunix  2      [ ACC ]     SEQPACKET  LISTENING     10073    \/run\/udev\/control\nbitnami@zpxwpress:~$\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Per visualizzare il nome del programma e l\u2019ID del processo associati a ogni connessione, usa:&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>$ netstat -p<\/em><\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ netstat -p\n(Not all processes could be identified, non-owned process info\n will not be shown, you would have to be root to see it all.)\nActive Internet connections (w\/o servers)\nProto Recv-Q Send-Q Local Address           Foreign Address         State       PID\/Program name\ntcp        0    136 provisioner-local:2203  zpxr72700X.fritz.:14354 ESTABLISHED -\ntcp        0      0 provisioner-local:2203  zpxr72700X.fritz.:14358 ESTABLISHED -\nudp        0      0 zpxwpress.fritz.:bootpc fritz.box:bootps        ESTABLISHED -\nActive UNIX domain sockets (w\/o servers)\nProto RefCnt Flags       Type       State         I-Node   PID\/Program name     Path\nunix  2      [ ]         DGRAM                    17669    1271\/systemd         \/run\/user\/1000\/systemd\/notify\nunix  3      [ ]         DGRAM                    10046    -                    \/run\/systemd\/notify\nunix  16     [ ]         DGRAM                    10066    -                    \/run\/systemd\/journal\/dev-log\nunix  8      [ ]         DGRAM                    10068    -                    \/run\/systemd\/journal\/socket\nunix  3      [ ]         STREAM     CONNECTED     17732    1271\/systemd\nunix  3      [ ]         STREAM     CONNECTED     12835    -\nunix  3      [ ]         STREAM     CONNECTED     11313    -\nunix  3      [ ]         STREAM     CONNECTED     21635    -\nunix  2      [ ]         DGRAM                    17622    -\nunix  3      [ ]         STREAM     CONNECTED     13938    -                    \/run\/dbus\/system_bus_socket\nunix  2      [ ]         DGRAM                    11222    -\nunix  3      [ ]         STREAM     CONNECTED     15030    -\nunix  3      [ ]         STREAM     CONNECTED     16769    -                    \/run\/systemd\/journal\/stdout\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Per visualizzare le statistiche di tutti i protocolli, usa:&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>$ netstat -s<\/em><\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ netstat -s\nIp:\n    Forwarding: 2\n    21843 total packets received\n    3 with invalid addresses\n    0 forwarded\n    0 incoming packets discarded\n    19354 incoming packets delivered\n    7061 requests sent out\nIcmp:\n    0 ICMP messages received\n    0 input ICMP message failed\n    ICMP input histogram:\n    0 ICMP messages sent\n    0 ICMP messages failed\n    ICMP output histogram:\nTcp:\n    9 active connection openings\n    7 passive connection openings\n    2 failed connection attempts\n    0 connection resets received\n    2 connections established\n    11615 segments received\n    9758 segments sent out\n    6 segments retransmitted\n    0 bad segments received\n    10 resets sent\nUdp:\n    10569 packets received\n    0 packets to unknown port received\n    0 packet receive errors\n    130 packets sent\n    0 receive buffer errors\n    0 send buffer errors\nUdpLite:\nTcpExt:\n    1 invalid SYN cookies received\n    4 TCP sockets finished time wait in fast timer\n    159 delayed acks sent\n    1 delayed acks further delayed because of locked socket\n    Quick ack mode was activated 2963 times\n    4093 packet headers predicted\n    1512 acknowledgments not containing data payload received\n    4541 predicted acknowledgments\n    TCPBacklogCoalesce: 332\n    TCPDSACKOldSent: 2963\n    TCPDSACKRecv: 12\n    1 connections reset due to unexpected data\n    TCPRcvCoalesce: 15\n    TCPAutoCorking: 19\n    TCPSynRetrans: 6\n    TCPOrigDataSent: 5864\n    TCPDelivered: 5875\n    TCPDSACKRecvSegs: 6\n    TCPDSACKIgnoredDubious: 6\nIpExt:\n    InMcastPkts: 10573\n    OutMcastPkts: 79\n    InBcastPkts: 2426\n    InOctets: 3511081\n    OutOctets: 554438\n    InMcastOctets: 2575015\n    OutMcastOctets: 10135\n    InBcastOctets: 185172\n    InNoECTPkts: 21843<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Per visualizzare la tabella di routing IP del kernel, usa:&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>$ netstat -r<\/em><\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ netstat -r<br>Kernel IP routing table<br>Destination Gateway Genmask Flags MSS Window irtt Iface<br>default fritz.box 0.0.0.0 UG 0 0 0 ens160<br>default fritz.box 0.0.0.0 UG 0 0 0 ens160<br>192.168.188.0 0.0.0.0 255.255.255.0 U 0 0 0 ens160<br>192.168.188.0 0.0.0.0 255.255.255.0 U 0 0 0 ens160<br>fritz.box 0.0.0.0 255.255.255.255 UH 0 0 0 ens160<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Per ottenere una versione pi\u00f9 strutturata dell&#8217;output utilizzare l&#8217;opzione e insieme a i.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ netstat -ei\nKernel Interface table\nens160: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500\n        inet 192.168.188.46  netmask 255.255.255.0  broadcast 192.168.188.255\n        inet6 fd00::20c:29ff:fe41:9a8b  prefixlen 64  scopeid 0x0&lt;global&gt;\n        inet6 fe80::20c:29ff:fe41:9a8b  prefixlen 64  scopeid 0x20&lt;link&gt;\n        inet6 fd00::8f72:19d3:4358:3147  prefixlen 64  scopeid 0x0&lt;global&gt;\n        ether 00:0c:29:41:9a:8b  txqueuelen 1000  (Ethernet)\n        RX packets 37404  bytes 6261850 (5.9 MiB)\n        RX errors 0  dropped 6402  overruns 0  frame 0\n        TX packets 7496  bytes 695560 (679.2 KiB)\n        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0\n\nlo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536\n        inet 127.0.0.1  netmask 255.0.0.0\n        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;\n        loop  txqueuelen 1000  (Local Loopback)\n        RX packets 2861  bytes 252860 (246.9 KiB)\n        RX errors 0  dropped 0  overruns 0  frame 0\n        TX packets 2861  bytes 252860 (246.9 KiB)\n        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0\n\nbitnami@zpxwpress:~$ netstat -g\nIPv6\/IPv4 Group Memberships\nInterface       RefCnt Group\n--------------- ------ ---------------------\nlo              1      224.0.0.251\nlo              1      all-systems.mcast.net\nens160          1      224.0.0.252\nens160          1      224.0.0.251\nens160          1      all-systems.mcast.net\nlo              1      ff02::fb\nlo              1      ip6-allnodes\nlo              1      ff01::1\nens160          1      ff02::fb\nens160          1      ff02::1:ff58:3147\nens160          1      ff02::1:3\nens160          2      ff02::1:ff41:9a8b\nens160          2      ip6-allnodes\nens160          1      ff01::1\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Comando SS<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Il comando ss \u00e8 in grado di mostrare i dettagli sulle connessioni di rete con pi\u00f9 informazioni rispetto al comando netstat ed \u00e8 pi\u00f9 veloce. Il comando netstat legge vari file \/proc per raccogliere informazioni. Tuttavia, questo approccio \u00e8 pi\u00f9 lento quando ci sono molte connessioni da visualizzare.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il comando ss ottiene le sue informazioni direttamente dallo spazio del kernel. Le opzioni utilizzate con i comandi ss sono molto simili a netstat rendendolo una facile sostituzione.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Quindi in questo tutorial vedremo alcuni esempi di come utilizzare il comando ss per controllare le connessioni di rete e le statistiche del socket.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il comando pi\u00f9 semplice \u00e8 quello di elencare tutte le connessioni.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>$ ss | less<\/em><\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process<br>u_str ESTAB 0 0 * 17732 * 16809<br>u_str ESTAB 0 0 * 12835 * 12836<br>u_str ESTAB 0 0 * 11313 * 12539<br>u_str ESTAB 0 0 * 21635 * 21634<br>u_str ESTAB 0 0 \/run\/dbus\/system_bus_socket 13938 * 13937<br>u_str ESTAB 0 0 * 15030 * 13811<br>u_str ESTAB 0 0 \/run\/systemd\/journal\/stdout 16769 * 17714<br>u_str ESTAB 0 0 * 21634 * 21635<br>u_str ESTAB 0 0 * 17674 * 17675<br>u_str ESTAB 0 0 * 17729 * 16808<br>u_str ESTAB 0 0 * 12843 * 11723<br>u_str ESTAB 0 0 * 17613 * 16740<br>u_str ESTAB 0 0 \/run\/systemd\/journal\/stdout 12930 * 12929<br>u_str ESTAB 0 0 \/run\/systemd\/journal\/stdout 16929 * 17832<br>u_str ESTAB 0 0 * 12836 * 12835<br>u_str ESTAB 0 0 * 21560 * 21559<br>u_str ESTAB 0 0 * 15060 * 0<br>u_str ESTAB 0 0 \/run\/user\/1000\/bus 16809 * 17732<br>u_str ESTAB 0 0 * 12804 * 11722<br>u_str ESTAB 0 0 \/run\/dbus\/system_bus_socket 17675 * 17674<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Per visualizzare solo le connessioni tcp o udp o unix utilizzare l&#8217;opzione t, u o x.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong><em>$ ss -t<\/em><\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ ss -t<br>State Recv-Q Send-Q Local Address:Port Peer Address:Port Process<br>ESTAB 0 36 192.168.188.74:2203 192.168.188.175:14354<br>ESTAB 0 0 192.168.188.74:2203 192.168.188.175:14358<br>bitnami@zpxwpress:~$<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Per impostazione predefinita, l&#8217;opzione &#8220;t&#8221; da sola riporter\u00e0 solo le connessioni &#8220;stabilite&#8221; o CONNESSE&#8221;. Non segnala i socket tcp che sono &#8220;LISTENING&#8221;. Usa l&#8217;opzione &#8216;-a&#8217; insieme a t, per segnalarli tutti in una volta.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Elenca tutte le connessioni udp:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>$ ss -ua<\/em><\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ ss -ua<br>State Recv-Q Send-Q Local Address:Port Peer Address:Port Process<br>UNCONN 0 0 0.0.0.0:631 0.0.0.0:*<br>UNCONN 0 0 0.0.0.0:mdns 0.0.0.0:*<br>UNCONN 0 0 0.0.0.0:5355 0.0.0.0:*<br>UNCONN 0 0 0.0.0.0:10000 0.0.0.0:*<br>UNCONN 0 0 127.0.0.53%lo:domain 0.0.0.0:*<br>ESTAB 0 0 192.168.188.46%ens160:bootpc 192.168.188.1:bootps<br>UNCONN 0 0 192.168.188.74%ens160:bootpc 0.0.0.0:*<br>UNCONN 0 0 0.0.0.0:39269 0.0.0.0:*<br>UNCONN 0 0 [fe80::20c:29ff:fe41:9a8b]%ens160:dhcpv6-client [::]:*<br>UNCONN 0 0 [fe80::20c:29ff:fe41:9a8b]%ens160:dhcpv6-client [::]:*<br>UNCONN 0 0 [::]:51961 [::]:*<br>UNCONN 0 0 [::]:mdns [::]:*<br>UNCONN 0 0 [::]:5355 [::]:*<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Per ottenere l&#8217;output pi\u00f9 velocemente, utilizzare l&#8217;opzione &#8220;n&#8221; per impedire a ss di risolvere gli indirizzi IP in nomi host. Ma questo impedir\u00e0 anche la risoluzione dei numeri di porta.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong><em>$ ss - nt<\/em><\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ ss -nt\nState              Recv-Q            Send-Q       Local Address:Port            Peer Address:Port               Process\nESTAB              0                 36           192.168.188.74:2203           192.168.188.175:14354\nESTAB              0                 0            192.168.188.74:2203           192.168.188.175:14358<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Questo comando elencher\u00e0 tutti i socket di ascolto. Ad esempio, il server Web Apache apre una connessione socket sulla porta 80 per ascoltare le connessioni in entrata.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong><em>$ ss -ltn<\/em><\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ ss -ltn\nState                Recv-Q               Send-Q                             Local Address:Port                              Peer Address:Port              Process\nLISTEN               0                    80                                     127.0.0.1:3306                                   0.0.0.0:*\nLISTEN               0                    4096                                     0.0.0.0:5355                                   0.0.0.0:*\nLISTEN               0                    4096                                     0.0.0.0:10000                                  0.0.0.0:*\nLISTEN               0                    4096                               127.0.0.53%lo:53                                     0.0.0.0:*\nLISTEN               0                    128                                    127.0.0.1:631                                    0.0.0.0:*\nLISTEN               0                    128                                    127.0.0.1:6010                                   0.0.0.0:*\nLISTEN               0                    128                                      0.0.0.0:2203                                   0.0.0.0:*\nLISTEN               0                    4096                                        [::]:5355                                      [::]:*\nLISTEN               0                    511                                            *:80                                           *:*\nLISTEN               0                    128                                        [::1]:631                                       [::]:*\nLISTEN               0                    128                                        [::1]:6010                                      [::]:*\nLISTEN               0                    511                                            *:443                                          *:*\nLISTEN               0                    128                                         [::]:2203                                      [::]:*\nbitnami@zpxwpress:~$<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Per visualizzare solo le connessioni socket IPv4 utilizzare l&#8217;opzione &#8216;-f inet&#8217; o &#8216;-4&#8217;.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong><em>$ ss -tl -f inet<\/em><\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ ss -tl -f inet\nState               Recv-Q               Send-Q                             Local Address:Port                               Peer Address:Port              Process\nLISTEN              0                    80                                     127.0.0.1:mysql                                   0.0.0.0:*\nLISTEN              0                    4096                                     0.0.0.0:5355                                    0.0.0.0:*\nLISTEN              0                    4096                                     0.0.0.0:webmin                                  0.0.0.0:*\nLISTEN              0                    4096                               127.0.0.53%lo:domain                                  0.0.0.0:*\nLISTEN              0                    128                                    127.0.0.1:ipp                                     0.0.0.0:*\nLISTEN              0                    128                                    127.0.0.1:6010                                    0.0.0.0:*\nLISTEN              0                    128                                      0.0.0.0:2203                                    0.0.0.0:*<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Per visualizzare solo le connessioni IPv6 utilizzare l&#8217;opzione &#8216;-f inet6&#8217; o &#8216;-6&#8217;.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>$ ss -tl6<\/em><\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ ss -tl6\nState                Recv-Q               Send-Q                             Local Address:Port                              Peer Address:Port              Process\nLISTEN               0                    4096                                        [::]:5355                                      [::]:*\nLISTEN               0                    511                                            *:http                                         *:*\nLISTEN               0                    128                                        [::1]:ipp                                       [::]:*\nLISTEN               0                    128                                        [::1]:6010                                      [::]:*\nLISTEN               0                    511                                            *:https                                        *:*\nLISTEN               0                    128                                         [::]:2203                                      [::]:*\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Il comando ss supporta filtri che possono essere utilizzati per visualizzare solo connessioni specifiche. L&#8217;espressione del filtro deve avere il suffisso dopo tutte le opzioni. Il comando ss accetta il filtro nel seguente formato.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong><em>$ ss [ OPTIONS ] [ STATE-FILTER ] [ ADDRESS-FILTER ]<\/em><\/strong><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Ora ecco alcuni esempi di come filtrare le connessioni socket in base agli stati del socket.<br>Per visualizzare tutti i socket TCP IPv4 che si trovano nello stato &#8220;connesso&#8221;.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bitnami@zpxwpress:~$ ss -t4 state established\nRecv-Q                 Send-Q                                  Local Address:Port                                     Peer Address:Port                  Process\n0                      36                                     192.168.188.74:2203                                  192.168.188.175:14354\n0                      0                                      192.168.188.74:2203                                  192.168.188.175:14358\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">I possibili stati sono: <br>1. established <br>2. syn-sent <br>3. syn-recv <br>4. fin-wait-1 <br>5. fin-wait-2 <br>6. time-wait <br>7. closed <br>8. close-wait <br>9. last-ack <br>10. closing <br>11. all &#8211; All of the above states <br>12. connected &#8211; All the states except for listen and closed <br>13. synchronized &#8211; All the connected states except for syn-sent <br>14. bucket &#8211; Show states, which are maintained as minisockets, i.e. time-wait and syn-recv. <br>15. big &#8211; Opposite to bucket state.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Da notare che molti stati come syn-sent, syn-recv non mostrerebbero alcun socket per la maggior parte del tempo, poich\u00e9 i socket rimangono in tali stati per un tempo molto breve. Sarebbe ideale utilizzare il comando watch per rilevare tali stati di presa in tempo reale. Ecco un esempio:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong><em>$ watch -n 1 \"ss -t4 state syn-sent\"<\/em><\/strong><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Dopo aver eseguito il comando precedente, prova ad aprire alcuni siti Web in un browser o scarica qualcosa da un URL. Immediatamente dovresti vedere le connessioni socket apparire nell&#8217;output, ma per un breve periodo.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Every 1.0s: ss -t4 state syn-sent                   Tue Apr  1 10:07:33 2014\nRecv-Q Send-Q           Local Address:Port               Peer Address:Port\n0      1                  192.168.1.2:55089            202.79.210.121:https\n0      1                  192.168.1.2:33733             203.84.220.80:https\n0      1                  192.168.1.2:36240             106.10.198.33:https<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Oltre agli stati del socket tcp, il comando ss supporta anche il filtraggio in base all&#8217;indirizzo e al numero di porta del socket. Gli esempi seguenti lo dimostrano.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Visualizza tutte le connessioni socket con porta di origine o di destinazione di ssh(2204).<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong><em>$ ss -at '( dport = :2204 or sport = :2204 )'<\/em><\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">zipixel@zpxc321:~$ ss -at '( dport = :2204 or sport = :2204 )'\nState               Recv-Q              Send-Q                            Local Address:Port                                Peer Address:Port               Process\nLISTEN              0                   128                                     0.0.0.0:2204                                     0.0.0.0:*\nESTAB               0                   48                               192.168.188.35:2204                             192.168.188.175:13756\nESTAB               0                   0                                192.168.188.35:2204                             192.168.188.175:13792\nLISTEN              0                   128                                        [::]:2204                                        [::]:*\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Socket con porta di destinazione 443 o 80<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong><em>$ ss -nt '( dst :443 or dst :80 )'<\/em><\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong><em># Filter by address\n$ ss -nt dst 74.125.236.178\n<\/em><\/strong>\n<strong><em># CIDR notation is also supported\n$ ss -nt dst 74.125.236.178\/16\n<\/em><\/strong>\n<strong><em># Address and Port combined\n$ ss -nt dst 74.125.236.178:80<\/em><\/strong><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Le porte possono anche essere filtrate con opzioni dport \/ sport. I numeri di porta devono essere preceduti da un &#8220;:&#8221;.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong><em>$ ss -nt dport = :80<\/em><\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong><em># source address is 127.0.0.1 and source port is greater than 5000\n$ ss -nt src 127.0.0.1 sport gt :5000<\/em><\/strong>\n<strong><em>\n# local smtp (port 25) sockets\n$ sudo ss -ntlp sport eq :smtp\n<\/em><\/strong>\n<strong><em># port numbers greater than 25\n$ sudo ss -nt sport gt :1024\n<\/em><\/strong>\n<strong><em># sockets with remote ports less than 100\n$ sudo ss -nt dport \\&lt; :100\n<\/em><\/strong>\n<strong><em># connections to remote port 80\n$ sudo ss -nt state connected dport = :80<\/em><\/strong><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusione<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Il comando <strong>netstat<\/strong> \u00e8 un&#8217;utilit\u00e0 di rete disponibile sui sistemi operativi Unix e Windows che consente di visualizzare le connessioni di rete in corso, le porte in ascolto e le statistiche di rete.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il comando <strong>ss <\/strong>(Socket Statistics) \u00e8 un&#8217;alternativa pi\u00f9 recente a <strong>netstat<\/strong>, disponibile sui sistemi operativi Linux e Unix-like. <strong>ss <\/strong>fornisce informazioni pi\u00f9 dettagliate sullo stato delle connessioni di rete.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">le principali differenze tra i comandi possono riassumersi:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong><em>Output formattato<\/em><\/strong>: netstat mostra l&#8217;output formattato in una tabella, mentre ss utilizza un output meno formale, ma pi\u00f9 dettagliato.<\/li>\n\n\n\n<li><strong><em>Velocit\u00e0<\/em><\/strong>: ss \u00e8 notevolmente pi\u00f9 veloce di <code>netstat<\/code> in quanto \u00e8 stato progettato per essere pi\u00f9 efficiente e utilizza meno risorse di sistema.<\/li>\n\n\n\n<li><strong><em>Mostrare tutti gli stati di connessione<\/em><\/strong>: ss mostra tutti gli stati di connessione, mentre <code>netstat<\/code> mostra solo alcune connessioni.<\/li>\n\n\n\n<li><strong><em>Disponibilit\u00e0<\/em><\/strong>: netstat \u00e8 disponibile sia su sistemi Unix-like che su Windows, mentre ss \u00e8 disponibile solo su sistemi Unix-like.<\/li>\n\n\n\n<li><strong><em>Funzionalit\u00e0<\/em><\/strong>: ss fornisce una maggiore quantit\u00e0 di informazioni rispetto a netstat, ad esempio, \u00e8 in grado di visualizzare i timer delle connessioni, i socket UNIX, le connessioni multicast, gli spazi dei nomi delle reti e altro ancora.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">In sintesi, <strong>ss <\/strong>\u00e8 un&#8217;alternativa pi\u00f9 efficiente e dettagliata a <strong>netstat<\/strong>, ma non \u00e8 disponibile su Windows. Se hai bisogno di informazioni pi\u00f9 dettagliate sulle connessioni di rete su un sistema Unix-like, ti consiglio di utilizzare il comando <code>ss<\/code>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Una&nbsp;porta&nbsp;\u00e8 un endpoint di comunicazione. All&#8217;interno di un sistema operativo, una porta viene aperta o chiusa per pacchetti di dati per processi o servizi di rete specifici. In genere, le [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":3844,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_links_to":"","_links_to_target":""},"categories":[5,86,110,93,96,95],"tags":[129,106,132,130,131],"class_list":["post-3815","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-gcportal-links","category-guide-tutorial","category-informatica","category-linux","category-network","category-unix","tag-netstat","tag-network","tag-ss","tag-tcp","tag-udp"],"_links":{"self":[{"href":"https:\/\/www.gcportal.com\/wordpress\/wp-json\/wp\/v2\/posts\/3815","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.gcportal.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gcportal.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gcportal.com\/wordpress\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gcportal.com\/wordpress\/wp-json\/wp\/v2\/comments?post=3815"}],"version-history":[{"count":40,"href":"https:\/\/www.gcportal.com\/wordpress\/wp-json\/wp\/v2\/posts\/3815\/revisions"}],"predecessor-version":[{"id":3865,"href":"https:\/\/www.gcportal.com\/wordpress\/wp-json\/wp\/v2\/posts\/3815\/revisions\/3865"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.gcportal.com\/wordpress\/wp-json\/wp\/v2\/media\/3844"}],"wp:attachment":[{"href":"https:\/\/www.gcportal.com\/wordpress\/wp-json\/wp\/v2\/media?parent=3815"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gcportal.com\/wordpress\/wp-json\/wp\/v2\/categories?post=3815"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gcportal.com\/wordpress\/wp-json\/wp\/v2\/tags?post=3815"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}