Připojení k SSH bez hesla

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
m (Postup: Opravy vzhledu.)
(Doplnění a upřesnění návodu.)
 
Řádka 6: Řádka 6:
 
#* v příkazovém řádku (<code>cmd</code>) příkazem <code>ssh-keygen</code>,
 
#* v příkazovém řádku (<code>cmd</code>) příkazem <code>ssh-keygen</code>,
 
#* klíče uložte do své domovské složky do souborů <code>id_rsa</code> (soukromý klíč) a&nbsp;<code>id_rsa.pub</code> (veřený klíč).
 
#* klíče uložte do své domovské složky do souborů <code>id_rsa</code> (soukromý klíč) a&nbsp;<code>id_rsa.pub</code> (veřený klíč).
# Veřejný klíč přeneste na server (sousedův VM, PuTTY na vašem počítači) do souboru <code>$HOME/.ssh/authorized_keys</code>. Použijte:
 
#* příkaz: <code>ssh-copy-id</code> v&nbsp;Linuxu.
 
#* nebo <code>ssh</code> + <code>cat</code>
 
#* nebo program WinSCP.
 
#* (Nezapomeňte nastavit oprávnění ''600'' tak, aby měl přístup pouze vlastník.)
 
 
# Zkontrolujte, že máte na serveru nainstalován SSH server (balíček <code>openssh</code>) a&nbsp;že máte povoleno přihlašování bez hesla (mělo by být nastaveno jako výchozí).
 
# Zkontrolujte, že máte na serveru nainstalován SSH server (balíček <code>openssh</code>) a&nbsp;že máte povoleno přihlašování bez hesla (mělo by být nastaveno jako výchozí).
 
#* Instalaci balíčků znáte,  
 
#* Instalaci balíčků znáte,  
 
#* spuštění balíčku ověříte pomocí příkazu <code>systemctl status</code>,
 
#* spuštění balíčku ověříte pomocí příkazu <code>systemctl status</code>,
 
#* nastavení SSH je v&nbsp;souboru <code>/etc/ssh/ssh_config</code>.
 
#* nastavení SSH je v&nbsp;souboru <code>/etc/ssh/ssh_config</code>.
 +
# Veřejný klíč přeneste na server (skutečný server, virtuální stroj,&hellip;) do souboru <code>$HOME/.ssh/authorized_keys</code>. Použijte:
 +
#* příkaz: <code>ssh-copy-id</code> v&nbsp;Linuxu
 +
#* nebo <code>type</code> + <code>ssh</code> + <code>cat</code> ve Windows
 +
#* nebo program WinSCP ve Windows.
 +
#* (Nezapomeňte nastavit oprávnění k&nbsp;souboru <code>authorized_keys</code> na ''600'' tak, aby měl přístup pouze vlastník.)
 
# Nyní se přihlaste pomocí příkazu <code>ssh</code>.
 
# Nyní se přihlaste pomocí příkazu <code>ssh</code>.
 
#* <code>ssh user@ip</code>
 
#* <code>ssh user@ip</code>
Řádka 21: Řádka 21:
 
#* Položka <code>PasswordAuthentication</code> v souboru <code>/etc/ssh/ssh_config</code>.
 
#* Položka <code>PasswordAuthentication</code> v souboru <code>/etc/ssh/ssh_config</code>.
  
<div class="Poznamka">Můžete použít i&nbsp;PuTTY v&nbsp;kombinaci s&nbsp;PuTTYgen a&nbsp;PuTTYant, ale použití příkazu <code>ssh</code> je možná jednodušší.</div>
+
<div class="Poznamka">Můžete použít přihlašování bez hesla i v&nbsp;PuTTY, ale pak musíte klíče generovat pomocí nástrojů ''PuTTYgen'' a&nbsp;''PuTTYant''. Použití příkazu <code>ssh</code> je možná jednodušší.</div>
  
 
== Výhody ==
 
== Výhody ==
Řádka 27: Řádka 27:
 
* Pohodlí (nemusím psát heslo).
 
* Pohodlí (nemusím psát heslo).
 
* Vyhnete se riziku brute-force útoku (zkoušení hesel, dokud se útočník netrefí) — pokud zakážete přihlašování pomocí hesla.
 
* Vyhnete se riziku brute-force útoku (zkoušení hesel, dokud se útočník netrefí) — pokud zakážete přihlašování pomocí hesla.
 +
* V&nbsp;případě kompromitace privátního klíče (ukradli vám počítač apod.) stačí smazat veřejný klíč ze serveru. Privátní klíč je tím pádem útočníkovi k&nbsp;ničemu.
  
 
== Nevýhody ==
 
== Nevýhody ==
* Kdokoli se dostane k vašemu soukromému klíči, přihlásí se!
+
* Kdokoli se dostane k vašemu soukromému klíči, přihlásí se!<br />''Pro vyšší bezpečí se dá použití soukromého klíče zabezpečit také heslem, ale pak musíte vždy zadávat heslo při přihlašování.''
  
 
== Zdroje ==
 
== Zdroje ==

Aktuální verze z 23. 1. 2024, 08:16


Obsah

Postup

  1. Na vašem osobním (klientském) počítači (Windows, Linux, počítač, který běžně používáte...) vytvořte dvojici soukromý+veřejný klíč.
    • v příkazovém řádku (cmd) příkazem ssh-keygen,
    • klíče uložte do své domovské složky do souborů id_rsa (soukromý klíč) a id_rsa.pub (veřený klíč).
  2. Zkontrolujte, že máte na serveru nainstalován SSH server (balíček openssh) a že máte povoleno přihlašování bez hesla (mělo by být nastaveno jako výchozí).
    • Instalaci balíčků znáte,
    • spuštění balíčku ověříte pomocí příkazu systemctl status,
    • nastavení SSH je v souboru /etc/ssh/ssh_config.
  3. Veřejný klíč přeneste na server (skutečný server, virtuální stroj,…) do souboru $HOME/.ssh/authorized_keys. Použijte:
    • příkaz: ssh-copy-id v Linuxu
    • nebo type + ssh + cat ve Windows
    • nebo program WinSCP ve Windows.
    • (Nezapomeňte nastavit oprávnění k souboru authorized_keys na 600 tak, aby měl přístup pouze vlastník.)
  4. Nyní se přihlaste pomocí příkazu ssh.
    • ssh user@ip
  5. Ověřte a předveďte funkčnost, popište postup práce!
  6. Můžete také zakázat přihlašování heslem:
    • Položka PasswordAuthentication v souboru /etc/ssh/ssh_config.
Můžete použít přihlašování bez hesla i v PuTTY, ale pak musíte klíče generovat pomocí nástrojů PuTTYgenPuTTYant. Použití příkazu ssh je možná jednodušší.

Výhody

Nevýhody

Zdroje

Můžete použít například tyto návody (můžete ale najít mnoho jiných):

Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje