Výchozí port pro SSH v systémech Linux je 22. Existuje několik důvodů, proč jej můžete chtít změnit na jiné číslo. Pokud více serverů sdílí stejnou IP adresu (například za konfigurací NAT), nemůžete je obvykle nechat běžet SSH na stejném portu a očekávat, že k nim budete mít přístup z vnějšku sítě.
Druhým důležitým důvodem je bezpečnost. Změna portu SSH by spadala pod „zabezpečení skrze zastření“, což znamená, že se technicky nezvýšilo zabezpečení, ale port SSH byl zastřen a není pro útočníky tak snadno přístupný. V praxi to znamená, že tisíce robotů, kteří na internetu hledají otevřené servery SSH, mají mnohem menší šanci najít ten váš.
V tomto článku vás krok za krokem provedeme změnou výchozího portu SSH v systémech Ubuntu Linux a CentOS Linux. Vzhledem k tomu, že Ubuntu je založeno na Debianu, můžete stejné pokyny použít i v jiných systémech založených na Debianu, například v Linux Mintu. CentOS je založen na Red Hatu, takže jeho pokyny lze rozšířit i na Fedoru a další podobné distribuce Linuxu.
V tomto návodu se naučíte:
- Jak změnit port SSH v Ubuntu a CentOS Linuxu
Kategorie | Požadavky, Konvence nebo použité verze softwaru |
---|---|
Systém | Ubuntu Linux a CentOS Linux |
Software | OpenSSH |
Ostatní | Privilegovaný přístup k systému Linux jako root nebo prostřednictvím příkazu sudo . |
Příkazy | # – vyžaduje, aby dané linuxové příkazy byly spuštěny s právy roota buď přímo jako uživatel root, nebo pomocí příkazu sudo $ – vyžaduje, aby dané linuxové příkazy byly spuštěny jako běžné neprivilegovaným uživatelem |
Změna portu SSH v Ubuntu nebo CentOS
Přihlaste se k odběru RSS a NEWSLETTERU a dostávejte nejnovější zprávy o Linuxu, pracovních nabídek, kariérních rad a výukových programů.
Otevřete terminál příkazového řádku a postupujte podle níže uvedených kroků pro konfiguraci portu SSH v Ubuntu a dalších systémech založených na Debianu, stejně jako v CentOS a dalších systémech založených na Red Hatu.
- Začněte otevřením konfiguračního souboru
/etc/ssh/sshd_config
pomocí nano nebo preferovaného textového editoru.$ sudo nano /etc/ssh/sshd_config
- Vyhledejte řádek
#Port 22
. Tento řádek budeme muset odkomentovat a změnit číslo na požadované číslo portu. Pro tento příklad přepneme číslo portu na2222
.From:#Port 22To:Port 2222
- Uložení provedených změn v tomto souboru a ukončení. Dokončete mé znovunačtení služby sshd.
$ sudo systemctl reload sshd
- Abyste se ujistili, že vše funguje, můžete vyzkoušet SSH na novém portu. Budete muset použít volbu
-p
, abyste klientovi nařídili používat jiný port než výchozí 22.$ ssh -p 2222 user@localhost
Dodatečná konfigurace pro Ubuntu
Ubuntu má ve výchozím nastavení nainstalovaný firewall UFW. Pokud používáte bránu firewall UFW a potřebujete povolit provoz na nový port, použijte následující příkaz. Případně se podívejte na našeho úplného průvodce používáním brány firewall UFW.
$ sudo ufw allow 2222/tcp
Dodatečná konfigurace pro CentOS
CentOS ve výchozím nastavení nepoužívá bránu firewall UFW, ale pokud ji náhodou máte nainstalovanou, nezapomeňte použít také příkaz UFW uvedený výše.
CentOS ve výchozím nastavení používá SELinux (Security Enhanced Linux module) a firewalld. Abychom mohli povolit přístup SSH na nově nakonfigurovaném portu, budeme muset přidat výjimku.
Závěrečné myšlenky
V tomto návodu jsme si ukázali, jak změnit výchozí port SSH v Ubuntu a CentOS a podobných distribucích. Dodržení těchto kroků vám nabídne určité zabezpečení skrze zastínění, a když už nic jiného, omezí pokusy o vniknutí, které neustále podnikají roboti po celém světě.
.