Nejlepší způsoby zabezpečení serveru SSH

Oct 15, 2025
Soukromí a bezpečnost
Eny Setiyowati / Shutterstock.com

Zabezpečte připojení SSH systému Linux, abyste ochránili svůj systém a data. Správci systému i domácí uživatelé potřebují vytvrdit a zabezpečit počítače orientované na internet, ale SSH může být komplikované. Zde je deset snadných rychlých výher, které vám pomohou chránit váš server SSH.

Základy zabezpečení SSH

SSH znamená Zabezpečte Shell . Název „SSH“ se používá zaměnitelně a znamená buď samotný protokol SSH, nebo softwarové nástroje, které umožňují správcům systému a uživatelům provádět bezpečná připojení ke vzdáleným počítačům pomocí tohoto protokolu.

Protokol SSH je šifrovaný protokol navržený k zajištění bezpečného připojení přes nezabezpečenou síť, jako je internet. SSH v Linuxu je postaven na přenosné verzi OpenSSH projekt. Je implementován v a klasický model klient-server , přičemž server SSH přijímá připojení od klientů SSH. Klient se používá k připojení k serveru ak Zobrazit relace ke vzdálenému uživateli. Server přijímá připojení a vykonává zasedání.

Ve své výchozí konfiguraci bude server SSH naslouchat příchozím připojením na Transmission Control Protocol ( TCP ) port 22. Protože se jedná o standardizovaný, známý přístav , je cílem pro herci ohrožení a škodlivé roboty .

Aktéři hrozeb spouštějí roboty, kteří skenují řadu IP adres a hledají otevřené porty. Porty se poté prozkoumají, aby se zjistilo, zda existují chyby zabezpečení, které lze zneužít. Myšlení: „Jsem v bezpečí, na které mají padouchy zaměřit větší a lepší cíle než já,“ je falešné uvažování. Boti nevybírají cíle na základě žádných zásluh; metodicky hledají systémy, které by mohli narušit.

Pokud jste nezajistili svůj systém, nominujete se za oběť.

Bezpečnostní tření

Bezpečnostní tření je podráždění - jakéhokoli stupně -, které uživatelé a ostatní zažijí při implementaci bezpečnostních opatření. Máme dlouhé vzpomínky a pamatujeme si, že jsme zavedli nové uživatele do počítačového systému a slyšeli jsme je zděšeným hlasem, zda opravdu musel zadat heslo pokaždé přihlásili se do sálového počítače. To - pro ně - bylo bezpečnostní tření.

(Mimochodem, vynález hesla je připsán na Fernando J. Corbató , další postava v panteonu počítačových vědců, jejichž společná práce přispěla k okolnostem, které vedly k narození Unix .)

Zavedení bezpečnostních opatření obvykle pro někoho znamená určitou tření. Majitelé podniků to musí zaplatit. Uživatelé počítačů možná budou muset změnit své známé postupy nebo si zapamatovat jinou sadu podrobností ověřování nebo přidat další kroky k úspěšnému připojení. Správci systému budou mít další práci na implementaci a údržbě nových bezpečnostních opatření.

Kalení a uzamčení operačního systému podobného Linuxu nebo Unixu se může velmi rychle zapojit. To, co zde představujeme, je sada snadno implementovatelných kroků, které zlepší zabezpečení vašeho počítače bez nutnosti použití aplikací třetích stran a bez nutnosti procházet bránu firewall.

Tyto kroky nejsou posledním slovem v zabezpečení SSH, ale posunou vás daleko od výchozího nastavení a bez přílišného tření.

Použijte protokol SSH verze 2

V roce 2006 byl protokol SSH aktualizován z verze 1 na verze 2 . Byl to významný upgrade. Bylo provedeno tolik změn a vylepšení, zejména v oblasti šifrování a zabezpečení, že verze 2 není zpětně kompatibilní s verzí 1. Chcete-li zabránit připojení od klientů verze 1, můžete určit, že váš počítač bude přijímat připojení pouze od klientů verze 2.

