Jak kopírovat klíče SSH

How Copy Ssh Keys

SSH je důležitý nástroj, pokud jde o práci, kterou je třeba provést na jiném serveru. Můžete přesouvat soubory, synchronizovat složky, migrovat účty a soubory serverů, kopírovat zálohy atd. SSH má mnoho využití a důležitost klíčů SSH je tam, kde je třeba v krátké době provést více opakujících se procesů, jako je kopírování některých souborů nebo složek , více uživatelů, více složek, více účtů, zálohování cpanelů atd. a v těchto případech bude opravdu nudné a časově náročné, pokud budete muset ssh heslo zadávat pokaždé, když se zeptá. Nastavení klíčů SSH může zabránit potřebě ručního zadávání hesla pro každý úkol.

Chcete -li nastavit klíče SSH mezi dvěma servery, postupujte takto:



Vytvořte pár klíčů na zdrojovém serveru. Když zadáme příkaz ssh -keygen, ve výchozím nastavení vytvoří 2048bitový pár klíčů RSA a pokud potřebujete silnější šifrování, můžete použít také 4096 bitů. K tomu musíte použít -b 4096 v příkazu ssh -keygen end. Tady používám výchozí.



V následujícím výstupu je třeba se postarat o několik věcí:



Do řádku zadejte soubor, do kterého chcete klíč uložit | _+_ |

Vyžaduje cestu k uložení klíče a výchozí je normálně v pořádku. Pokud je výchozí nastavení v pořádku, můžete jednoduše stisknout Enter. Pokud chcete vyzkoušet alternativní cestu, musíte ji tam zadat. Někdy to bude znít takto:

/vykořenit/.ssh/id_rsa již existuje. Přepsat(a/n)?

Před provedením jakýchkoli změn byste si měli pořídit kopii složky .ssh 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řístupové heslo (prázdné pro žádné heslo): Toto je další bezpečnostní postup, který se při každém přihlášení k SSH zeptá na heslo a bude fungovat jako dvoufázové ověření. Ale pokud potřebujete ssh přístup pro jakékoli skriptování nebo jiná přímá díla a rychlé práce, pak je lepší toto nemít. Kromě skriptování nebo automatizace prací vám navrhneme, abyste to měli určitě.

Úplný výsledek příkazu pro referenci:

[chráněno e -mailem]: ~ $ssh-keygen
Generování veřejnosti/soukromý pár klíčů rsa.
Vstuptesoubor v kterýpro uložení klíče(/vykořenit/.ssh/id_rsa):
Vytvořený adresář'/root/.ssh'.
Zadejte heslo(prázdnýprožádné heslo):
Zadejte znovu stejné heslo:
Vaše identifikace byla uloženav /vykořenit/.ssh/id_rsa.
Váš veřejný klíč byl uloženv /vykořenit/.ssh/id_rsa.pub.
Klíčový otisk prstu je:
SHA256: z4nl0d9vJpo/5bdc4gYZh8nnTjHtXB4Se/UqyuyigUI sumesh@Sree

KlíčNáhodný obrázek uživatele:

+--- [RSA 2048] ----+
| |
| . .
| . oo.o |
| . = o = o+|
| E S o. * OBo |
| . . * nebo +. +. = |
| . . . .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 toto zkopírovat na cílový server

  • Pomocí příkazu ssh-copy-id
  • Kopírování klíče ssh pomocí běžného uživatele ssh/pass jako jedné vložky 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 za vás zkopíruje a nastaví klíč na vzdálený server správným způsobem. Jakmile je příkaz dokončen, 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 ručně zadávat heslo, a ušetříte čas každodennímu 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, jak se pokoušíte, má přístup k tomuto příkazu, pak můžete tento příkaz použít ke zkopírování veřejného klíče na vzdálený server. Tento nástroj prohledá váš místní účet pro jakýkoli veřejný klíč rsa a vyzve vás k zadání hesla účtu vzdáleného uživatele.

Zde zkopírujeme kořenový klíč ssh do přístupu na kořenové úrovni serverů. Abyste to zkopírovali, musíte se přihlásit / přepnout na uživatele, pro kterého jste klíč vytvořili. V tomto případě zkoušíme připojení root-root.

Níže je uveden úplný výstup a mezi ně přidávám potřebné detaily

vykořenit@Zdroj]]: ~ $ ssh-copy-id root@192.1.1.19-p 1986
Pravost hostitele„[192.1.1.19]: 1986 ([192.1.1.19]: 1986)“umětbýt zřízen.
Otisk klíče ECDSA je SHA256: YYOj54aEJvIle4D2osDiEhuS0NEDImPTiMhHGgDqQFk.
Opravdu chcete pokračovat v připojení (ano/ne)? Ano

Pokud to používáte poprvé, dostanete takovou odpověď a musíte zadat ano a poté stisknout Enter

