Klient SSH je nevyhnutný nástroj, keďpomocou spojenia SSH medzi dvoma strojmi. Je určený na vstup do operačného systému vzdialeného počítača a vykonávanie príkazov v ňom. Klient je nainštalovaný na lokálnom počítači používateľa. Musí byť overený na serveri a až potom sa musí služba spustiť. Klienta možno implementovať na prácu v termináli alebo na grafické konfiguračné rozhranie.
Čo je to SSH?
SSH (Secure Shell) sa prekladá doslovne ako"Bezpečná škrupina". Pri používaní je SSH sieťový protokol, ktorý bezpečne spravuje operačný systém vzdialeného hostiteľa v sieti. Poskytuje bezpečné pripojenie, autentifikáciu a prenos dát z jedného hostiteľa na druhého šifrovaním prenosu prechádzajúceho cez neho.
Umožňuje vám vytvárať šifrované tunely pre serverbezpečný prenos ďalších sieťových protokolov cez nezabezpečenú sieť, ako je napríklad internet. Často sa používa na presmerovanie portov jedného počítača na porty druhého.
SSH založil Tatu Ilenen zFínsko v roku 1995, ktoré ho zaviedlo ako dôvernejší protokol. Táto verzia dostala názov SSH-1. Momentálne sa prakticky nikde nepoužíva.
V roku 1996 vylepšenáVerzia SSH-2. Je nekompatibilný s SSH-1, je bezpečnejší a má rozšírený zoznam šifrovacích algoritmov. Teraz sa SSH chápe ako verzia SSH-2. Od roku 2006 je IETF protokol uznávaný ako internetový štandard.
Existujú dve hlavné implementácie SSH.Jedným z nich je vlastnícke právo, ktoré vyvíja spoločnosť SSH Communications Security. Druhým je OpenSSH, ktorý vznikol pod vedením Thea de Raadta ako alternatíva bezplatného open source k prvému. Je najbežnejší a je súčasťou dodávky väčšiny systémov podobných systému Unix.
Čo je SSH klient a SSH server
Pripojenie SSH sa realizuje pomocou dvoch hlavných komponentov: klienta a servera.
Jednoducho povedané, užívateľ prostredníctvom klienta,ktorý je nainštalovaný na lokálnom počítači, získa prístup k vzdialenému počítaču (serveru). Je potrebné poznamenať, že klienta je možné implementovať pomocou grafického shellu (ako desktopová aplikácia) a pre prácu v termináli (konzole).
Server SSH počúva sieťové pripojenia klientov a serverovpri prijatí žiadosti o pripojenie vykoná potrebné kroky na autorizáciu. Ak je úspešný, spustí službu nainštalovanú pre vzdialeného klienta.
Zabezpečený prístup je organizovaný pomocouAutentifikačné postupy využívajúce asymetrické šifrovanie verejného kľúča pri prvom pripojení. Následne sa použije symetrické šifrovanie.
Štandard SSH obsahuje tri protokoly:
- Transport Layer Protocol - zaisťuje autentifikáciu servera, súkromie a integritu. Poskytuje kompresiu údajov. Funguje cez TCP / IP.
- Authentication Protocol - Vykoná autentifikáciu klienta pre server. Pôsobí na vrstve transportného protokolu.
- Protokol spojenia - predstavuje šifrovaný kanál vo forme multiplexovaného kanála niekoľkých logických kanálov používaných pre rôzne služby. Funguje nad autentifikačným kanálom.
Vylepšenia bezpečnosti sú zaručené autentifikáciou klienta na server, ku ktorému pristupuje klient ssh, a autentifikáciou servera klientom. Obe strany sú autentifikované.
Klient odošle požiadavku pri prvom nadviazaní zabezpečeného transportného spojenia. Druhá požiadavka sa odošle po dokončení autentifikácie klienta SSH.
Implementácia OpenSSH
OpenSSH je implementácia príkazu OpenBSD v otvorenom zdroji. Je to najpoužívanejšia verzia vďaka svojej bezplatnej distribúcii.
Balík OpenSSH obsahuje sadu týchto nástrojov:
- SSHD je na strane servera.
- SSH je na strane klienta.
- SCP je nástroj na bezpečné kopírovanie súborov.
- SSH-keygen - generuje verejné kľúče (RSA, DSA a ďalšie) pre počítače a používateľov.
- SSH-keyscan - zhromažďuje verejné kľúče v sieti.
- SSH-agent - ukladá súkromné RSA kľúče pre následnú autorizáciu s verejnými kľúčmi.
- SSH-add - pridá nové súkromné kľúče k agentovi SSH.
- SFTP-server - server SFTP.
- SFTP je nástroj na bezpečné kopírovanie súborov pomocou FTP.
OpenSSH je súčasťou balenia pre väčšinu systémov podobných systému Unix. Najbežnejšie sú Linux, Open (Free, Net) BSD, Solaris, HP-UX, Irix, MacOS X a ďalšie.
Aktívny vývoj prebieha v implementácii OpenSSH pre Windows, ktorý je k dispozícii na stiahnutie na stránky. Umožňuje vám vytvoriť server SSH v systémoch rodiny Windows, na pripojenie má klienta SSH. OpenSSH pre Windows je súčasťou CygWin.
Najobľúbenejšie medzi používateľmi súDistribúcie založené na jadre Linuxu. V nasledujúcom budú všetky príklady použitia SSH predpokladané v konfigurácii OpenSSH. Pre prehľadnosť práce v systéme Linux bude klient SSH nakonfigurovaný pre Ubuntu, Windows a Mac OS X.
Inštalácia a konfigurácia servera openssh-server
Existuje veľa možností konfigurácieServer OpenSSH. Konfigurácia klienta by sa mala vykonať na základe konfigurácie servera. Táto časť poskytuje príklad servera SSH nainštalovaného na serveri Ubuntu Server Edition. Nasledujúci popis konfigurácie klienta použije konfiguráciu tohto servera.
1. Existujú dva spôsoby, ako nainštalovať server OpenSSH:
1.1. Vyberte si inštaláciu servera OpenSSH -server okamžite počas nasadenia servera Ubuntu /
1.2. Stiahnite a nainštalujte z úložiska spustením príkazu:
2. Predvolené hodnoty konfigurácie servera SSHD môžete zobraziť v súbore / etc / ssh / sshd_config pomocou príkazu:
3.Pred zmenou predvolených nastavení si nezabudnite vytvoriť záložnú kópiu súboru a chráňte ho pred zápisom. To sa deje v prípade, že v prípade chyby potrebujete vrátiť pôvodnú hodnotu.
4. Predvolené nastavenia sú port TCP 22. Z bezpečnostných dôvodov sa odporúča nahradiť ho neštandardnou hodnotou, napríklad 5754. Direktívu Port môžete zmeniť pomocou príkazu:
5. Uložte súbor / etc / ssh / sshd_config a reštartujte SSHD:
Server je nainštalovaný a nakonfigurovaný.Teraz ju počúva na porte 5754. V predvolenom nastavení k nej má prístup každý používateľ v systéme s prihlasovacími právami. Autentifikácia sa vykonáva pomocou hesla alebo kľúčov DSA, RSA, ed25519 atď.
Cross-platform OpenSSH-klient pre terminál. SSH klient pre Linux
Skôr sa hovorilo, že sa najčastejšie používaimplementácia protokolu SSH je OpenSSH, ktorá sa štandardne dodáva s väčšinou verzií distribúcií Linuxu. V niektorých prípadoch je možné OpenSSH stiahnuť z úložísk pre danú distribúciu.
Ako súčasť balíkov je klient OpenSSH implementovaný vvo forme programu SSH, ktorý sa spúšťa rovnomenným príkazom. Klient je konfigurovaný a spravovaný cez terminál, nemá grafické rozhranie. Považuje sa za najjednoduchšiu a najpohodlnejšiu verziu.
Inštalácia a konfigurácia klienta OpenSSH na Ubuntu
Vzdialený počítač má nainštalovaný a nakonfigurovaný server OpenSSH. Výzvou je prístup k nemu z lokálneho počítača, na ktorom je nainštalovaný Ubuntu.
1. V Ubuntu nie je distribučná súprava OpenSSH-klient štandardne pridaná, takže ju musíte nainštalovať pomocou príkazu:
2. Po nainštalovaní je program vyvolaný príkazom SSH z terminálu bez Root.
3. Ak sa používa autentifikácia pomocou hesla:
1) pripojenie sa uskutoční pomocou príkazu:
- používateľské meno - názov účtu na vzdialenom počítači,
- hostiteľ je IP adresa vzdialeného servera (alebo domény, ak bola doména delegovaná na server);
2) po zadaní príkazu stlačte kláves Enter -budete vyzvaní na zadanie hesla; musíte zadať heslo pre účet vzdialeného počítača (mali by ste byť opatrní, pretože z hľadiska bezpečnosti sa heslo nijako nezobrazuje);
3) po zadaní správneho hesla sa zobrazí okno terminálu vzdialeného servera s pozdravom; teraz môžete vykonať potrebné príkazy.
4. Ak sa vyžaduje autorizácia pomocou kľúčov DSA:
1) ak je to potrebné, môžete vygenerovať verejné a súkromné kľúče SSH z klienta OpenSSH:
2) v predvolenom nastavení je verejný kľúč uložený do súboru /home/user/.ssh/id_dsa.pub a súkromný kľúč je uložený do /home/user/.ssh/id_dsa;
3) vygenerovaný verejný kľúč musí byť skopírovaný na vzdialený počítač a pridaný do autorizácie /home/user/.ssh/authorized_keys pomocou príkazu:
Teraz sa môže používateľ autentifikovať na serveri SSH bez zadania hesla.
Inštalácia a konfigurácia OpenSSH pre Cygwin Terminal v systéme Windows
Program Cygwin sa inštaluje spustením súboru Cygwin.exe, ktorý sa stiahne z oficiálnych webových stránok.
Cygwin je zostava mnohých rôznych balíkov. Na prácu so vzdialeným terminálom je potrebný iba OpenSSH. Nájdete ju vyhľadaním v samotnom Cygwin.
Po inštalácii balíka musíte spustiť Cygwin Terminal a zadať príkaz:
Potom stlačte kláves Enter. Zobrazí sa výzva na zadanie hesla. Po absolvovaní autentifikácie sa terminál vzdialeného servera zobrazí s pozdravom používateľa.
Syntax je úplne rovnaká ako v prípade klienta OpenSSH implementovaného pre systém Linux.
Cross-platform SSH klient s PuTTY GUI
Putty je grafický klient SSH pre vzdialenú správu, ktorý obsahuje podporu protokolu SSH. Program je otvorený a úplne zadarmo.
Spočiatku bol vydaný iba pre OS Windows, ale neskôr bol klient portovaný na Linux, je zahrnutý v úložiskách takmer všetkých populárnych distribúcií.
Aktívne vyvinutý pre Mac OS X.
Konfiguračné okno PuTTY vyzerá vo všetkých rovnakooperačné systémy. Rozdiel je iba v spôsoboch inštalácie. Preto budú najskôr predstavené spôsoby inštalácie pre tri operačné systémy a až potom možnosti konfigurácie PuTTY.
Inštalácia systému PuTTY Linux Ubuntu
1. PuTTY môžete nainštalovať pomocou príkazu:
2. Spustenie sa vykonáva príkazom putty z terminálu alebo kliknutím myši z ponuky:
3. Otvorí sa okno nastavení klienta, kde je potrebné zaregistrovať parametre pripojenia.
Inštaluje sa PuTTY pre Windows
Ak chcete nainštalovať, musíte si stiahnuť súbor putty.exe a uložiť ho na vhodné miesto, napríklad na plochu. Program sa spúšťa dvoma kliknutiami ľavého tlačidla myši.
PuTTY je klient SSH pre Mac. Inštalácia a spustenie verzie grafického používateľského rozhrania
V čase písania tohto článku nebol program PuTTY adekvátne portovaný na prácu v systéme Mac OS X. Problémy nastali pri zostavovaní časti zodpovednej za grafické rozhranie.
Pri inštalácii je potrebné vykonať niekoľko predbežných prác.
1. Nainštalujte Xcode.
Balík nástrojov a programov od spoločnosti Apple na vývoj a vytváranie aplikácií pre systém Mac OS X.
V systéme Mac OS X 10.7 Lion je potrebné nainštalovať „Nástroje príkazového riadku pre Xcode“ z webu Apple Developer.
Po inštalácii musíte prijať licenčnú zmluvu:
2. Nainštalujte Xquartz.
Toto je implementácia servera X.Org X Window System (X11) pre Mac OS X. Vyžaduje sa pre verziu PuTTY s grafickým rozhraním napísanú v GTK +. Môžete si ho nainštalovať z oficiálnej webovej stránky. Po inštalácii budete potrebovať opätovné prihlásenie.
3. Nainštalujte Homebrew.
Inštalácia sa vykonáva pomocou príkazu:
Ďalej musíte skontrolovať správnosť inštalácie pomocou príkazu:
4. Inštalácia tmelu sa vykonáva pomocou príkazu:
Tento proces môže trvať viac ako pol hodiny, pretože bude nainštalovaných toľko závislostí, ako je Glib / GTK + / Pango / Cairo.
5. Vytvorenie spúšťacieho súboru Putty.app.
Musí byť spustený program Automator.app.V type dokumentu zvoľte „program“, v akciách zvoľte „spustiť shell skript“, do vstupného poľa zadajte cestu k spustiteľnému súboru „/ user / local / bin / putty“, uložte ako „putty.app“, s uvedením súborový formát „program“ do adresára „programs“. Štandardnú ikonu je možné v prípade potreby vymeniť.
Konfigurácia klienta SSH PuTTY
Proces konfigurácie grafického klienta SSH PuTTY vyzerá rovnako vo všetkých operačných systémoch. Vzhľad sa mierne líši v závislosti od dizajnu pracovného prostredia.
Ak sa chcete pripojiť k vzdialenému zariadeniu pomocou protokolu SSH, musíte spustiť program PuTTY. V zobrazenom okne programu musíte nastaviť parametre:
Typ pripojenia - typ pripojenia - vytvorený SSH.
Názov hostiteľa (alebo adresa IP) - názov hostiteľa alebo adresa IP - tu je uvedená adresa IP vzdialeného servera, názov domény alebo internetová adresa. V zobrazenom príklade je adresa IP 192.168.128.3
Port - načúvací port - na serveri, ktorý bol uvedený ako príklad, je nakonfigurovaný port 5754. Zadáme to.
Ak je to potrebné, môžete uložiť nastavenia pre túto reláciu.
Po kliknutí na tlačidlo „Otvoriť“ sa zobrazí okno terminálu, kde budete musieť zadať názov účtu vzdialeného zariadenia a heslo.
Ak potrebujete klienta autentifikovať pomocou dvojice kľúčov, budete potrebovať obslužný program puttygen.exe, ktorý je spustený v systéme Windows. PuTTY-Gen generuje svoj pár verejných a súkromných kľúčov.
Verejný kľúč je potrebné pridať na server, je generovaný v štandarde SSH. Kľúč môžete pridať rovnakým spôsobom, cez OpenSSH v termináli alebo pomocou PuTTY, po vykonaní prvej autorizácie prihlasovacieho hesla.
Súkromný kľúč sa generuje vo formáte.ppk a pridané klientovi. Naľavo v strome musíte nájsť SSH, rozbaliť zoznam, vyhľadať Auth a v tomto parametri v poli „Súbor súkromného kľúča na overenie“ vybrať kľúč.
Po týchto manipuláciách sa môže užívateľ autentifikovať na serveri bez zadania hesla.
Momentálne je PuTTY považovaný za univerzálneho SSH klienta s GUI. Vývojári tretích strán Gao-Feng vytvorili klienta SSH pre Android ako mobilnú verziu PuTTY.
Najlepší klient SSH
Stále neexistuje konsenzus o tom, ktorého klienta SSH použiť. Správcovia systému vyberajú pomocné programy podľa svojich vlastných potrieb.
Všeobecne platí, že používatelia * unixových systémov majú tendenciupoužívať štandardné SSH z balíka OpenSSH. Má jasnú univerzálnu syntax a je prístupný priamo z terminálu. Ak chcete pracovať s ďalšími nástrojmi, ako je Secure File Copy (SCP), nemusíte inštalovať ďalšie programy. Všetko, čo potrebujete, je obsiahnuté v OpenSSH.
Fanúšikovia grafického používateľského rozhrania, ktorízvyčajne bežia na operačných systémoch Windows, použite PuTTY. Je považovaný za najlepšieho klienta SSH pre Windows. Má všetku potrebnú sadu nástrojov na tunelovanie, kopírovanie súborov atď., Aj keď to vyžaduje stiahnutie ďalších modulov.