Chcete-li tak učinit, upravte / etc / ssh / sshd_config soubor. V tomto článku toho budeme hodně dělat. Kdykoli potřebujete upravit tento soubor, je to příkaz, který se má použít:

sudo gedit / etc / ssh / sshd_config

Přidejte řádek:

Protokol 2

A uložte soubor. Chystáme se restartovat proces démona SSH. V tomto článku to opět hodně provedeme. Toto je příkaz, který se použije v každém případě:

sudo systemctl restart sshd

Pojďme zkontrolovat, zda je v platnosti naše nové nastavení. Přeskočíme na jiný stroj a pokusíme se SSH na náš testovací stroj. A my použijeme -1 (protokol 1) možnost vynutit ssh příkaz k použití protokolu verze 1.

ssh -1 [email protected]

Skvělé, náš požadavek na připojení je zamítnut. Zajistíme, že se můžeme stále připojit pomocí protokolu 2. Použijeme -2 (protokol 2) možnost prokázat skutečnost.

ssh -2 [email protected]

Skutečnost, že server SSH požaduje naše heslo, je pozitivní známkou toho, že bylo navázáno připojení a že se serverem komunikujete. Protože moderní klienti SSH budou ve výchozím nastavení používat protokol 2, nemusíme specifikovat protokol 2, pokud je náš klient aktuální.

ssh [email protected]

A naše spojení je přijato. Odmítají se tedy pouze slabší a méně zabezpečená připojení protokolu 1.

Vyhněte se portu 22

Port 22 je standardní port pro připojení SSH. Pokud použijete jiný port, přidá to vašemu systému trochu bezpečí prostřednictvím neznáma. Zabezpečení pomocí temnoty se nikdy nepovažuje za skutečné bezpečnostní opatření a já jsem se proti němu v dalších článcích bránil. Ve skutečnosti někteří chytřejší útoční roboti zkoumají všechny otevřené porty a určují, které služby nosí, místo aby se spoléhali na jednoduchý vyhledávací seznam portů a předpokládali, že poskytují obvyklé služby. Ale použití nestandardního portu může pomoci se snížením šumu a špatného provozu na portu 22.

Chcete-li nakonfigurovat nestandardní port, upravte konfigurační soubor SSH:

sudo gedit / etc / ssh / sshd_config

Odstraňte hash # ze začátku řádku „Port“ a nahraďte „22“ číslem portu podle vašeho výběru. Uložte konfigurační soubor a restartujte démona SSH:

sudo systemctl restart sshd

Podívejme se, jaký účinek to mělo. Na jiném počítači použijeme ssh příkaz pro připojení k našemu serveru. The ssh výchozí příkaz pro použití portu 22:

ssh [email protected]

Naše spojení je odmítnuto. Zkusme to znovu a zadejte port 470 pomocí možnosti -p (port):

ssh -p 479 [email protected]

Naše spojení je přijato.

Filtrování připojení pomocí obalovačů TCP

TCP Wrappers je snadno pochopitelný seznam řízení přístupu . Umožňuje vám vyloučit a povolit připojení na základě charakteristik požadavku na připojení, jako je IP adresa nebo název hostitele. Obálky TCP by se měly používat ve spojení se správně nakonfigurovanou bránou firewall, a nikoli namísto ní. V našem konkrétním scénáři můžeme věci značně utáhnout pomocí obálek TCP.

Obaly TCP byly již nainstalovány na stroji Ubuntu 18.04 LTS použitém k prozkoumání tohoto článku. Muselo být nainstalováno na Manjaro 18.10 a Fedora 30.

Chcete-li nainstalovat na Fedoru, použijte tento příkaz:

sudo yum nainstalovat tcp_wrappers

Chcete-li nainstalovat na Manjaro, použijte tento příkaz:

sudo pacman -Syu tcp-wrappery

Jedná se o dva soubory. Jeden obsahuje seznam povolených a druhý seznam odmítnutých. Upravte seznam odepření pomocí:

