e_p_iのプログラム日記 このページをアンテナに追加

2015-03-28

[][]Linuxで開いているポート及びそのポートを使用しているプロセスとユーザを取得する方法 15:31 Linuxで開いているポート及びそのポートを使用しているプロセスとユーザを取得する方法 - e_p_iのプログラム日記 を含むブックマーク はてなブックマーク - Linuxで開いているポート及びそのポートを使用しているプロセスとユーザを取得する方法 - e_p_iのプログラム日記 Linuxで開いているポート及びそのポートを使用しているプロセスとユーザを取得する方法 - e_p_iのプログラム日記 のブックマークコメント

おっぱいこわい!id:e_p_iです。

今日はLinuxで開いているポート及びそのポートを使用しているプロセスとユーザを取得する方法について書いてみます。

何を使うか?言ってしまうとnetstatです。netstatで以下のオプションを使います。

-n, --numeric            don't resolve names
-e, --extend             display other/more information
-p, --programs           display PID/Program name for sockets
-a, --all                display all sockets (default: connected)
-t|--tcp
-u|--udp

打つときは

$ sudo netstat -epantu

-epantu いいパンツ!いいパンツでお願いします!

これを打つと

$ sudo netstat -epantu
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       User       Inode      PID/Program name    
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      0          88830337   16314/unbound       
tcp        0      0 127.0.0.1:8118          0.0.0.0:*               LISTEN      73         202016222  19809/privoxy       
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      0          19926      906/cupsd           
tcp        0      0 127.0.0.1:3128          0.0.0.0:*               LISTEN      0          228976246  19804/(squid-1)     
tcp        0      0 127.0.0.1:14777         0.0.0.0:*               LISTEN      1000       235107954  18569/uget-gtk      
tcp        0      0 127.0.0.1:8953          0.0.0.0:*               LISTEN      0          88830339   16314/unbound       
tcp        0      0 127.0.0.1:8123          0.0.0.0:*               LISTEN      987        228976243  4568/polipo         
...

の様にずらっと表示がされますが、ここでUser列の番号は/etc/passwdに記述されているuidと対応しているので、誰がどのプロセスでどのポートを使っているのかが分かるようになっています。

そんなわけで、唱えよ!いいパンツ!

これで環境調査が捗りそうですね。