reklama

Jak se autentizovat přes SSH pomocí klíčů místo heselSSH je skvělý způsob, jak získat vzdálený přístup k vašemu počítači. Podobně jako u FTP se můžete připojit přes SSH FTP Co je SSH a jak se liší od FTP [vysvětlení technologie] Přečtěte si více získat bezpečný přístup k souborovému serveru s vaším oblíbeným FTP klient Ovládněte přenosy souborů FTP na všech svých webech pomocí FileZillaVelký počet starých FTP klientů měl problémy s přenosem velkých souborů. Aplikace zaznamenaly obvyklé časové limity, které byste očekávali, když tam počítač sedí 15 až... Přečtěte si více , rychlý přístup ke vzdáleným souborům nebo dokonce připojení síťového disku k počítači. SSH však nabízí více než vzdálený přístup k souborům. Přihlášení přes SSH v Terminálu (nebo pomocí Tmel na Windows) vám poskytuje vzdálený přístup k shellu (koneckonců, SSH je zkratka pro Secure SHell). Takto spravuji svůj mediální server na dálku.

Když vás otevřete porty Co je přesměrování portů a jak mi může pomoci? [MakeUseOf Explains]Pláčete trochu uvnitř, když vám někdo řekne, že je problém s přesměrováním portů, a proto vaše zbrusu nová aplikace nebude fungovat? Váš Xbox vám nedovolí hrát hry, stahování z torrentu odmítá...

instagram viewer
Přečtěte si více na vašem routeru (přesně port 22) můžete přistupovat ke svému SSH serveru nejen z vaší lokální sítě, ale odkudkoli na světě.

Nechcete však riskovat použití slabého hesla pro ověření. Pokud někdo získá přístup k vašemu počítači přes SSH, získá úplný shell přístup. Aby bylo jasno, to není něco, co chceme. Naštěstí je velmi snadné nastavit váš globální server SSH velmi bezpečným způsobem pomocí ověřování založeného na klíči a úplného zakázání ověřování heslem na vašem serveru.

Je to pro mě?

Je lákavé být laxní s osobní bezpečností. Pokud server používáte pro soukromé účely, můžete si myslet, že lidé o vašem serveru prostě nevědí, a proto se ho nebudou snažit hacknout – bezpečnost skrze temnotu. To by bylo a velmi chybný předpoklad. Vzhledem k tomu, že (většina) provozu SSH je přenášena na portu 22, útočníci běžně kontrolují viditelnost portu 22 na náhodných IP adresách, po kterých následuje útok hrubou silou. Toto je jeden ze způsobů, jak jsou botnety vytvořeny pro použití DDOS útoky Co je to DDoS útok? [MakeUseOf Explains]Termín DDoS se míjí, kdykoli se kyberaktivismus hromadně zvedne. Tyto druhy útoků se dostávají do mezinárodních titulků z mnoha důvodů. Problémy, které odstartují tyto DDoS útoky, jsou často kontroverzní nebo vysoce... Přečtěte si více .

Abych to zkrátil: pokud vysíláte svůj SSH server přes internet (tj. port 22), pak ano, je to pro vás.

Myšlenka SSH přihlášení pomocí klíče

Přihlašování SSH založené na klíči závisí na myšlence kryptografie veřejného klíče. Vysvětlování spletitostí by nás zabralo příliš daleko, ale pokusíme se nakreslit jednoduchý obrázek toho, co se děje v zákulisí.

V procesu níže váš klientský počítač vygeneruje dva klíče: veřejný klíč a soukromý klíč. Obecná myšlenka je, že data můžete šifrovat pomocí veřejného klíče, ale dešifrovat je pouze pomocí soukromého klíče. Veřejný klíč vložíme na server a požádáme ho, aby s ním zašifroval veškerou odchozí komunikaci. To zajišťuje, že pouze klienti se soukromým klíčem mohou dešifrovat a číst data.

1. Nainstalujte OpenSSH

Nejprve nastavíme server SSH pomocí OpenSSH. Pokud již máte spuštěný server SSH a chcete vědět, jak nastavit ověřování na základě klíče, můžete tento krok přeskočit. Pomocí svého oblíbeného správce paketů nainstalujte serverovou aplikaci OpenSSH. Nejjednodušší způsob může být stále spustit apt-get příkaz z terminálu.

sudo apt-get install openssh-server