/usr/dopoledne/ssh-copy-id: INFO: pokus o přihlášenívs novým klíčem(s),
filtrovat všechny již nainstalované

/usr/dopoledne/ssh-copy-id: INFO:1klíč(s)zbývá nainstalovat- -lijste vyzváni
teď je toNainstalujtenové klíče

vykořenit@192.1.1.19heslo uživatele:

Zadejte heslo a stiskněte klávesu Enter.

Číslo klíče(s)přidal:1

Nyní se zkuste přihlásit do počítače pomocí: ssh -p ‘1986’ ‘[email protected] ′
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 deaktivovat ověřování hesla, abyste mohli zamknout přístup ssh pouze pomocí klíčů ssh

2.2 Ruční kopírování klíče ssh pomocí normálního uživatele ssh/předání

Pokud vám některé z výše uvedených příkazů nefungují, přidám kroky, abyste mohli zkopírovat klíč ssh a nastavit heslo bez ověření z počítače na server.

K tomu musíme ručně připojit obsah vašeho souboru id_rsa.pub k souboru /root/.ssh/authorized_keys na vašem cílovém počítači. Pokud budete kopírovat klíč uživateli root, bude umístění | _+_ |

Od kroku 1: Možná jste viděli níže uvedený řádek

Váš veřejný klíč byl uložen do | _+_ |

To znamená, že veřejný klíč, který potřebujete zkopírovat na vzdálený server, je umístěn ve výše uvedeném souboru. Musíte tedy zkopírovat obsah tohoto souboru a poté jej zkopírovat nebo vložit do autorizovaných klíčů vzdáleného serveru

Proveďte tedy níže uvedené kroky

Níže uvedený příkaz vám poskytne klíč ke kopírování:

[chráněno emailem] $kočka /vykořenit/.ssh/id_rsa.pub

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCqql6MzstZYh1TmWWv11q5O3pISj2ZFl9Hg
H1JLknLLx44+tXfJ7mIrKNxOOwxIxvcBF8PXSYvobFYEZjGIVCEAjrUzLiIxbyCoxVyle7Q+bqgZ
8VizM8wzytsY+dVGcBxF6N4JS+zVk5eMcV385gG3Y6ON3EG112n6d+SMXY0OEBIcO6x+PnUS
GHrSgpBgX7Ks1r7xqFa7heJLLt2wWwkARptX7udSq05paBhcpB0pHtA1Rfz3K2B+ZVIpSDfki9UV
KzT8JUmwW6NNzSgxUfQHGwnW7kj4jp4AT0VZk3ADw497M2G/12N0PPB5CnhHf7ovgy6nL1ik
rygTKRFmNZISvAcywB9GVqNAVE+ZHDSCuURNsAInVzgYo9xgJDW8wUw2o8U77+xiFxgI5QSZ
X3Iq7YLMgeksaO4rBJEa54k8m5wEiEE1nUhLuJ0X/vh2xPff6SQ1BL/zkOhvJCACK6Vb15mDOeCS
q54Cr7kvS46itMosi/uS66+PujOO+xt/2FWYepz6ZlN70bRly57Q06J+ZJoc9FfBCbCyYH7U/ASsmY0
95 ywPsBo1XQ9PqhnN1/YOorJ068foQDNVpm146mUpILVxmq41Cj55YKHEazXGsdBIbXWhcrRf4G
2fJLRcGUr9q8/lERo9oxRm5JFX6TCmj6kmiFqv +Ow9gI0x8GvaQ== root@Zdroj

Přihlaste se na vzdálený server, na který musíte zkopírovat výše uvedený klíč, a ujistěte se, že používáte stejného uživatele, ke kterému potřebujete zkopírovat klíč ssh. Pokud potřebujete přímý root přístup, zkopírujte klíč přímo do sekce /root/.ssh/

Pokud složka .ssh neexistuje, vytvořte ji

Chcete -li zkontrolovat, zda existuje, a pokud ne, vytvořte jej pomocí níže uvedených příkazů:

[chráněno e -mailem]: $ls -ten /vykořenit/.ssh

Pokud složka neexistuje, vytvořte ji pomocí níže uvedeného příkazu:

[chráněno emailem] $mkdir -p /vykořenit/.ssh
[chráněno emailem] $dotek /vykořenit/.ssh/authorized_keys

[chráněno e -mailem]: $vyhodilssh-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

Zkontrolujte, zda je oprávnění složky správné

chmod -R jít=/vykořenit/.ssh/

Poté se zkuste přihlásit k serveru 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í heslem v ssh config.

POZNÁMKA: Ujistěte se, že se můžete na server přihlašovat 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é pouze zakázat autentizaci heslem, jinak existuje šance, že budou uživatelé root zamčeni.

Pokud máte nějaké potřeby, můžete mě kdykoli kontaktovat s žádostí o pomoc a podělit se o své komentáře.