いくつかの理由で、ポート名と番号を見つける必要がある場合があります。もしそうなら、あなたは運がいいです。今日、この簡単なチュートリアルでは、Linuxオペレーティングシステムでサービスのポート番号を見つけるための最も簡単で迅速な方法を見ていきます。それを行うには多くの方法がありますが、私は現在、次の3つの方法しか認識していません。続きを読む。
Linuxでサービスのポート番号を見つける
方法1-Grepコマンドの使用:
grepコマンドを使用してLinuxで特定のサービスのデフォルトのポート番号を見つけるには、次のコマンドを実行します。
$ grep <port> /etc/services
たとえば、SSHサービスのデフォルトのポートを見つけるには、次のコマンドを実行します。
$ grep ssh /etc/services
とても簡単です。このコマンドは、ほとんどのLinuxディストリビューションで機能するはずです。 ArchLinuxテストボックスからの出力例は次のとおりです。
ssh 22/tcp ssh 22/udp ssh 22/sctp sshell 614/tcp sshell 614/udp netconf-ssh 830/tcp netconf-ssh 830/udp sdo-ssh 3897/tcp sdo-ssh 3897/udp netconf-ch-ssh 4334/tcp snmpssh 5161/tcp snmpssh-trap 5162/tcp tl1-ssh 6252/tcp tl1-ssh 6252/udp ssh-mgmt 17235/tcp ssh-mgmt 17235/udp
上記の出力からわかるように、SSHサービスのデフォルトのポート番号は22です。
ApacheWebサーバーのポート番号を見つけましょう。そのためのコマンドは次のようになります:
$ grep http /etc/services # http://www.iana.org/assignments/port-numbers http 80/tcp www www-http # WorldWideWeb HTTP http 80/udp www www-http # HyperText Transfer Protocol http 80/sctp # HyperText Transfer Protocol https 443/tcp # http protocol over TLS/SSL https 443/udp # http protocol over TLS/SSL https 443/sctp # http protocol over TLS/SSL gss-http 488/tcp gss-http 488/udp webcache 8080/tcp http-alt # WWW caching service webcache 8080/udp http-alt # WWW caching service [...]
FTPポート番号はどうですか?簡単です!
$ grep ftp /etc/services ftp-data 20/tcp ftp-data 20/udp # 21 is registered to ftp, but also used by fsp ftp 21/tcp ftp 21/udp fsp fspd tftp 69/tcp [...]
方法2-getentコマンドを使用する
ご覧のとおり、上記のコマンドは、指定された検索語「ssh」、「http」、および「ftp」のすべてのポート名と番号を表示します。つまり、指定された検索語に一致するすべてのポート名の出力が非常に長くなります。
ただし、次のように「getent」コマンドを使用して、結果を正確な出力に絞り込むことができます。
$ getent services ssh ssh 22/tcp
$ getent services http http 80/tcp www www-http
$ getent services ftp ftp 21/tcp
ポート名がわからないがポート番号がわからない場合は、ポート名を次のような番号に置き換えてください。
$ getent services 80 http 80/tcp
すべてのポート名と番号を表示するには、次のコマンドを実行します。
$ getent services
推奨される読み物:
- Apacheのデフォルトポートをカスタムポートに変更する方法
- FTPのデフォルトポートをカスタムポートに変更する方法
- SSHのデフォルトポートをカスタムポートに変更する方法
方法3-Whatportisユーティリティを使用する
Whatportis ポートの名前と番号を見つけるために使用される単純なPythonスクリプトです。上記のコマンドとは異なり、このユーティリティは出力を表形式の列形式で表示します。
PIPパッケージマネージャーがインストールされていることを確認してください。そうでない場合は、次のリンクを参照してください。
- Pipを使用してPythonパッケージを管理する方法
PIPをインストールしたら、次のコマンドを実行してWhatportisユーティリティをインストールします。
$ pip install whatportis
これで、以下に示すように、サービスに関連付けられているポートを見つけることができます。
$ whatportis ssh
$ whatportis ftp
$ whatportis http
CentOS 7サーバーからの出力例:
Linuxでサービスのポート番号を見つける
サービスの正確な名前がわからない場合は、-likeを使用してください 関連する結果を表示するためのフラグ。
$ whatportis mysql --like
上記のコマンドは、サービスに関連付けられているポートを見つけるのに役立ちました。以下のように、どのサービスがポート番号に関連付けられているかを確認することもできます。
$ whatportis 993
結果をJSONで表示することもできます フォーマット。
$ whatportis 993 --json
詳細については、GitHubリポジトリを参照してください。
- WhatportisGitHubリポジトリ
関連記事:
- 特定のポートでリッスンしているサービスを見つける方法
そして、今のところこれですべてです。これで、3つの簡単な方法を使用してLinuxでポート名とポート番号を見つける方法がわかりました。他の方法/コマンドをご存知の場合は、下のコメントセクションでお知らせください。それに応じてこのガイドを確認して更新します。