ssコマンドの使用
Linuxシステムのssコマンドは、SocketStatisticsの略語です。
ssコマンドを使用してソケット統計を取得できます。表示されるコンテンツはnetstatに似ています。ただし、ssの利点は、TCPと接続ステータスに関するより詳細な情報を表示できることと、netstatよりも高速であることです。サーバー上のソケット接続の数が非常に多くなると、netstatコマンドを使用する場合でも、直接cat / proc / net / tcpを使用する場合でも、実行速度は非常に遅くなります。ssコマンドは、TCPプロトコルスタックでtcp_diagを使用します。tcp_diagは統計を分析するためのモジュールであり、Linuxカーネルで直接情報を取得できるため、ssコマンドのパフォーマンスが大幅に向上します。言い換えれば、ssコマンドは効率的で正確です。
ssコマンドは、netstatと同様に、次のようなコマンドの組み合わせをサポートします。
1.1。ホストがリッスンしているポートを表示する
ss -tnl
[root@centos7 mnt]# ss -tlnr
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:111 *:*
LISTEN 0 5 centos7:53 *:*
LISTEN 0 128 *:22 *:*
LISTEN 0 128 localhost:631 *:*
LISTEN 0 100 localhost:25 *:*
LISTEN 0 128 localhost:6010 *:*
LISTEN 0 128 :::111 :::*
LISTEN 0 128 :::80 :::*
LISTEN 0 128 :::22 :::*
LISTEN 0 128 localhost:631 :::*
LISTEN 0 100 localhost:25 :::*
LISTEN 0 128 localhost:6010 :::*
ローカルマシンがtcpポート111、53、22、631、25、6010、80、25を開いていることがわかります。これは、smtp service-25、ssh-22、dns-53、http-80、xshell-631です。 cupsd-6010、docker-111のブリッジネットワークカード
2.2。-rオプションを使用してIPとポート番号を解析します
ss -tlr
[root@centos7 mnt]# ss -tlr
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:rpc.portmapper *:*
LISTEN 0 5 centos7:domain *:*
LISTEN 0 128 *:ssh *:*
LISTEN 0 128 localhost:ipp *:*
LISTEN 0 100 localhost:smtp *:*
LISTEN 0 128 localhost:x11-ssh-offset *:*
LISTEN 0 128 :::rpc.portmapper :::*
LISTEN 0 128 :::http :::*
LISTEN 0 128 :::ssh :::*
LISTEN 0 128 localhost:ipp :::*
LISTEN 0 100 localhost:smtp :::*
LISTEN 0 128 localhost:x11-ssh-offset :::*
3.3。-pオプションを使用して、ポートでリッスンしているプログラムの名前を表示します
ss -tlp
4.4。grepを使用して、リスニングポートをさらにフィルタリングすることもできます
ss -tlp | grep ssh
[root@centos7 mnt]# ss -tlp | grep ssh
LISTEN 0 128 *:ssh *:* users:(("sshd",pid=1015,fd=3))
LISTEN 0 128 127.0.0.1:x11-ssh-offset *:* users:(("sshd",pid=1839,fd=9))
LISTEN 0 128 :::ssh :::* users:(("sshd",pid=1015,fd=4))
LISTEN 0 128 ::1:x11-ssh-offset :::* users:(("sshd",pid=1839,fd=8))
5.5。確立されたTCP接続を表示する
ss -tna
estab行は、マシン192.168.0.2:49899がssh経由で192.168.0.17に接続されており、マシン17がデフォルトのsshポートとして使用されていることを示しています。
[root@centos7 mnt]# ss -tan
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:111 *:*
LISTEN 0 5 192.168.122.1:53 *:*
LISTEN 0 128 *:22 *:*
LISTEN 0 128 127.0.0.1:631 *:*
LISTEN 0 100 127.0.0.1:25 *:*
LISTEN 0 128 127.0.0.1:6010 *:*
ESTAB 0 52 192.168.0.17:22 192.168.0.2:49899
LISTEN 0 128 :::111 :::*
LISTEN 0 128 :::80 :::*
LISTEN 0 128 :::22 :::*
LISTEN 0 128 ::1:631 :::*
LISTEN 0 100 ::1:25 :::*
LISTEN 0 128 ::1:6010 :::*