sudo gedit /etc/hosts.deny

Tím se otevře gedit editor s načteným souborem odepření.

Musíte přidat řádek:

ALL: ALL

A uložte soubor. To blokuje veškerý přístup, který nebyl autorizován. Nyní musíme autorizovat připojení, která chcete přijmout. Chcete-li to provést, musíte upravit soubor povolení:

sudo gedit /etc/hosts.allow

Tím se otevře gedit editor s načteným souborem povolení.

Do názvu démona SSH jsme přidali, SSHD A IP adresa počítače, kterému umožníme připojení. Uložte soubor a podívejme se, zda platí omezení a oprávnění.

Nejprve se pokusíme připojit z počítače, který není v hosts.allow soubor:

Připojení je odmítnuto. Nyní se pokusíme připojit ze zařízení na IP adrese 192.168.4.23:

Naše spojení je přijato.

Náš příklad je trochu brutální - připojit se může pouze jeden počítač. Obálky TCP jsou poměrně univerzální a flexibilnější než toto. Podporuje to názvy hostitelů, zástupné znaky a masky podsítě přijímat připojení z rozsahů IP adres. Je vám doporučeno podívejte se na manuálovou stránku .

Odmítněte žádosti o připojení bez hesel

Ačkoli je to špatný postup, správce systému Linux může vytvořit uživatelský účet bez hesla. To znamená, že žádosti o vzdálené připojení z tohoto účtu nebudou mít žádné heslo, které by bylo možné zkontrolovat. Tato připojení budou přijata, ale nebudou ověřena.

Výchozí nastavení pro SSH přijímá žádosti o připojení bez hesel. Můžeme to velmi snadno změnit a zajistit, aby všechna připojení byla ověřena.

Musíme upravit váš konfigurační soubor SSH:

sudo gedit / etc / ssh / sshd_config

Procházejte soubor, dokud neuvidíte řádek, který čte s „#PermitEmptyPasswords no.“ Odstraňte hash # od začátku řádku a uložte soubor. Restartujte démona SSH:

sudo systemctl restart sshd

Místo hesel používejte klíče SSH

Klíče SSH poskytují bezpečný způsob přihlášení k serveru SSH. Hesla lze uhodnout, prolomit nebo hrubou silou . Klíče SSH nejsou pro tyto typy útoků otevřené.

Když generujete klíče SSH, vytvoříte pár klíčů. Jeden je veřejný klíč a druhý je soukromý klíč. Veřejný klíč je nainstalován na serverech, ke kterým se chcete připojit. Soukromý klíč, jak už název napovídá, je ve vašem počítači udržován zabezpečený.

Klíče SSH vám umožňují provádět připojení bez hesla, která jsou - neintuitivně - bezpečnější než připojení používající ověřování pomocí hesla.

Když zadáte požadavek na připojení, vzdálený počítač použije svou kopii veřejného klíče k vytvoření šifrované zprávy, která se odešle zpět do vašeho počítače. Protože byl zašifrován veřejným klíčem, může jej váš počítač pomocí soukromého klíče zašifrovat.

Váš počítač poté ze zprávy extrahuje některé informace, zejména ID relace, zašifruje je a odešle je zpět na server. Pokud jej server dokáže dešifrovat pomocí své kopie veřejného klíče a pokud se informace ve zprávě shodují s tím, co vám poslal server, je potvrzeno, že vaše připojení pochází od vás.

Zde probíhá připojení k serveru na 192.168.4.11 uživatelem s klíči SSH. Všimněte si, že nejsou vyzváni k zadání hesla.

ssh [email protected]

Klíče SSH si článek zaslouží samy pro sebe. Máme pro vás jeden. Tady je jak vytvořit a nainstalovat klíče SSH .

PŘÍBUZNÝ: Jak vytvořit a nainstalovat klíče SSH z prostředí Linux

Zakázat ověřování hesla úplně

