Publikovaný
Ak potrebujete použiť SSH v systéme Linux na vzdialenú správu iných počítačov, táto príručka vás prevedie tým, ako to urobiť.
V dnešnom prepojenom prostredí sa schopnosť spravovať počítače z rôznych geografických oblastí rozrástla z luxusu na nevyhnutnosť. Existuje niekoľko spôsobov, ako to urobiť, v závislosti od používaného operačného systému. Pre Systémy založené na Linuxe, najbežnejším a najbezpečnejším spôsobom správy počítača na diaľku je použitie SSH (alebo Secure Shell).
Poďme sa pozrieť na to, ako používať SSH v systéme Linux na pripojenie k iným počítačom.
Základné prvé kroky
Skôr ako sa budete môcť úspešne pripojiť k inému počítaču so systémom Linux pomocou SSH, musíte splniť nasledujúce predpoklady:
- Cieľový počítač musí zostať zapnutý a pripojený k sieti.
- Potrebný klientsky a serverový softvér musí byť nainštalovaný a aktivovaný.
- Budete potrebovať poznať IP adresu alebo názov hostiteľa cieľového počítača.
- Musia byť zavedené príslušné povolenia na vzdialený prístup.
- Konfigurácie brány firewall na vzdialenom počítači musia byť povoliť prichádzajúce spojenie.
Ak pristupujete k počítaču so systémom Linux, ktorý prevádzkuje povedzme vaša webhostingová spoločnosť, mala by sa o to už postarať. Ďalej možno budete musieť vykonať základnú inštaláciu softvéru na vašom vlastnom počítači so systémom Linux.
Používanie SSH v systéme Linux: Praktická príručka
Vytvorenie funkčného pripojenia SSH vyžaduje softvérové moduly klienta aj servera. OpenSSH slúži ako open-source alternatíva prevažne pre platformy Linux.
Ak chcete nainštalovať správneho klienta OpenSSH, budete potrebovať terminálový prístup na lokálnom počítači. Upozorňujeme, že systémy Ubuntu nemajú predinštalovaný server SSH.
Inštalácia klienta OpenSSH
Pred ponorením sa do procesu inštalácie by ste sa mali uistiť, že klient SSH tam už nie je. Aby ste to urobili, len otvorte okno terminálu. Môžete buď vyhľadať „terminál“ alebo stlačiť ctrl + alt + t na vašej klávesnici.
V okne terminálu otestujte prítomnosť klienta SSH zadaním nasledujúceho:
$ ssh
Ak má počítač so systémom Linux už nainštalovaného klienta SSH, na obrazovke sa zobrazia nasledujúce informácie.
usage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B bind_interface] [-b bind_address] [-c cipher_spec] [-D [bind_address:]port] [-E log_file] [-e escape_char] [-F configfile] [-I pkcs11] [-i identity_file] [-J [user@]host[:port]] [-L address] [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port] [-Q query_option] [-R address] [-S ctl_path] [-W host: port] [-w local_tun[:remote_tun]] destination [command [argument ...]]
Ak namiesto toho dostanete sťažnosť, že súbor sa nenašiel, budete musieť pokračovať v inštalácii klienta OpenSSH. Našťastie je to dosť jednoduché.
Na Ubuntu a iných inštaláciách založených na Debiane stačí spustiť nasledujúci príkaz v termináli:
$ sudo apt install openssh-client
Ak používate Fedoru alebo iná distribúcia ktorý používa mňam namiesto apt, stačí spustiť tento príkaz:
$ sudo yum -y install openssh-clients
Môžu sa používať novšie systémy Fedory dnf namiesto toho. Ak to znie ako vy, magický príkaz je:
$ sudo dnf install -y openssh-clients
Postupujte podľa pokynov na obrazovke a čoskoro budete môcť ísť.
Spustenie pripojenia SSH
Keď sa ubezpečíte, že klient SSH je nainštalovaný na vašom počítači so systémom Linux, je čas spustiť prvé pripojenie. Keď ste stále v okne terminálu, zadajte nasledujúci príkaz:
$ ssh username@host_ip_address
Ak sa používateľské mená na lokálnych a vzdialených počítačoch zhodujú, jednoducho zadajte:
$ ssh host_ip_address
Pri prvom pripojení vás privíta výzva s otázkou, či chcete pokračovať v pripájaní k neznámemu počítaču. V tomto bode zadajte Áno a pokračovať.
Zadajte svoje heslo a uvedomte si, že počas zadávania nebudete dostávať žiadnu spätnú väzbu na obrazovke. Po dokončení by ste mali byť prihlásení na vzdialený server a môžete začať vykonávať akúkoľvek úlohu, ktorú potrebujete vykonať na tomto počítači.
Pochopenie SSH: Prehľad na vysokej úrovni
Secure Shell alebo SSH – občas označovaný ako Secure Socket Shell – je protokol umožňujúci bezpečné pripojenie k vzdialeným serverom alebo počítačom prostredníctvom textového rozhrania.
Po overení zabezpečeného kanála SSH sa inicializuje relácia shellu, ktorá umožňuje interakciu príkazového riadka z vášho lokálneho počítača.
Tento protokol dobre poznajú a milujú správcovia systému a siete, ako aj všetci, ktorí potrebujú bezpečnú vzdialenú správu strojov.
Mechanika funkčnosti SSH
Vytvorenie kanála SSH vyžaduje spoluprácu dvoch kľúčových komponentov: aplikácie na strane klienta a jej náprotivku na strane servera. Klientska aplikácia iniciuje pripojenie poskytnutím poverení vzdialeného hostiteľa.
Po overení softvér vytvorí šifrovaný kanál medzi dvoma počítačmi. Na vzdialenom počítači démon SSH neustále skenuje určený port TCP/IP a hľadá potenciálne požiadavky na pripojenie.
Po prijatí démon sprostredkuje svoj softvér a možnosti protokolu a obe entity si vymenia identifikačné údaje. Ak sa poverenia zhodujú, nasleduje šifrovaná relácia, prevažne prostredníctvom protokolu SSH verzie 2.
Pokročilé používanie SSH: Uložte si šifrovací kľúč, aby ste sa vyhli zadávaniu hesla
Teraz povedzme, že sa tomu chcete vyhnúť zadajte svoje heslo zakaždým, keď sa prihlásite na vzdialený server. Pre bezpečné pripojenie k inému počítaču bez hesla je kľúč SSH (Secure Shell) nevyhnutný.
Možno už taký kľúč vlastníte, ale vygenerovať nový nie je nikdy zlý nápad. Kľúč SSH, ktorý pochádza z vášho lokálneho počítača, je rozdelený na dva odlišné prvky: dôverný, súkromný kľúč – ktorý sa nikdy neprezradí – a jeho verejný náprotivok. Tento verejný kľúč sa potom šíri do všetkých vzdialených systémov, do ktorých sa potrebujete prihlásiť.
Niektorí ľudia sa môžu rozhodnúť pre jeden kľúč SSH pre množstvo aplikácií, od prihlásenia do vzdialeného systému až po GitLab. Dalo by sa povedať, že jeden kľúč im všetkým vládne. Môj prístup je však podrobnejší. Používam rôzne klávesy, každý je určený pre špecifickú podskupinu úloh.
Napríklad používam vyhradený kľúč pre lokálne počítače v rámci mojej domácej siete, čo je ďalšia exkluzívna možnosť kľúč pre webové servery pod mojou správou a ďalší jedinečný kľúč na interakciu s Git hostiteľov.
Vytvorenie nového páru kľúčov SSH
Tu je návod, ako môžete vytvoriť nový kľúč SSH a potom ho skopírovať na vzdialený server, pre ktorý ho chcete použiť. Najprv vytvorte kľúč pomocou ssh-keygen.
$ ssh-keygen -t ed25519 -f /.ssh/lan
Vlajka -t určuje typ kľúča, ktorý sa má vytvoriť, pričom zaisťuje, že šifrovanie je vyššie ako predvolené. The -f príznak nastavuje názov súboru kľúča a umiestnenie.
Keď zadáte tento príkaz, zobrazí sa výzva na vytvorenie hesla pre kľúč. Toto heslo, ak ho nastavíte, zostane lokálne a nebude sa odosielať cez sieť.
Odoslanie vášho kľúča SSH na vzdialený server
Ďalej budete musieť odoslať tento bezpečnostný kľúč na vzdialený server. Aby ste to dosiahli, stačí zadať tento príkaz:
$ ssh-copy-id -i /.ssh/lan.pub user@host_ip_address
Budete vyzvaní na zadanie prihlasovacieho hesla na vzdialenom hostiteľovi. Po dokončení procesu sa však váš kľúč nainštaluje do tohto počítača.
Mali by ste otestovať tak, že sa pokúsite prihlásiť do vzdialeného počítača. Keď znova vykonáte ssh do vzdialeného hostiteľa, budete požiadaní o heslo pre kľúč, ak ste ho nastavili. Toto nie je vaše prihlasovacie heslo, nezabudnite. Je to prístupová fráza špecifická pre tento kľúč SSH.
Na mnohých distribúciách vrátane Linuxu sa táto výzva na zadanie hesla otvorí ako dialógové okno. Ako vidíte z príkladu nižšie, môžete začiarknuť políčko, aby si počítač so systémom Linux zapamätal prístupovú frázu. To však zníži bezpečnosť kľúča.
Po zadaní prístupovej frázy pre váš kľúč SSH by ste ju nemali znova zadávať, kým sa neodhlásite z miestneho počítača.
Iné spôsoby použitia SSH
Po tomto všetkom je dobré použiť SSH na vzdialený prístup k iným počítačom so systémom Linux alebo Unix. Samozrejme, nie je to všetko o tom, ako sa dostať do príkazového riadka.
SSH tiež obsahuje bezpečný spôsob prenosu súborov medzi počítačmi bez použitia FTP. Na to môžete použiť Secure Copy alebo scp presúvať tieto súbory. Ak ste používateľom systému Windows 11 a potrebujete používať SSH, máte šťastie, pretože klient je predinštalovaný. Môžeš dokonca vytvárať a používať SSH kľúče v systéme Windows 11.