Chcete-li nastavit klíče SSH mezi dvěma servery, musíme postupovat podle těchto kroků:
Krok 1: Vytvořte pár klíčů na zdrojovém serveru
Vytvořte pár klíčů na zdrojovém serveru. Když dáme příkaz ssh-keygen, ve výchozím nastavení vytvoří pár RSA klíčů 2048 bitů a pokud potřebujete silnější šifrování, můžete použít také 4096 bitů. K tomu musíte na konci příkazu ssh-keygen použít „-b 4096“. Zde používám výchozí.
V následujícím výstupu je třeba se postarat o pár věcí:
V řádku „Zadejte soubor, do kterého chcete klíč uložit (/vykořenit/.ssh / id_rsa): ”
Žádá cestu k uložení klíče a výchozí je obvykle v pořádku. Pokud je výchozí nastavení v pořádku, můžete jednoduše stisknout klávesu Enter. Pokud chcete vyzkoušet alternativní cestu, musíte tam zadat stejnou. Někdy to řekne jako:
/vykořenit/.ssh / id_rsa již existuje. Přepsat (y / n)?Měli byste si vzít kopii .ssh před provedením jakýchkoli změn nebo byste měli vědět, co děláte. Odeslání Ano způsobí, že starý klíč (pokud se již používá) nebude fungovat.
V řádku „Zadejte přístupovou frázi (prázdná bez přístupové fráze):“ Toto je další bezpečnostní postup, který bude vyžadovat přístupovou frázi pokaždé, když se pokusíte přihlásit k SSH, a bude fungovat jako dvoufázové ověření. Pokud ale potřebujete přístup ssh pro jakékoli skriptování nebo jiné přímé práce a rychlé práce, pak raději nemít toto. Kromě skriptování nebo automatizace prací vám navrhneme, abyste to měli jistě.
Úplný výsledek příkazu pro referenci:
[chráněno e-mailem]: ~ $ ssh-keygenGenerování veřejného / soukromého páru klíčů rsa.
Zadejte soubor, do kterého chcete klíč uložit (/ root /.ssh / id_rsa):
Vytvořený adresář '/ root /.ssh '.
Zadejte přístupovou frázi (prázdná bez přístupové fráze):
Zadejte znovu stejnou přístupovou frázi:
Vaše identifikace byla uložena v / root /.ssh / id_rsa.
Váš veřejný klíč byl uložen v / root /.ssh / id_rsa.hospoda.
Klíčový otisk prstu je:
SHA256: z4nl0d9vJpo / 5bdc4gYZh8nnTjHtXB4Se / UqyuyigUI sumesh @ Sree
Náhodný obrázek klíče je:
+---[RSA 2048]----+
| |
| . .|
| . oo.o |
| .= o = o + |
| E S o .* oBo |
| . . * o+.+.= |
| … O =. = ooo |
| . … + O *.B |
| … O. o + oB + |
+----[SHA256]-----+
[chráněno e-mailem] ~ $
Krok 2: Zkopírujte tento vytvořený pár klíčů na cílový server
Existují 2 různé způsoby, jak to zkopírovat na cílový server
- Pomocí příkazu ssh-copy-id
- Kopírování klíče ssh pomocí normálního uživatele / hesla ssh jako jedné linky z našeho místního počítače nebo po přihlášení na server.
2.1 Pomocí příkazu ssh-copy-id
ssh-copy-id zpracuje kopii a nastavení klíče na vzdálený server pro vás správným způsobem. Po dokončení příkazu nebudete pro každé přihlášení potřebovat heslo. Nyní můžete psát všechny své automatizované skripty pro práci správce systému, aniž byste museli zadávat heslo ručně a ušetřit čas při každodenním přístupu k systémům, které neustále používáte.
Nejprve musíte zkontrolovat, zda existuje příkaz, jako je tento, a zda příkaz funguje a uživatel, o kterého se pokoušíte, má přístup k tomuto příkazu, pak můžete pomocí tohoto příkazu zkopírovat veřejný klíč na vzdálený server. Tento nástroj prohledá váš místní účet, zda neobsahuje veřejný klíč rsa, a vyzve vás k zadání hesla účtu vzdáleného uživatele.
Tady zkopírujeme klíč root ssh do přístupu na kořenovou úroveň serverů. Abyste si to zkopírovali, musíte se přihlásit / přepnout na uživatele, pro kterého jste vytvořili klíč. V tomto případě zkoušíme spojení root-root.
Celý výstup je níže a mezi ně přidávám potřebné podrobnosti
root @ Zdroj]]: ~ $ ssh-copy-id root @ 192.1.1.19-p 1986Pravost hostitele „[192.1.1.19]: 1986 ([192.1.1.19]: 1986) „nelze stanovit.
Klíčový otisk prstu ECDSA je SHA256: YYOj54aEJvIle4D2osDiEhuS0NEDImPTiMhHGgDqQFk.
Opravdu chcete pokračovat v připojování (ano / ne)? Ano
Pokud toto používáte poprvé, dostanete takovou odpověď a musíte zadat ano a poté stisknout enter
/ usr / bin / ssh-copy-id: INFO: pokus o přihlášení pomocí nového klíče,odfiltrovat všechny, které jsou již nainstalovány
/ usr / bin / ssh-copy-id: INFO: 1 klíč (y) zbývá k instalaci - pokud se zobrazí výzva
nyní je třeba nainstalovat nové klíče
root @ 192.1.1.Heslo 19:
Zadejte heslo a stiskněte klávesu enter.
Počet přidaných klíčů: 1Nyní zkuste přihlásit do stroje pomocí: „ssh -p '1986“ [chráněno e-mailem]' “
a zkontrolujte, zda funguje podle očekávání.
Poté se budete moci přihlásit na server bez jakýchkoli hesel. Jakmile heslo bez ověřování funguje dobře, můžete ověřování hesla deaktivovat, abyste mohli uzamknout přístup ssh pouze pomocí klíčů ssh
2.2 Ruční kopírování klíče ssh pomocí běžného ssh uživatele / hesla
Pokud některý z výše uvedených příkazů nefunguje, přidám kroky, abyste mohli zkopírovat klíč ssh a heslo pro nastavení hesla bez ověření z vašeho počítače na server.
K tomu musíme ručně přidat obsah vaší id_rsa.pub soubor do / root /.soubor ssh / authorized_keys na cílovém počítači. Pokud se chystáte kopírovat klíč uživateli root, bude umístění /vykořenit/.ssh / authorized_keys .
Z kroku 1: Možná jste viděli níže uvedený řádek
Váš veřejný klíč byl uložen v /vykořenit/.ssh / id_rsa.hospoda.
To znamená, že veřejný klíč, který musíte zkopírovat na vzdálený server, se nachází ve výše uvedeném souboru. Musíte tedy zkopírovat obsah tohoto souboru a poté je zkopírovat nebo vložit do autorizovaných klíčů vzdáleného serveru
Proveďte tedy následující kroky
Níže uvedený příkaz vám dá klíč ke kopírování:
[chráněno e-mailem] $ cat / root /.ssh / id_rsa.hospodassh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCqql6MzstZYh1TmWWv11q5O3pISj2ZFl9Hg
H1JLknLLx44 + tXfJ7mIrKNxOOwxIxvcBF8PXSYvobFYEZjGIVCEAjrUzLiIxbyCoxVyle7Q + bqgZ
8SeeM8wzytsY + dVGcBxF6N4JS + zVk5eMcV385gG3Y6ON3EG112n6d + SMXY0OEBIcO6x + PnUS
GHrSgpBgX7Ks1r7xqFa7heJLLt2wWwkARptX7udSq05paBhcpB0pHtA1Rfz3K2B + ZVIpSDfki9UV
KzT8JUmwW6NNzSgxUfQHGwnW7kj4jp4AT0VZk3ADw497M2G / 12N0PPB5CnhHf7ovgy6nL1ik
rygTKRFmNZISvAcywB9GVqNAVE + ZHDSCuURNsAInVzgYo9xgJDW8wUw2o8U77 + xiFxgI5QSZ
X3Iq7YLMgeksaO4rBJEa54k8m5wEiEE1nUhLuJ0X / vh2xPff6SQ1BL / zkOhvJCACK6Vb15mDOeCS
q54Cr7kvS46itMosi / uS66 + PujOO + xt / 2FWYepz6ZlN70bRly57Q06J + ZJoc9FfBCbCyYH7U / ASsmY0
95ywPsBo1XQ9PqhnN1 / YOorJ068foQDNVpm146mUpILVxmq41Cj55YKHEazXGsdBIbXWhcrRf4G
2fJLRcGUr9q8 / lERo9oxRm5JFX6TCmj6kmiFqv + Ow9gI0x8GvaQ == root @ zdroj
Přihlaste se na vzdálený server, na který musíte zkopírovat tento výše uvedený klíč, a ujistěte se, že používáte stejného uživatele, na kterého potřebujete zkopírovat klíč ssh. Pokud potřebujete přímý přístup root, zkopírujte klíč přímo do / root /.ssh / sekce
Vytvořte složku .ssh, pokud neexistuje
Chcete-li zkontrolovat, zda existuje, a pokud ne, vytvořit jej pomocí níže uvedených příkazů:
[chráněno e-mailem]: $ ls -l / root /.sshPokud tam složka není, vytvořte ji pomocí následujícího příkazu:
[chráněno e-mailem] $ mkdir -p / root /.ssh[chráněno e-mailem] $ touch / root /.ssh / authorized_keys
[chráněno e-mailem]: $ echo “ssh-rsa
AAAAB3NzaC1yc2EAAAADAQABAAACAQCqql6MzstZYh1TmWWv11q5O3pISj2ZFl9HgH1JLknLLx44 + tXfJ7mIrKNxOOwxI
xvcBF8PXSYvobFYEZjGIVCEAjrUzLiIxbyCoxVyle7Q + bqgZ8SeeM8wzytsY + dVGcBxF6N4JS + zVk5eMcV385gG3Y6ON3
EG112n6d + SMXY0OEBIcO6x + PnUSGHrSgpBgX7Ks1r7xqFa7heJLLt2wWwkARptX7udSq05paBhcpB0pHtA1Rfz3K2B + ZV
IpSDfki9UVKzT8JUmwW6NNzSgxUfQHGwnW7kj4jp4AT0VZk3ADw497M2G / 12N0PPB5CnhHf7ovgy6nL1ikrygTKRFmNZI
SvAcywB9GVqNAVE + ZHDSCuURNsAInVzgYo9xgJDW8wUw2o8U77 + xiFxgI5QSZX3Iq7YLMgeksaO4rBJEa54k8m5wEiEE1
nUhLuJ0X / vh2xPff6SQ1BL / zkOhvJCACK6Vb15mDOeCSq54Cr7kvS46itMosi / uS66 + PujOO + xt / 2FWYepz6ZlN70bRly
57Q06J + ZJoc9FfBCbCyYH7U / ASsmY095ywPsBo1XQ9PqhnN1 / YOorJ068foQDNVpm146mUpILVxmq41Cj55YKHEazXGsd
BIbXWhcrRf4G2fJLRcGUr9q8 / lERo9oxRm5JFX6TCmj6kmiFqv + Ow9gI0x8GvaQ == root @ Zdroj „>>
/vykořenit/.ssh / authorized_keys
Ujistěte se, že oprávnění ke složce je správné
chmod -R go = / root /.ssh /Poté zkuste přihlásit se na server z nového terminálu a ujistěte se, že bezklíčové ověřování funguje podle očekávání. Teprve poté zakažte ověřování hesla v konfiguraci ssh.
POZNÁMKA: Ujistěte se, že se můžete na server přihlásit podle potřeby (buď přímo z vašeho počítače, nebo se můžete přihlásit k jinému uživateli na vzdáleném serveru a přepnout na root z tohoto účtu ručně pomocí su nebo sudo) a poté deaktivovat heslo, jinak je možné, že uživatelé root budou uzamčeni.
Pokud máte jakékoli potřeby, můžete mě kdykoli kontaktovat s žádostí o pomoc a sdílet své připomínky.