{"id":673,"date":"2012-02-01T08:53:32","date_gmt":"2012-02-01T13:53:32","guid":{"rendered":"http:\/\/www.xavignu.com\/?p=673"},"modified":"2012-02-01T08:56:52","modified_gmt":"2012-02-01T13:56:52","slug":"checking-connections-on-a-particular-service","status":"publish","type":"post","link":"https:\/\/www.xavignu.com\/?p=673","title":{"rendered":"Checking connections on a particular service"},"content":{"rendered":"<p>So lets say you want to see how many established connections we have on a particular port\/service. Most of the people would use <a href=\"http:\/\/en.wikipedia.org\/wiki\/Netstat\" target=\"_blank\">netstat<\/a>, however I prefer <a href=\"http:\/\/www.cyberciti.biz\/files\/ss.html\" target=\"_blank\">ss<\/a>.<\/p>\n<p>On a <a href=\"http:\/\/www.debian.org\" target=\"_blank\">Debian<\/a> based system ss can be installed with the <a href=\"http:\/\/packages.debian.org\/search?keywords=iproute\" target=\"_blank\">iproute<\/a> package.<\/p>\n<pre>user@server: ~ $ sudo dpkg -S `which ss`\r\niproute: \/sbin\/ss\r\nuser@server: ~ $<\/pre>\n<p>On a <a href=\"http:\/\/www.redhat.com\/\" target=\"_blank\">Red Hat<\/a> based system it will be installed with iproute too.<\/p>\n<pre>[user@redhat ~]# sudo rpm -qf `which ss`\r\niproute-2.6.18-11.el5\r\n[user@redhat ~]#<\/pre>\n<p><strong>aptitude install iproute<\/strong> and <strong>yum install iproute<\/strong> will install the package on a Debian and Red Hat system respectively.<\/p>\n<p>Now lets show some examples. Lets say we want to see how many established ssh connections there are.<\/p>\n<pre>[user@redhat ~]# sudo ss -t '( sport = :22 )'\r\nState Recv-Q Send-Q Local Address:Port Peer Address:Port\r\nESTAB 0 0 ::ffff:10.40.7.12:ssh ::ffff:10.16.241.194:56325\r\nESTAB 0 0 ::ffff:10.40.7.12:ssh ::ffff:10.16.241.194:53804\r\nESTAB 0 0 ::ffff:10.40.7.12:ssh ::ffff:10.16.241.194:60486\r\nESTAB 0 0 ::ffff:10.40.7.12:ssh ::ffff:10.14.17.48:37471\r\nESTAB 0 0 ::ffff:10.40.7.12:ssh ::ffff:10.16.241.194:57982\r\nESTAB 0 0 ::ffff:10.40.7.12:ssh ::ffff:10.16.241.194:57525\r\nESTAB 0 304 ::ffff:10.40.7.9:ssh ::ffff:10.14.17.22:46376\r\nESTAB 0 0 ::ffff:10.40.7.9:ssh ::ffff:10.16.241.28:42654\r\nESTAB 0 0 ::ffff:10.40.7.9:ssh ::ffff:10.16.241.12:36276\r\nESTAB 0 0 ::ffff:10.40.7.9:ssh ::ffff:10.16.241.8:57936\r\nESTAB 0 0 ::ffff:10.40.7.9:ssh ::ffff:10.16.241.28:42855\r\n[user@redhat ~]#<\/pre>\n<p>-t displays all TCP sockets<\/p>\n<p>You can also substitute the port number by the name of the service that runs in it by default.<\/p>\n<pre>user@debian:~$ sudo ss -t '( sport = :mysql )'\r\nState Recv-Q Send-Q Local Address:Port Peer Address:Port\r\nESTAB 0 0 192.168.140.121:mysql 192.168.137.234:35512\r\nuser@debian:~$<\/pre>\n<p>To see all opened ports on the server use the -a option.<\/p>\n<pre>\r\nxavi@linode2:~$ sudo ss -t -a\r\nState       Recv-Q Send-Q                   Local Address:Port       Peer Address:Port   \r\nLISTEN      0      5                                    *:nrpe              *:*       \r\nLISTEN      0      50                     192.168.140.121:mysql             *:*       \r\nLISTEN      0      8                                    *:pop3              *:*       \r\nLISTEN      0      8                                    *:imap2             *:*       \r\nLISTEN      0      128                                 :::www              :::*       \r\nLISTEN      0      128                                  *:ssh               *:*       \r\nLISTEN      0      128                                 :::ssh              :::*       \r\nLISTEN      0      100                                  *:smtp              *:*       \r\nLISTEN      0      128                                 :::https            :::*       \r\nTIME-WAIT   0      0               ::ffff:173.255.231.252:www          ::ffff:79.158.142.28:55032   \r\nESTAB       0      0                      192.168.140.121:mysql               192.168.137.234:35512  \r\nESTAB       0      48                     173.255.231.252:ssh                 79.158.142.28:48395   \r\nTIME-WAIT   0      0               ::ffff:173.255.231.252:www          ::ffff:79.158.142.28:55033   \r\nTIME-WAIT   0      0               ::ffff:173.255.231.252:www          ::ffff:173.255.231.252:37223 \r\nxavi@linode2:~$\r\n<\/pre>\n<p>I believe ss command is simpler to use but less known than netstat. Enjoy.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>So lets say you want to see how many established connections we have on a particular port\/service. Most of the people would use netstat, however I prefer ss. On a Debian based system ss can be installed with the iproute package. user@server: ~ $ sudo dpkg -S `which ss` iproute: \/sbin\/ss user@server: ~ $ On [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true},"categories":[3],"tags":[56,22,6,61,70],"jetpack_featured_media_url":"","jetpack_publicize_connections":[],"jetpack_shortlink":"https:\/\/wp.me\/pTQgt-aR","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.xavignu.com\/index.php?rest_route=\/wp\/v2\/posts\/673"}],"collection":[{"href":"https:\/\/www.xavignu.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.xavignu.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.xavignu.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.xavignu.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=673"}],"version-history":[{"count":25,"href":"https:\/\/www.xavignu.com\/index.php?rest_route=\/wp\/v2\/posts\/673\/revisions"}],"predecessor-version":[{"id":699,"href":"https:\/\/www.xavignu.com\/index.php?rest_route=\/wp\/v2\/posts\/673\/revisions\/699"}],"wp:attachment":[{"href":"https:\/\/www.xavignu.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=673"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.xavignu.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=673"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.xavignu.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=673"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}