SSH je zkratka pro Secure Shell a je to protokol, který se používá k bezpečnému přístupu ke vzdálenému serveru v místní síti nebo internetu za účelem konfigurace, správy, monitorování a odstraňování problémů atd.
V tomto článku se chystám diskutovat o tom, jak můžete spravovat vzdálený server Linux pomocí SSH.
Na svých počítačích Debian 10 jsem provedl všechny příkazy.
Předpoklady
Musíte mít následující.
- Dva počítače Debian 10 s právy root.
- IP adresa, uživatelské jméno a heslo vzdáleného počítače.
- Připojení k internetu na obou počítačích.
Jak nainstalovat otevřený server SSH?
Jakmile ve své infrastruktuře nastavíte nový počítač se systémem Linux, je důležité jej připravit na vzdálený přístup. Proto je povinné nainstalovat otevřené ssh na vzdálený server nebo počítač, ke kterému se pokoušíte přistupovat.
Před instalací otevřeného serveru SSH spusťte následující příkaz k aktualizaci úložiště.
apt-get update
Počkejte na dokončení operace.
Po aktualizaci úložiště spusťte následující příkaz s právy root a nainstalujte otevřený server SSH.
apt-get install openssh-server
Až budete požádáni o potvrzení, stiskněte na klávesnici „y“ a počkejte na dokončení instalace. Dokončení může trvat několik minut.
Konfigurace nastavení serveru SSH
Jakmile je Open SSh nainstalován na straně serveru, můžeme upravit jeho základní konfigurační nastavení. Otevřete terminál a spusťte následující příkaz s právy root.
nano /etc/ssh/sshd_config
Následuje ukázkový výstup.
Ve výše uvedeném souboru můžete změnit různé parametry.
Ve výchozím nastavení SSH naslouchá na portu 22. Můžete jej změnit na požadovaný port. Můžete také změnit maximální počet relací (MaxSessions), které lze se serverem současně navázat, výchozí hodnota je 10.
Změna portu SSH serveru
Jak jsme probrali, server ve výchozím nastavení naslouchá na portu 22. Pokud chcete nakonfigurovat server tak, aby naslouchal konkrétnímu portu, zde je postup.
Otevřete terminál a spusťte následující příkaz s právy root.
nano /etc/ssh/sshd_config
Soubor by měl být otevřen, jak je znázorněno na výše uvedeném snímku obrazovky.
Najděte Port 22 nebo #Port 22 a zadejte požadované číslo portu bez znaku #.
Doporučuje se používat číslo portu mezi 1024 – 65535, protože 0-1023 portů je vyhrazeno pro konkrétní služby.
Předpokládejme, že přiřadíte 2222, zapište následující do konfiguračního souboru SSH.
Port 2222
Níže je ukázkový výstup po změně čísla portu.
Restartujte službu SSH provedením následujícího příkazu na terminálu.
service ssh restart
Povolení přihlášení root na serveru SSH
Ve výchozím nastavení se z bezpečnostních důvodů nemůžete přímo přihlásit k serveru SSH s právy root. Pokud chcete povolit toto přihlášení, musíte provést změny v konfiguračním souboru serveru SSH.
Otevřete terminál a spusťte následující příkaz s právy root pro otevření konfiguračního souboru.
nano /etc/ssh/sshd_config
Přidejte následující řádek do ověřovacího bloku,
PermitRootLogin ano
Níže je ukázkový výstup po provedení změn v konfiguračním souboru.
Restartujte službu SSH spuštěním následujícího příkazu na terminálu s právy root.
service ssh restart
Snížení počtu neúspěšných pokusů o přihlášení k serveru SSH
Ve výchozím nastavení můžete provést 6 pokusů o přihlášení k serveru SSH. Jakmile hodnota dosáhne poloviny 6, zaprotokolují se další selhání přihlášení. Pokud chcete tuto hodnotu změnit, musíte upravit parametr MaxAuthTries v konfiguračním souboru serveru SSH.
Otevřete terminál a spusťte následující příkaz s právy root.
Přidejte následující řádek (předpokládejme, že chcete nastavit tuto hodnotu na 1) do bloku Authentication.
MaxAuthTries 1
Níže je ukázkový výstup po provedení změn v souboru.
Restartujte službu SSH spuštěním následujícího příkazu na terminálu s právy root.
service ssh restart
Níže je ukázkový výstup.
Po jediném selhání přihlášení se zobrazí příliš mnoho zpráv o selhání ověření, jak je znázorněno na následujícím snímku obrazovky.
Vynucení serveru SSH, aby naslouchal konkrétním IP adresám
Ve výchozím nastavení SSH server naslouchá všem IP adresám přiřazeným k vašemu SSH serveru. Provedením změn v konfiguračním souboru však můžete vynutit, aby váš SSH server naslouchal konkrétním IP adresám. Zde je postup.
Předpokládejme, že mám ke svému rozhraní přiřazeny dvě adresy IP (10.1.1.2 a 10.1.1.3), jak je znázorněno na následujícím snímku obrazovky. Chci vynutit, aby můj server naslouchal IP adrese 10.1.1.2.
Otevřete terminál a spusťte následující příkaz s právy root k otevření konfiguračního souboru SSH.
nano /etc/ssh/sshd_config
Přidejte následující řádek do horní části souboru,
ListenAddress 10.1.1.2
Níže je ukázkový výstup po provedení změn v konfiguračním souboru.
Restartujte službu SSH provedením následujícího příkazu na terminálu.
restart služby ssh
Povolení nebo zakázání přihlášení konkrétních uživatelů nebo skupin k serveru SSH
Ve výchozím nastavení se každý uživatel může vzdáleně přihlásit k serveru SSH. Můžete však povolit nebo zakázat konkrétním uživatelům nebo skupinám přihlášení k serveru SSH.
Otevřete terminál a spusťte následující příkaz s právy root k otevření konfiguračního souboru serveru SSH.
nano /etc/ssh/sshd_config
Níže je ukázkový výstup.
Předpokládejme, že chcete povolit vzdálenému přihlášení k serveru SSH pouze uživateli „tony“. Žádný jiný uživatel se nebude moci přihlásit k serveru SSH. Pokud máte více uživatelů, měli by být odděleni mezerou.
Přidejte následující řádek do konfiguračního souboru serveru SSH.
AllowUsers tony
Níže je ukázkový konfigurační soubor po přidání řádku,
Restartujte službu SSH spuštěním následujícího příkazu s oprávněními root na terminálu
service ssh restart
Podobně, pokud chcete všem uživatelům povolit vzdálené připojení k serveru SSH, ale chcete jednomu nebo více zakázat, přidejte do konfiguračního souboru serveru následující řádky. Uživatelé by měli být odděleni příkazem. Předpokládejme, že chci zakázat pouze uživatele „tony“, přidejte následující řádek do konfiguračního souboru serveru.
DenyUsers tony
Níže je ukázkový konfigurační soubor po přidání výše uvedeného řádku.
Restartujte službu SSH spuštěním následujícího příkazu s právy root na terminálu.
service ssh restart
Podobně můžete povolit a zakázat skupinám uživatelů přihlášení k serveru SSH přidáním následujících řádků do konfiguračního souboru.
AllowGroups <groupname>
nebo
DenyGroups <groupname>
Pokud máte více skupin, které chcete povolit nebo zakázat, můžete je oddělit mezerou.
Kombinace povolení a zamítnutí se zpracovává v následujícím pořadí.
DenyUsers, AllowUsers, DenyGroups a nakonec AllowGroups
Změna doby odkladu přihlášení
Ve výchozím nastavení máte po SSH 2 minuty na přihlášení ke vzdálenému serveru. Pokud se nemůžete přihlásit ke vzdálenému serveru do 2 minut, SSH se odpojí. Zde je návod, jak můžete změnit dobu odkladu přihlášení.
Otevřete terminál a spusťte následující příkaz s právy root k otevření konfiguračního souboru serveru.
nano /etc/ssh/sshd_config
Níže je ukázkový výstup.
Najděte následující řádek,
#LoginGraceTime 2m
Nahraďte tento řádek požadovanou dobou odkladu, řekněme 1 minutu. Celý řádek by měl být,
LoginGraceTime 1m
Níže je ukázkový konfigurační soubor po provedení změn.
Zavřete soubor a restartujte službu SSH zadáním příkazu file.
service ssh restart
Jak nainstalovat klienta OpenSSH
Počítač Debian 10, který se chystá přistupovat ke vzdálenému počítači nebo serveru, se nazývá klient a musíme na něj nainstalovat ‚otevřeného klienta SSH‘.
Otevřete terminál a spusťte následující příkaz pro aktualizaci úložiště.
apt-get update
Počkejte na dokončení operace.
Jakmile je úložiště aktualizováno, spusťte následující příkaz k instalaci otevřeného klienta SSH.
apt-get install openssh-client
Až budete požádáni o potvrzení, stiskněte Y na klávesnici. Instalace může trvat několik minut, proto buďte trpěliví.
Provedením následujícího příkazu na klientovi i serveru potvrďte, že služba SSH běží.
Jakmile budeme mít SSH spuštěné na klientovi i serveru na vzdáleném počítači, můžeme se pustit do vzdálené správy.
Připojování ke vzdálenému serveru Debian 10 pomocí SSH
Abyste se mohli připojit ke vzdálenému počítači Debian 10, potřebujete jeho IP adresu, uživatelské jméno a heslo.
Následuje úplná syntaxe příkazu, pokud váš server SSH naslouchá na výchozím portu 22.
ssh <[e-mail chráněný]>
Budete vyzváni k zadání uživatelského hesla, pomocí klávesnice a stisknutím klávesy Enter.
Předpokládejme, že uživatel je tony a IP adresa vzdáleného stroje je 10.1.1.2. Spusťte na terminálu následující příkaz.
ssh [email protected]
Níže je ukázkový výstup.
Nyní byste měli být bezpečně připojeni, jak je znázorněno na výše uvedeném snímku obrazovky.
Pokud však váš server SSH naslouchá na jiném portu (předpokládejme 2222). Úplná syntaxe příkazu by měla být následující.
ssh -p <číslo portu> [chráněný e-mail] adresa
Předpokládejme, že uživatel je tony a IP adresa vzdáleného stroje je 10.1.1.2. Spusťte na terminálu následující příkaz.
ssh -p 2222 [email protected]
Závěr
To byl návod na vzdálenou správu linuxového serveru pomocí SSH. Doufám, že se vám to líbilo.