at_ito
2018年2月28日 17時27分
Armadilloでは、標準のソフトウェアの状態ではWebサーバー等のサーバーが動作しています。最終的にシステムを作る際には、セキュリティ上の観点から、可能な限り不要なTCP/UDPポートは使用しないようにしておくのが良いです。
そのため、ここではArmadillo上でどのTCP/UDPポートが接続待ちをしているかを確認する方法を紹介します。
開いているポートの確認
以下のようにnetstatコマンドを使用して、開いているポートを確認することができます。
[armadillo ~]# netstat -antu Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN tcp6 0 0 :::80 :::* LISTEN tcp6 0 0 :::22 :::* LISTEN tcp6 0 0 ::1:25 :::* LISTEN udp 0 0 0.0.0.0:33404 0.0.0.0:* udp 0 0 0.0.0.0:5353 0.0.0.0:* udp 0 0 0.0.0.0:18738 0.0.0.0:* udp 0 0 0.0.0.0:68 0.0.0.0:* udp6 0 0 :::11127 :::* udp6 0 0 :::36313 :::* udp6 0 0 :::5353 :::*
上記結果では、80, 22, 25ポートが開いている状態であることが確認できます。
該当のポートをどのプロセスが開いているか確認
該当のポートをどのプロセスが開いているかはlsofコマンドにて確認できます。
Armadilloには標準でインストールされていませんので、まずは以下のコマンドでインストールしてください。
[armadillo ~]# apt-get install lsof
例として80番ポートを使用しているプロセスを確認する場合は、以下のようになります。
[armadillo ~]# lsof -i:80 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME lighttpd 530 www-data 4u IPv4 8713 0t0 TCP *:http (LISTEN) lighttpd 530 www-data 5u IPv6 8714 0t0 TCP *:http (LISTEN)
上記コマンド結果からlighttpdが80番ポートを開いていることが確認できます。