因爲某些緣由,你可能常常須要查找端口名稱和端口號。若是是這樣,你很幸運。今天,在這個簡短的教程中,咱們將看到在 Linux 系統中最簡單、最快捷的查找服務端口號的方法。可能有不少方法能夠作到,但我目前只知道如下三種方法。請繼續閱讀。python
要使用 grep
命令在 Linux 中查找指定服務的默認端口號,只需運行:mysql
$ grep <port> /etc/services
複製代碼
例如,要查找 SSH 服務的默認端口,只需運行:linux
$ grep ssh /etc/services
複製代碼
就這麼簡單。此命令應該適用於大多數 Linux 發行版。如下是個人 Arch Linux 測試機中的示例輸出:git
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。github
讓咱們找到 Apache Web 服務器的端口號。爲此,命令是:web
$ 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 端口號是什麼?這很簡單!sql
$ 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
[...]
複製代碼
如你所見,上面的命令顯示指定搜索詞 「ssh」、「http」 和 「ftp」 的全部端口名稱和數字。這意味着,你將得到與給定搜索詞匹配的全部端口名稱的至關長的輸出。shell
可是,你可使用 getent
命令精確輸出結果,以下所示:json
$ getent services ssh
ssh 22/tcp
$ getent services http
http 80/tcp www www-http
$ getent services ftp
ftp 21/tcp
複製代碼
若是你不知道端口名稱,可是知道端口號,那麼你只需將端口名稱替換爲數字:bash
$ getent services 80
http 80/tcp
複製代碼
要顯示全部端口名稱和端口號,只需運行:
$ getent services
複製代碼
Whatportis 是一個簡單的 Python 腳本,來用於查找端口名稱和端口號。與上述命令不一樣,此程序以漂亮的表格形式輸出。
確保已安裝 pip 包管理器。若是沒有,請參考如下連接。
安裝 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 倉庫。
就是這些了。你如今知道了如何使用三種簡單方法在 Linux 中查找端口名稱和端口號。若是你知道任何其餘方法/命令,請在下面的評論欄告訴我。我會查看並更相應地更新本指南。
via: www.ostechnix.com/how-to-find…