Zadejte své heslo, potvrďte a počkejte minutu, než se dokončí instalace. Gratulujeme, nyní máte server SSH. (To bylo jednoduché!)

ubuntu-install-openssh

Aplikaci můžete použít tak, jak je, nebo upravit /etc/ssh/sshd_config jej nakonfigurovat. Spusťte man sshd_config příkaz v Terminálu, abyste získali další informace. Dalším skvělým zdrojem informací o OpenSSH je relevantní stránka nápovědy Ubuntu.

2. Generovat klíče

Vygenerujeme sadu klíčů. Spusťte následující příkazy (přizpůsobené z OpenSSH/Keys stránka nápovědy Ubuntu).

mkdir ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa

První příkaz vytvoří skrytý adresář „.ssh“ ve vaší domovské složce, druhý příkaz změní přístupová oprávnění složky, zatímco třetí příkaz ve skutečnosti vygeneruje sadu RSA klíče. Nejprve budete požádáni o umístění pro uložení klíčů (nechte prázdné a stisknutím klávesy Enter uložíte do výchozího umístění) a poté o heslo.

rsa-key-generation-mac

Tato přístupová fráze dále zašifruje soukromý klíč, který je uložen ve vašem počítači, a v podstatě vám poskytne více času na zabezpečení serveru SSH, pokud bude váš soukromý klíč někdy odcizen. Ujistěte se, že jste zvolili přístupovou frázi, kterou si zapamatujete, protože ji budete muset zadat, když se pokusíte použít svůj klíč.

3. Přeneste veřejný klíč

Dále budete muset přenést veřejný klíč, který jste vygenerovali v předchozím kroku, do počítače serveru SSH. Pokud váš klientský počítač také používá Linux, lze toho dosáhnout velmi snadno spuštěním níže uvedeného příkazu (nahrazením a pro uživatelské jméno a IP adresu na vašem SSH serveru).

ssh-copy-id @

Pokud váš klient nepodporuje příkaz ssh-copy-id, můžete místo něj použít níže uvedený příkaz. Je to trochu komplikovanější, ale v podstatě dosahuje stejných výsledků.

kočka ~/.ssh/id_rsa.pub | ssh @ "mkdir ~/.ssh; cat >> ~/.ssh/authorized_keys"

Budete požádáni o zadání uživatelského hesla pro SSH server. Pokud se příkazy provedou bez chyb, váš veřejný klíč bude zkopírován na server.

4. Zakázat ověřování hesla

Všimněte si, že váš systém stále není bezpečnější než po prvním kroku. Ačkoli je alespoň jeden klient nakonfigurován pro použití ověřování na základě klíče, stále to ponechává prostor pro ostatní klienty, aby se připojili pomocí hesla. Na závěr úplně deaktivujeme ověřování hesla. Po tomto kroku pouze počítače, které prošly výše uvedeným procesem, se mohou připojit k vašemu serveru SSH.

Chcete-li zakázat ověřování hesla, upravte soubor /etc/ssh/sshd_config soubor ve vašem oblíbeném editoru. Jedním z nejjednodušších způsobů, jak upravit omezený soubor, je opět použití Terminálu. (Přikláním se k nano, ale můžete použít cokoliv, co vám vyhovuje.)

sudo nano /etc/ssh/sshd_config

Asi 40 řádků od konce souboru, najdete

#HesloAuthentication ano

Odstraňte znak čísla (#) a změňte nastavení na „ne“, jak je uvedeno níže.

HesloAuthentication no

Finální soubor by měl vypadat nějak takto:

sshd_config

Uložte soubor stisknutím CTRL+X. Potvrďte úpravu a název souboru a máte téměř hotovo. Stačí restartovat server SSH a spustit jej s těmito novými nastaveními.

sudo restart ssh

Také si všimnete, že váš klient přestane žádat o přístupovou frázi k dešifrování vašeho klíče, pokud je na serveru zakázáno ověřování heslem. Nyní, když máte zabezpečený server SSH, jak jej hodláte používat? Jako zabezpečený souborový server, vzdálený shell nebo předávat další služby přes SSH? Dejte nám vědět v sekci komentářů níže!

Kredit obrázku: Shutterstock

Jsem spisovatel a student informatiky z Belgie. Vždy mi můžete udělat laskavost dobrým nápadem na článek, doporučením knihy nebo nápadem na recept.