GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nastavit přihlášení SSH bez hesla na CentOS 7 / RHEL 7

SSH je klientský a serverový protokol a pomáhá nám přistupovat ke vzdálenému systému přes síť přes šifrovaný tunel. Kdykoli klientský počítač přistupuje k serveru se spuštěným SSH, klient si stáhne zabezpečený klíč ze serveru a zároveň si server stáhne klíč také od klienta. Tyto dva klíče vytvářejí šifrovaný tunel mezi serverem a klientem, takže přenos dat po síti je velmi bezpečný.

Pokud má organizace velký počet serverů, musí správce pokaždé zadat heslo pro přístup ke vzdálenému systému. Je bolestné zadávat heslo vícekrát; SSH přichází s novou funkcí nazvanou přihlašování bez hesla, která pomáhá přistupovat ke vzdálenému počítači bez zadávání hesla.

Předpoklady

Zde máme dva stroje se dvěma různými uživatelskými jmény.

Název hostitele IP adresa Uživatel OS Účel
server.itzgeek.local 192.168.1.10 raj CentOS 7 / RHEL 7 Zdrojový stroj
client.itzgeek.local 192.168.1.20 ram CentOS 7 / RHEL 7 Cílový stroj

Zde budu místo IP adresy používat název hostitele.

Postupujte podle pokynů k vytvoření přihlašovacího jména bez hesla.

Nastavte přihlášení SSH bez hesla na CentOS 7

Abychom povolili přihlašování bez hesla, musíme vložit položku veřejného klíče klientského počítače do souboru ~/.ssh/authorized_keys (~ představuje domovský adresář uživatele).

SSH přihlášení bez hesla můžeme nastavit dvěma způsoby. Vyberte kteroukoli z metod.

  1. Automaticky – (doporučeno)
  2. Manuální

Metoda 1:(Automaticky)

Tato metoda zahrnuje vygenerování páru klíčů SSH na zdrojovém počítači a jeho umístění na cílový počítač pomocí jediného příkazu.

Přihlaste se ke zdrojovému počítači a vytvořte pár klíčů SSH pomocí následujícího příkazu ssh-keygen.

[raj@server ~]$ ssh-keygen

