GNU/Linux >> Znalost Linux >  >> Linux

Jak zjistit číslo portu služby v Linuxu

Z nějakých důvodů můžete často potřebovat najít názvy a čísla portů. Pokud ano, máte štěstí. Dnes se v tomto krátkém tutoriálu podíváme na nejjednodušší a nejrychlejší způsoby, jak zjistit číslo portu služby v operačním systému Linux. Mohlo by existovat mnoho metod, jak to udělat, ale v současné době znám pouze následující tři metody. Čtěte dál.

Najděte číslo portu služby v Linuxu

Metoda 1 – Použití příkazu Grep:

Chcete-li zjistit výchozí číslo portu dané služby v Linuxu pomocí příkazu grep, stačí spustit:

$ grep <port> /etc/services

Chcete-li například najít výchozí port služby SSH, jednoduše spusťte:

$ grep ssh /etc/services

Je to tak jednoduché. Tento příkaz by měl fungovat na většině distribucí Linuxu. Zde je ukázkový výstup z mého testovacího boxu Arch Linux:

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

Jak můžete vidět na výše uvedeném výstupu, výchozí číslo portu služby SSH je 22.

Pojďme zjistit číslo portu webového serveru Apache. Chcete-li tak učinit, příkaz by byl:

$ 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
[...]

A co číslo FTP portu? To je snadné!

$ 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
[...]

Metoda 2 – Použití příkazu getent

Jak vidíte, výše uvedené příkazy zobrazují všechny názvy a čísla portů pro daný hledaný výraz "ssh", "http" a "ftp". To znamená, že získáte poměrně dlouhý výstup všech názvů portů, které odpovídají danému hledanému výrazu.

Můžete však zúžit výsledek na přesný výstup pomocí příkazu "getent", jak je uvedeno níže:

$ getent services ssh
ssh 22/tcp
$ getent services http
http 80/tcp www www-http
$ getent services ftp
ftp 21/tcp

Pokud neznáte název portu, ale číslo portu, jednoduše nahraďte název portu číslem uvedeným níže:

$ getent services 80
http 80/tcp

Chcete-li zobrazit všechny názvy a čísla portů, jednoduše spusťte:

$ getent services

Doporučené čtení:

  • Jak změnit výchozí port Apache na vlastní port
  • Jak změnit výchozí port FTP na vlastní port
  • Jak změnit výchozí port SSH na vlastní port

Metoda 3 – Použití nástroje Whatportis

Whatportis je jednoduchý python skript používaný k nalezení názvů portů a čísel. Na rozdíl od výše uvedených příkazů tento nástroj zobrazuje výstup v pěkném tabulkovém sloupcovém formátu.

Ujistěte se, že jste nainstalovali správce balíčků PIP. Pokud ne, přejděte na následující odkaz.

  • Jak spravovat balíčky Python pomocí Pip

Jakmile nainstalujete PIP, spusťte následující příkaz pro instalaci nástroje Whatportis.

$ pip install whatportis

Nyní můžete zjistit, který port je spojen se službou, jak je znázorněno níže.

$ whatportis ssh
$ whatportis ftp
$ whatportis http

Ukázkový výstup z mého serveru CentOS 7:

Najděte číslo portu služby v Linuxu

Pokud neznáte přesný název služby, použijte --like příznak pro zobrazení relevantních výsledků.

$ whatportis mysql --like

Výše uvedené příkazy vám pomohly najít port, který je spojen se službou. Můžete také zjistit, která služba je přidružena k číslu portu, jak je uvedeno níže.

$ whatportis 993

Výsledky můžete dokonce zobrazit v JSON formát.

$ whatportis 993 --json

Další podrobnosti najdete v úložišti GitHub.

  • Whatportis GitHub Repository

Související čtení:

  • Jak zjistit, která služba naslouchá na konkrétním portu

A to je zatím vše. Nyní víte, jak najít názvy a čísla portů v Linuxu pomocí tří jednoduchých metod. Pokud znáte nějaké další metody/příkazy, dejte mi vědět v sekci komentářů níže. Tuto příručku podle toho zkontroluji a aktualizuji.


Linux
  1. Jak používat Linuxový příkaz find k hledání souborů

  2. Jak zjistit velikost vyrovnávací paměti soketu linuxu

  3. Jak přenést výsledky 'najít' do mv v Linuxu

  1. Jak zjistit, zda je disk SSD nebo HDD v Linuxu

  2. Linux – Jak najít procesy pomocí sériového portu?

  3. Jak zjistit IP adresu brány v Linuxu

  1. Jak najít všechny řídké soubory v Linuxu

  2. Jak zjistím počet uživatelů online v Linuxu?

  3. Jak mohu spočítat počet složek na jednotce pomocí Linuxu?