Logickým rozšířením používání klíčů SSH je samozřejmě to, že pokud jsou všichni vzdálení uživatelé nuceni je adoptovat, můžete ověřování hesla úplně vypnout.

Musíme upravit váš konfigurační soubor SSH:

sudo gedit / etc / ssh / sshd_config

Procházejte souborem, dokud neuvidíte řádek, který začíná slovy „#PasswordAuthentication ano.“ Odstraňte hash # od začátku řádku změňte „ano“ na „ne“ a uložte soubor. Restartujte démona SSH:

sudo systemctl restart sshd

Zakázat přeposílání X11

Předávání X11 umožňuje vzdáleným uživatelům spouštět grafické aplikace z vašeho serveru přes relaci SSH. V rukou aktéra ohrožení nebo uživatele se zlými úmysly může rozhraní GUI usnadnit jejich zhoubné účely.

Standardní mantrou v kybernetické bezpečnosti je, že pokud nemáte bonafidní důvod, proč ji zapnout, vypněte ji. Uděláme to úpravou konfiguračního souboru SSH:

sudo gedit / etc / ssh / sshd_config

Procházejte souborem, dokud neuvidíte řádek, který začíná řetězcem „# X11Forwarding no.“ Odstraňte hash # od začátku řádku a uložte soubor. Restartujte démona SSH:

sudo systemctl restart sshd

Nastavte hodnotu časového limitu nečinnosti

Pokud je k vašemu počítači vytvořeno připojení SSH a po určitou dobu na něm neprobíhá žádná aktivita, může to představovat bezpečnostní riziko. Existuje šance, že uživatel opustil svůj stůl a je zaneprázdněn jinde. Kdokoli jiný, kdo projde kolem svého stolu, se může posadit a začít používat svůj počítač a prostřednictvím SSH váš počítač.

Je mnohem bezpečnější stanovit časový limit. Připojení SSH bude zrušeno, pokud neaktivní období odpovídá časovému limitu. Ještě jednou upravíme váš konfigurační soubor SSH:

sudo gedit / etc / ssh / sshd_config

Procházejte soubor, dokud neuvidíte řádek, který začíná „#ClientAliveInterval 0“ Odebrat hash # od začátku řádku změňte číslici 0 na požadovanou hodnotu. Použili jsme 300 sekund, což je 5 minut. Uložte soubor a restartujte démona SSH:

sudo systemctl restart sshd

Stanovte limit pro pokusy o heslo

Definování limitu počtu pokusů o ověření může pomoci zmařit hádání hesla a útoky hrubou silou. Po určeném počtu požadavků na ověření bude uživatel odpojen od serveru SSH. Ve výchozím nastavení není žádný limit. Ale to se rychle napraví.

Opět potřebujeme upravit váš konfigurační soubor SSH:

sudo gedit / etc / ssh / sshd_config

Procházejte souborem, dokud neuvidíte řádek, který začíná „#MaxAuthTries 0“. Odstraňte hash # od začátku řádku změňte číslici 0 na požadovanou hodnotu. Zde jsme použili 3. Po provedení změn soubor uložte a restartujte démona SSH:

sudo systemctl restart sshd

Můžeme to otestovat pokusem o připojení a záměrným zadáním nesprávného hesla.

Všimněte si, že číslo MaxAuthTries se zdálo být o jeden větší než počet pokusů, které uživatel povolil. Po dvou špatných pokusech je náš testovací uživatel odpojen. To bylo s MaxAuthTries nastaveným na tři.

Zakázat rootovací přihlášení

Je špatnou praxí přihlásit se jako root na počítači se systémem Linux. Měli byste se přihlásit jako normální uživatel a použít sudo provádět akce, které vyžadují oprávnění root. Ještě více byste neměli dovolit rootovi přihlásit se na váš server SSH. Připojení by měli mít povoleni pouze běžní uživatelé. Pokud potřebují provést administrativní úlohu, měli by ji použít sudo také. Pokud jste nuceni povolit přihlášení uživatele root, můžete ho přinutit alespoň k použití klíčů SSH.

