Připojení k SSH bez hesla
Z MiS
(Rozdíly mezi verzemi)
(Vytvoření stránky.) |
(Doplnění a upřesnění návodu.) |
||
(Nejsou zobrazeny 2 mezilehlé verze od 1 uživatele.) | |||
Řádka 4: | Řádka 4: | ||
# 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íč. | # 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 (<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 <code>id_rsa.pub</code> (veřený klíč). | |
− | + | # Zkontrolujte, že máte na serveru nainstalován SSH server (balíček <code>openssh</code>) a že máte povoleno přihlašování bez hesla (mělo by být nastaveno jako výchozí). | |
− | + | ||
− | #* | + | |
− | + | ||
− | # Zkontrolujte, že máte nainstalován | + | |
#* 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 souboru <code>/etc/ssh/ssh_config</code>. | #* nastavení SSH je v souboru <code>/etc/ssh/ssh_config</code>. | ||
− | # | + | # Veřejný klíč přeneste na server (skutečný server, virtuální stroj,…) do souboru <code>$HOME/.ssh/authorized_keys</code>. Použijte: |
− | #* | + | #* příkaz: <code>ssh-copy-id</code> v Linuxu |
− | # Ověřte a předveďte funkčnost, popište postup práce! | + | #* nebo <code>type</code> + <code>ssh</code> + <code>cat</code> ve Windows |
+ | #* nebo program WinSCP ve Windows. | ||
+ | #* (Nezapomeňte nastavit oprávnění k 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>. | ||
+ | #* <code>ssh user@ip</code> | ||
+ | # Ověřte a předveďte funkčnost, popište postup práce! | ||
# Můžete také zakázat přihlašování heslem: | # Můžete také zakázat přihlašování heslem: | ||
#* 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 přihlašování bez hesla i v PuTTY, ale pak musíte klíče generovat pomocí nástrojů ''PuTTYgen'' a ''PuTTYant''. Použití příkazu <code>ssh</code> je možná jednodušší.</div> | ||
== Výhody == | == Výhody == | ||
Řádka 24: | Řá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 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 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
- 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říkazemssh-keygen
, - klíče uložte do své domovské složky do souborů
id_rsa
(soukromý klíč) aid_rsa.pub
(veřený klíč).
- v příkazovém řádku (
- 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
.
- 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.)
- příkaz:
- Nyní se přihlaste pomocí příkazu
ssh
.-
ssh user@ip
-
- Ověřte a předveďte funkčnost, popište postup práce!
- Můžete také zakázat přihlašování heslem:
- Položka
PasswordAuthentication
v souboru/etc/ssh/ssh_config
.
- Položka
Můžete použít přihlašování bez hesla i v PuTTY, ale pak musíte klíče generovat pomocí nástrojů PuTTYgen a PuTTYant. Použití příkazu
ssh
je možná jednodušší.Výhody
- Nikdo vám nezjistí heslo koukáním přes rameno či keyloggerem.
- 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.
- V 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 ničemu.
Nevýhody
- Kdokoli se dostane k vašemu soukromému klíči, přihlásí se!
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
Můžete použít například tyto návody (můžete ale najít mnoho jiných):
- TUCAKOV, Dejan. How to Generate SSH Key in Windows 10. PhoenixNAP Global IT Services [online]. 2021 [cit. 2021-6-18]. Dostupné z: https://phoenixnap.com/kb/generate-ssh-key-windows-10
- SIMIC, Sofia. How to Setup Passwordless SSH on Linux. PhoenixNAP Global IT Services [online]. 2021 [cit. 2021-6-18]. Dostupné z: https://phoenixnap.com/kb/setup-passwordless-ssh