私のシステムのポートの競合を確認しようとしたときに、多くのオンラインサイトで以下を使用することを提案しました。/etc/サービスまたはSSトンネルポート情報を見る
私は気づいた/etc/サービスさまざまな情報が提供されています-春夏シーズンほとんどの場合。
出力比較例
sudo cat /etc/services
ftp 21/udp
ftp 21/sctp
ssh 22/tcp
ssh 22/udp
ssh 22/sctp
telnet 23/tcp
telnet 23/udp
smtp 25/tcp
比較的
ss -tunl
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
udp UNCONN 0 0 0.0.0.0:5353 0.0.0.0:*
udp UNCONN 0 0 0.0.0.0:46670 0.0.0.0:*
udp UNCONN 0 0 [::]:5353 [::]:*
udp UNCONN 0 0 [::]:38838 [::]:*
はい/etc/サービス静的データファイルは指示としてのみ使用でき、システムの実際のポート設定を実際に反映することはできません。
どこ春夏シーズンプログラムは、このポートデータと特定のポートを変更/削除する方法を収集します。春夏シーズンそれとも別のプログラムですか?
答え1
このファイルは/etc/services
ポートの番号 - 名前マッピングのみを提供し、ポートssにリストされているものとは何の関係もありません。また、このファイルの名前はポートの一般的な使用であり、システムの実際のポート使用ではありません。十分な権限を持つすべてのプログラムは、任意の目的ですべてのポートを開くことができるからです。既定では、/etc/services
IANA 割り当て番号レジストリのサブセットです。
ss
システムで使用されているポートが一覧表示されます。 ssにリストされている場合は使用中です。ルートとして実行すると、特定のオープンポートを持つss -p
プロセスを一覧表示する必要があります。
使用しているポートは直接変更できません。あなたがすべきことは、sudo ss -p
どのプログラムがそのポートを使用しているかを見つけてそれを終了することです。または、逆にssにポートがリストされていませんが、それが必要な場合は、そのポートを使用してサービスを開始します。
ポートが作成および削除される可能性があるのは一般的な誤解です。ポートは数字だけで、常に存在し、削除または作成することはできません。使用中または使用中ではありません。
答え2
これは2つの異なるものです。この/etc/services
ファイルは、サービスが通常使用するポートを示しています。https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers。
ss
TCPポート80および443でリッスンしているWebサーバーなど、着信接続を待っている間にコンピューターで現在アクティブなサービスを表示するコマンド。また、WebブラウザやSSHクライアントを介してWeb / Sshサーバーに接続するなど、現在開いている発信接続も表示します。
ss
netstat
これは廃止され、置き換えられた以前のコマンドと似ていますss
。