今回は、Linuxにおけるポート確認方法についてご紹介していきます。
サーバープロセスを起動すると、そのプロセスは特定のポートを開いて接続を待ち受けます。ポートが開いたままになっていると、悪意のある第三者からそのポートを使用されて、データを抜き取られたり、攻撃されたりします。余計なサービスが起動しており不要なポートが開いている状態は、セキュリティリスクが高まります。
定期的に余計なポートが開いていないか確認が必要です。
【netstat / ss】
コマンド
$ netstat -atup
$ ss -atup
接続待ちをしているポートの確認方法です。オプションの[-t]がTCPの待ちポート、[-u]がUDPの待ちポートを示しています。
【lsof】
コマンド
$ lsof -i (ポート番号) # デフォルトだとポート一覧を表示
プロセスが使用しているポートを確認します。プロセスが利用しているポートを確認することは、悪意のあるプログラムが実行していないかなどを調べ、セキュリティ状況を確認するために重要になります。
【nmap】
コマンド
$ nmap (対象ホスト)
このコマンドは、相手方の対象ホストに対して開いているポートを確認するコマンドです。自分の管理外のサーバーなどにこのコマンドを実行すると、ハッキング行為をみなされる場合があるので、注意して使用してください。
【fuser】
コマンド
$ fuser -n udp/tcp (ポート番号)
このコマンドは、ファイスやソケットを使用しているプロセスの特定をするコマンドです。オプション[-n]とTCP/UDPを指定すると、そのポートが使用しているプロセスが特定できます。
以上、Linuxにおけるポート確認方法についてでした。
ご参考いただけると幸いです。
■参考資料
https://www.linuxmaster.jp/linux_skill/2009/02/linux-4.html
https://kazmax.zpp.jp/cmd/f/fuser.1.html