Sliečivo Shell alebo SSH je známy sieťový protokol typu open-source. Protokol sa používa na vzdialené prihlásenie do iných strojov. Bolo by preto ľahké vykonať množstvo príkazov a spustiť ľubovoľnú aplikáciu na vzdialenom zariadení plynulo bez toho, aby ste museli byť v blízkosti vzdialeného počítača. Protokol SSH je navyše veľmi dôveryhodný a bezpečný. Používatelia sú pri kopírovaní súborov medzi dvoma rôznymi zariadeniami vždy závislí od protokolu SSH.
Spravidla je na vytvorenie spojenia SSH so vzdialeným počítačom potrebné zadať používateľské meno a heslo pre vzdialený počítač. Čo však v prípade, ak potrebujete bezpečnejšiu metódu ako použitie používateľského mena a hesla pri každom prihlásení? To možno vykonať pomocou kľúča SSH vygenerovaného z klientskeho počítača a potom skopírovaného do vzdialeného počítača. S extra malými konfiguráciami sa budete môcť bezpečne prihlásiť na vzdialený počítač bez toho, aby ste zakaždým použili používateľské meno a heslo. Používanie kľúča SSH namiesto použitia používateľského mena a hesla pri každom prihlásení je oveľa bezpečnejšie; rýchlo sa môže prihlásiť iba stroj, ktorý drží správny kľúč SSH.
Dnes vám ukážeme, ako nadviazať spojenie SSH bez nutnosti zadávať heslo vzdialeného počítača. Spravidla sa dá pomocou hesla bez prihlásenia použiť na rýchly prenos súborov medzi rôznymi strojmi. Pred začatím nášho tutoriálu sa však pozrime na naše prostredie.
Príprava prostredia
Najlepšie by bolo, keby ste mali dva stroje, klientský a vzdialený. Takmer všetka práca sa bude robiť z klientskeho počítača, ktorý sa použije na pripojenie k vzdialenému zariadeniu. Obidve zariadenia sú Ubuntu s nasledujúcimi adresami IP
- The zákazník zariadenie má IP 192.168.1.20 s užívateľským menom tutovky.
- The diaľkový stroj má IP 192.168.1.30 s používateľským menom hendadel.
Ešte jedna vec pred spustením, pomocou nasledujúcich príkazov sa uistite, či sú obidva počítače aktualizované
aktualizácia sudo apt
Teraz začnime nášho sprievodcu.
Nastavenie prihlásenia SSH bez hesla
Krok 1. Pred použitím nasledujúceho príkazu sa na klientskom počítači uistite, či je vygenerovaný kľúč SSH.
ls -al ~ /.ssh / id_ *.krčma
Ako si môžete všimnúť, ak ste predtým nevygenerovali kľúč SSH, zobrazí sa správa „Žiadny takýto súbor alebo adresár“. V opačnom prípade rýchlo získate dostupné kľúče, ak existujú.
Krok 2. Pretože ste predtým nemali vygenerované kľúče SSH, je čas vygenerovať nový kľúč SSH pomocou nasledujúceho príkazu:
ssh-keygen -t rsa -b 4096
Predchádzajúci príkaz zvyčajne vygeneruje nové dva kľúče SSH v dvoch rôznych súboroch. Oba súbory sú uložené v skrytom adresári s názvom „.ssh “v domovskom adresári aktuálneho používateľa. Súkromný kľúč nájdete v súbore s názvom id_dsa a ďalší verejný kľúč v súbore s názvom id_dsa.krčma. Ďalej sa zobrazí výzva na zadanie prístupovej frázy, ktorá sa používa na ochranu vygenerovaných kľúčov. Môžete ju použiť pri pripojení cez SSH. Môžete však stlačiťZadajte”Tlačidlo nepoužívať.
Krok 3. Teraz môžete uviesť obsah súboru .adresár ssh, aby ste sa uistili, že sú vytvorené obidva kľúče.
ls -l / home / tuts /.ssh /
Krok 4. Pomocou nasledujúceho príkazu sa tiež môžete ubezpečiť, že súbor má v sebe kľúč
ssh-keygen -lv
Krok 5. Ak chcete zobraziť ukážku obsahu súboru verejného kľúča.
kat .ssh / id_rsa.krčma
Krok 6. Teraz zo vzdialeného počítača skontrolujte, či máte nainštalovaný SSH. Ak nie je nainštalovaný, môžete použiť nasledujúci príkaz.
sudo apt nainštalovať ssh
Krok 7. Späť na klientský počítač, pripojte sa k vzdialenému počítaču a vytvorte nový adresár s názvom .ssh.
sudo ssh remote_machine_username @ remote_machine_IP mkdir -p .ssh
Nezabudnite nahradiť remote_machine_username skutočným používateľským menom a remote_machine_IP vzdialenou IP adresou.
Krok 8. Ďalej skopírujme z klientskeho počítača verejný kľúč SSH vygenerovaný predtým na vzdialený počítač. Pomohlo by, keby ste verejný kľúč vložili do súboru s názvom „Authorized_keys“. Dôrazne sa odporúča nemeniť názov súboru, pretože keď sa chystáte nadviazať pripojenie SSH, prvý súbor, ktorý operačný systém skontroluje, je „Authorized_keys“ spis. Ak systém súbor nenašiel, budete požiadaní o zadanie používateľského mena a hesla, aby ste sa mohli prihlásiť na vzdialený počítač.
sudo kat .ssh / id_rsa.krčma | ssh remote_machine_username @ remote_machine_IP 'mačka >> .ssh / authorized_keys '
Krok 9. Na vzdialenom počítači skontrolujte, či bol verejný kľúč úspešne skopírovaný s názvom authorized_keys.
je .ssh / kat .ssh / authorized_keys
Krok 10. Teraz sa z klientskeho počítača pokúsme nadviazať pripojenie SSH bez používateľského mena a hesla.
ssh remote_machine_username @ remote_machine_IP
Ako si môžete všimnúť, nebude sa od vás požadovať zadanie používateľského mena ani hesla.
Zakázať overenie hesla
Ak chcete zakázať overenie hesla pomocou verejného kľúča, najskôr musíte upraviť konfiguračný súbor SSH zo vzdialeného počítača a vypnúť možnosť overenia hesla. Ďalej sú uvedené kroky, ktoré môžete urobiť.
Krok 1. Na vzdialenom počítači otvorte konfiguračný súbor ssh pomocou svojho obľúbeného editora.
vi / etc / ssh / sshd_config
Krok 2. Posuňte sa na koniec konfiguračného súboru SSH a pridajte ďalších niekoľko riadkov, čím deaktivujete overenie hesla:
RSAAuthentication áno PubkeyAuthentication áno PasswordAuthentication nie UsePAM nie ChallengeResponseAuthentication nie
Krok 3. Uložte a ukončite súbor.
Krok 4. Nakoniec reštartujte službu SSH a pokúste sa znova nadviazať nové pripojenie z klientskeho počítača na vzdialený počítač.
To je všetko! Práve ste sa naučili, ako nadviazať spojenie SSH bez hesla. Dúfam, že sa vám páčilo.