Výstup:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/raj/.ssh/id_rsa):  << Press Enter
Created directory '/home/raj/.ssh'.
Enter passphrase (empty for no passphrase):  << Press Enter
Enter same passphrase again:  << Press Enter
Your identification has been saved in /home/raj/.ssh/id_rsa.
Your public key has been saved in /home/raj/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:0oqVhWQzIV+hFFHkquVCTihmORqtt+vXHIXhhXoIosI [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|    . XB=.       |
|. .  *oB.        |
|o. . +++o        |
|oE..o +=.        |
|+=o o.*.S        |
|++.+ *.o         |
|o . =oo.         |
| . ...o          |
| .+o             |
+----[SHA256]-----+

Jakmile vytvoříte, najdete v adresáři .ssh dva soubory id_rsa a id_rsa.pub. Pro přihlášení bez hesla budeme používat id_rsa.pub.

[raj@server ~]$ ls -al ~/.ssh/

Výstup:

total 8
drwx------. 2 raj raj   38 Sep  6 00:37 .
drwx------. 3 raj raj   74 Sep  6 00:37 ..
-rw-------. 1 raj raj 1675 Sep  6 00:37 id_rsa
-rw-r–r–. 1 raj raj 406 Sep 6 00:37 id_rsa.pub

Použijte příkaz ssh-copy-id se vstupním souborem id_rsa.pub.

[raj@server ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
Příkaz ssh-copy-id vytvoří ~/.ssh/authorized_keys na cílovém počítači, pokud tomu tak není. Jinak ssh-copy-id připojí nový klíč k existujícím klíčům.

Výstup:

The authenticity of host 'client.itzgeek.local (192.168.1.20)' can't be established.
ECDSA key fingerprint is SHA256:sueTz6FURcKDbeyGkpE7lUHOaosW/rkkvlG18v98T7Y.
ECDSA key fingerprint is MD5:f7:39:52:7e:2e:a4:20:84:ff:d7:72:21:20:36:91:76.
Are you sure you want to continue connecting (yes/no)? yes << Type Yes and Press Enter
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password: << Enter password of destination machine user (ram)

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

Metoda 2:(ručně)

Tato metoda zahrnuje vygenerování páru klíčů SSH na zdrojovém počítači a jeho umístění na cílový počítač tak, že se do něj ručně přihlásíte.

Nejprve se přihlaste do zdrojového počítače a pomocí následujícího příkazu vytvořte pár klíčů SSH.

[raj@server ~]$ ssh-keygen

Výstup:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/raj/.ssh/id_rsa):  << Press Enter
Created directory '/home/raj/.ssh'.
Enter passphrase (empty for no passphrase):  << Press Enter
Enter same passphrase again:  << Press Enter
Your identification has been saved in /home/raj/.ssh/id_rsa.
Your public key has been saved in /home/raj/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:0oqVhWQzIV+hFFHkquVCTihmORqtt+vXHIXhhXoIosI [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|    . XB=.       |
|. .  *oB.        |
|o. . +++o        |
|oE..o +=.        |
|+=o o.*.S        |
|++.+ *.o         |
|o . =oo.         |
| . ...o          |
| .+o             |
+----[SHA256]-----+

Jakmile vytvoříte, najdete v adresáři .ssh dva soubory id_rsa a id_rsa.pub. Pro přihlášení bez hesla budeme používat id_rsa.pub.

[raj@server ~]$ ls -al ~/.ssh/

Výstup:

total 8
drwx------. 2 raj raj   38 Sep  6 00:37 .
drwx------. 3 raj raj   74 Sep  6 00:37 ..
-rw-------. 1 raj raj 1675 Sep  6 00:37 id_rsa
-rw-r--r--. 1 raj raj 406 Sep 6 00:37 id_rsa.pub
Pomocí příkazu scp můžete zkopírovat soubor id_rsa.pub do cíle nebo zkopírovat obsah souboru id_rsa.pub a vložit jej do cílového počítače (soubor ~/.ssh/authorized_keys).

Metoda kopírování:1

Přihlaste se k cílovému počítači a vytvořte adresář .ssh v domovském adresáři uživatele, pokud neexistuje.

[ram@client ~]$ mkdir ~/.ssh

[ram@client ~]$ chmod 700 ~/.ssh

Použijte scp příkaz ke zkopírování souboru id_rsa.pub do /tmp cílového počítače adresář.

[raj@server ~]$ scp -pr  ~/.ssh/id_rsa.pub [email protected]:/tmp

Budete muset zadat heslo pro cíl, protože ještě musíme nakonfigurovat přihlášení bez hesla.

Vložte zdrojový klíč do souboru autorizovaných klíčů pro přihlášení bez hesla.

[ram@client ~]$ cat /tmp/id_rsa.pub >> ~/.ssh/authorized_keys

Aktualizujte oprávnění souboru.

[ram@client ~]$ chmod 600 ~/.ssh/authorized_keys

Způsob kopírování:2

Přihlaste se k cílovému počítači a vytvořte adresář .ssh v domovském adresáři uživatele, pokud neexistuje.

[ram@client ~]$ mkdir ~/.ssh

[ram@client ~]$ chmod 700 ~/.ssh

Upravte soubor author_keys.

[ram@client ~]$ vi ~/.ssh/authorized_keys

Na zdrojovém počítači zobrazte obsah souboru id_rsa.pub pomocí příkazu cat. Zkopírujte obsah jeho výběrem (za předpokladu, že používáte PUTTY).

[raj@server ~]$ cat ~/.ssh/id_rsa.pub

Výstup: (Ukázka)

Umístěte výše uvedený obsah do souboru Authorized_keys na cílovém místě a uložte jej. Potom aktualizujte oprávnění souboru.

[ram@client ~]$ chmod 600 ~/.ssh/authorized_keys

Otestujte přihlášení bez hesla

Nyní přistupujte ke vzdálenému počítači pomocí SSH. Přenese vás přímo do shellu, aniž byste požadovali heslo.

[raj@server ~]$ ssh [email protected]

[ram@client ~]$ uname -a

Závěr

To je vše. Toto přihlášení bez hesla šetří čas a energii správcům systému. Podělte se o svůj názor v sekci komentářů.


Cent OS
  1. Jak nastavit SSH přihlášení bez hesla

  2. Jak nastavit server NFS na CentOS 7 / RHEL 7

  3. Jak nastavit klíče SSH na CentOS 8

  1. Heslo Méně Přihlášení SSH – CentOS 6 / RHEL 6

  2. Jak nastavit SysLog Server na CentOS 7 / RHEL 7

  3. Jak nastavit klíče SSH pro přihlášení k ssh „bez hesla“ v systému Linux

  1. Jak nastavit přihlášení k SSH bez hesla

  2. Jak nastavit přihlášení SSH bez hesla v Linuxu

  3. Jak nastavit klíče SSH pro přihlášení k SSH „bez hesla“ na CentOS/RHEL