Ubuntu オープンポート

Ubuntu オープンポート

最近、2 台の Ubuntu Server マシンをインストールしたのですが、マシンで開いているポートを見つけたいと思っています。

私のマシン(Ubuntu 11.10)から実行するとnmap、両方のサーバーが

135/tcp  filtered msrpc
4444/tcp filtered krb524
4662/tcp filtered edonkey
5000/tcp filtered upnp
5631/tcp filtered pcanywheredata

これらのポートを開いたことはありません。LAMP と SAMBA のみをインストールしました。なぜこれらのポートが開いているのですか?

開いているポートの完全なリストは次のとおりです。

22/tcp  open  ssh
25/tcp  open  smtp
53/tcp  open  domain
80/tcp  open  http
110/tcp open  pop3
135/tcp  filtered msrpc
139/tcp  open     netbios-ssn
143/tcp  open     imap
445/tcp  open     microsoft-ds
993/tcp  open     imaps
995/tcp  open     pop3s
4444/tcp filtered krb524
4662/tcp filtered edonkey
5000/tcp filtered upnp
5631/tcp filtered pcanywheredata

問題は、なぜこれらのポートが開いているのかということです: 135/tcp filtered msrpc、、4444/tcp filtered krb5244662/tcp filtered edonkey5000/tcp filtered upnp5631/tcp filtered pcanywheredataこれらのポートを開いたことはありません。LAMP と SAMBA のみをインストールしました。

そのリストは安全そうですか?

答え1

/etc/servicesというファイルからポートのリストを取得できます。

cat /etc/services | grep 137 (example)

Sambaが通信するために開く必要があるポート

netbios-ns - 137 # NETBIOS Name Service

netbios-dgm - 138 # NETBIOS Datagram Service

netbios-ssn - 139 # NETBIOS session service

microsoft-ds - 445 # if you are using Active Directory

このコマンドを実行するnetstat -anltp | grep "LISTEN"

FTP、SSH、MySQL を実行する一般的な Web サーバーの出力は次のようになります。

tcp     0   0 127.0.0.1:3306    0.0.0.0:*   LISTEN   21432/mysqld
tcp     0   0 0.0.0.0:80        0.0.0.0:*   LISTEN   4090/apache2
tcp     0   0 0.0.0.0:22        0.0.0.0:*   LISTEN   7213/sshd
tcp6    0   0 :::21             :::*        LISTEN   19023/proftpd
tcp6    0   0 :::22             :::*        LISTEN   7234/sshd

答え2

あなたの質問は非常に広範囲であり、「安全」は相対的です。

サーバーをインストールしてポートを開くと、常に潜在的な脆弱性が存在します。

サーバー (ssh、samba) をインストールし、サーバーを起動すると (通常は起動時にデフォルトで起動します)、ポートが開きます。

各サーバー (ssh、samba、http) では、セキュリティを強化するために構成を変更できます。

ssh の場合、これにはキーの使用 (およびパスワードの無効化)、tcpwrapper、ファイアウォールなどが含まれます。

ファイアウォールを使用する場合、3つの戦略があります

1) すべてを許可し、不正な IP をブラックリストに登録します。この例としては、http があります。通常、http をパブリック サーバーとして実行し、すべての IP を許可し、サーバーにスパムを送信する IP をブラックリストに登録します。

2) すべてを拒否し、ホワイト リストを許可します。例としては、ssh が挙げられます。

3) 制限。接続速度や ping 数/秒を制限する場合があります。

それで始められたら、ぜひ見てください

https://help.ubuntu.com/11.10/serverguide/C/index.html

https://help.ubuntu.com/community/セキュリティ

または、特定のサーバーに関する具体的な質問をしてください。

答え3

「フィルタリング」は、必ずしもターゲット ホスト上のポートが開いていることを意味するわけではありません。

実際のところ、それは何の意味もないかもしれません。

たとえば、実行している場所nmapとターゲットの間にファイアウォールがあり、そのファイアウォールがポート 5000 をアクティブにフィルタリングしている場合、5000 はリストに「フィルタリング済み」として表示され、ターゲット ホストはそのポートへのトラフィックを一切確認しません。そのため、ターゲットでポートが開いているかどうかはまったく関係なくなります。

サーバー上の開いているポートの確定リストについては、次を試してください。

sudo netstat -lnp --tcp --udp

-l : only show listening ports
-n : don't bother looking up DNS hostnames
-p : show which processes have the port open
--tcp : show tcp ports
--udp : show udp ports

および を省略することもできますが--tcp--udpその場合、ネットワーク経由でアクセスできない無関係なローカル ファイル システム ソケット情報が大量に取得されます。

sudo正しく動作するためには が必要です。そうしないと、ユーザーが所有していないプロセスに対して-pのみ印刷されます。-

答え4

netstatとは異なり、 はデフォルトでインストールされなくなったためlsof、すぐに使用できるオプションを追加しようと思いました。

sudo lsof -nP -iTCP -sTCP:LISTEN

関連情報