Konečně budeme muset upravit váš konfigurační soubor SSH:

sudo gedit / etc / ssh / sshd_config

Procházejte soubor, dokud neuvidíte řádek, který začíná řetězcem „#PermitRootLogin prohibit-password“ Odebrat hash # od začátku řádku.

  • Pokud chcete zabránit rootu v přihlašování, nahraďte „prohibit-password“ slovem „no“.
  • Pokud se chystáte povolit root přihlášení, ale přinutit je používat klíče SSH, ponechte na místě „prohibit-password“.

Uložte změny a restartujte démona SSH:

sudo systemctl restart sshd

Konečný krok

Samozřejmě, pokud nepotřebujete, aby na vašem počítači běžel SSH, zkontrolujte, zda je deaktivován.

sudo systemctl stop sshd
sudo systemctl vypnout sshd

Pokud neotevřete okno, nikdo dovnitř nemůže vlézt.

.vstupní obsah .vstup do zápatí

The Best Ways To Secure Your SSH Server

How To Secure Linux SSH Server

How To Secure And Protect SSH Server

How To Secure A Server

Fail2ban Tutorial | How To Secure Your Server

How To Secure A Linux Server With UFW, SSH Keygen, Fail2ban & Two Factor Authentication

🔒 Securing SSH Server: Configuration

Beginners Guide To SSH


Soukromí a bezpečnost - Nejoblíbenější články

Jak odebrat viry a malware ve vašem počítači se systémem Windows

Soukromí a bezpečnost Nov 12, 2024

Ať už jste viděli zprávu, že byl detekován virus, nebo se váš počítač zdá být pomalý a nespolehlivý, budete chtít ve svém počítači vyhledat malware a odstranit v..


Jak odvolat přístup k aplikacím třetích stran ze služby Soundcloud

Soukromí a bezpečnost Sep 20, 2025

SoundCloud, alternativní platforma pro zveřejňování a prodej hudby a dalšího zvukového obsahu, nabízí API, které umožňuje dalším webům a aplikacím přístup k jeho ..


Co je DNS a mám použít jiný server DNS?

Soukromí a bezpečnost Jul 3, 2025

Věděli jste, že můžete být připojeni k facebook.com - a vidět facebook.com v adresním řádku vašeho prohlížeče - i když ve skutečnosti nejste připojeni ke skutečn�..


Jak zašifrovat telefon Android (a proč byste možná chtěli)

Soukromí a bezpečnost Jul 28, 2025

Google zavedl šifrování celého zařízení zpět v Android Gingerbread (2.3.x), ale od té doby prošlo několika dramatickými změnami. U některých telefonů vyšší tříd..


Jak resetovat Amazon Fire TV

Soukromí a bezpečnost Jul 3, 2025

Zatímco Amazon Fire TV a Fire TV Stick obvykle fungují hladce, někdy potřebují rychlý stisk tlačítka reset. Tady je postup, jak vrátit Fire TV do továrního stavu. ..


Jak kopírovat zálohy TWRP Android do počítače pro bezpečné uchování

Soukromí a bezpečnost Feb 16, 2025

NEBEZPEČNÝ OBSAH Zálohy TWRP mohou zachránit vaši slaninu, pokud pokazíte zařízení Android. Pokud vám však v telefonu dojde místo nebo potřebujete vymazat je..


Jak odebrat zařízení z účtu iCloud

Soukromí a bezpečnost Jul 11, 2025

NEBEZPEČNÝ OBSAH Pokud k synchronizaci zařízení Apple používáte iCloud, můžete na svém účtu iCloud v průběhu času nashromáždit spoustu schválených zařízení...


Jak odstranit historii aplikací ve Windows 8

Soukromí a bezpečnost Apr 18, 2025

NEBEZPEČNÝ OBSAH Když zavřete aplikaci Metro v systému Windows 8, bude to spíše pozastaveno, než úplně zavřeno. To nám umožňuje rychle přepínat mezi aplikacemi (my..


Kategorie