Tags for SSH zabezpečené spojení.
Přihlášení

SSH zabezpečené spojení.

SSHZabezpečené spojení k Linuxovému serveru je nejčastěji realizováno pomoci SSH, dnes si ukážeme jak si připravit prostředí pro spojení na vzdálený server které se autorizuje výměnou klíčů, nemusí tedy dojít k zadávání hesla pro přístup k vzdálené straně, tento způsob se používá například pro zálohování dat nebo periodické spouštění scriptů na vzdáleném stroji například z důvodů monitoringu.

 

 

Budeme potřebovat strany server a klient na klientovy ssh klienta a na serveru bežící službu openssh, postačí nám standartní konfigurace a samozřejmě na firewallu otevřený port 22 který ssh protokol používá.

Na klientském počítači v vygenerujeme potřebné veřejné a privátní klíče pomocí konzolového nástroje ssh-keygen (je součástí balíku ssh-client pokud ne pokuste se na Vaší distribuci doinstalovat).

pod uživatelem zadáme ssh-keygen a pokračujeme dle instrukcí

 

[michalek@corpo01 ~]$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/michalek/.ssh/id_rsa):
Created directory '/home/michalek/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/michalek/.ssh/id_rsa.
Your public key has been saved in /home/michalek/.ssh/id_rsa.pub.
The key fingerprint is:
fb:09:1e:60:fc:9d:2a:1f:68:ec:94:c6:60:8a:0d:07 michalek@corpo01.dch.cz
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|                 |
|E                |
| .   .           |
|. . o + S        |
| = o = = o .     |
|. o   O * o      |
|     =.. * .     |
|      .o+ o      |
+-----------------+
[michalek@corpo01 ~]$
Pokud chcete při generování do certifikátu přidat passphrase je to možné ale připojení k vzdálenému serveru neproběhne bez interakce s uživatlem. Bude vyžadován tento kod při každém použítí certifikátu. Já ho ve svém příkladu nepoužívám pouze celou procedůru potvrdím vše potřebné bude vygenerováno.
Jak je vidět z výstupu, do našeho domovského adresáře byla přidána skrytá složka .ssh (vše začínající tečkou je v linuxu skryté) v ní soubor id_rsa s naším privátním klíčem, ten nikomu davat nebudeme, a soubor id_rsa.pub což je veřejný klíč.
Aby mohlo proběhnout ověření klíčem musíme na vzdáleném serveru v složce uživatele mít složku .ssh a v ní soubor authorized_keys ve kterém bude veřejný klíč, tím se nastaví důvěra klient server, server bude znát veřejný klíč, klient posílá otisk který sedí oproti veřejnému klíči, spojeni je tímto navázáno. Aby jsme toto zajistily je tu jednoduchý přikaz do konzole který se naloguje na server pomocí hesla a veřejný klíč zkopíruje do správné složky. V této chvíli musíme mít cilový server dostupný a open ssh službu funkčni. Otestujeme pomocí příkazu ssh mujserver.local při přihlášení zadáme heslo vzdáleného uživatele, uživatel je stejný jako ten lokální pokud by jsme chtěly impersonaci skrze jiného uživatele použijeme příkaz ssh uzivatel@mujserver.local 
pokud se pomoci hesla takto k serveru přihlásíme můžeme použít následující řetězec příkazu pro zkopírování veřejného klíče na vzdálený server.
[user@server1.local~]# cat ~/.ssh/id_rsa.pub | ssh user@server.local "cat - >> ~/.ssh/authorized_keys" a nebo
[user@server1.local~]# cat ~/.ssh/id_rsa.pub | ssh server.local -l user -p 22 "cat - >> ~/.ssh/authorized_keys"
Jinýmy slovy jde o výpis souboru id_rsa.pub a přesměrování výstupu na vzdálený server do složky .ssh/authorized_keys
Zkusme tedy teď odpojit ssh ze vzdáleného serveru a přihlásit se pomoci ssh znovu. momentálně by mlěo dojít k navázání ssh tunelu na vzdálený server bez interakce s uživatelem automaticky.

 

 

Komentáře

Poslat nový komentář

CAPTCHA
Tato otázka je pro testování jestli jste návštěvník nebo spam robot..
Obrázkové CAPTCHA
Vložte znaky zobrazené na obrázku.