Linux réalise une connexion SSH sans mot de passe à d'autres serveurs

Aperçu

Rsync doit entrer le mot de passe du serveur cible à chaque fois que plusieurs machines sont synchronisées. Ceci est très gênant. Nous pouvons utiliser SSH pour obtenir une connexion sans mot de passe.

Principe Xshell

Vous devez saisir le nom d'utilisateur, le mot de passe et le nom d'hôte chaque fois que vous vous connectez au serveur Linux via Xshell. Vous n'avez pas besoin de saisir un mot de passe à chaque fois que vous vous connectez. Seule la première connexion nécessite un mot de passe.

En fait, la première fois que vous vous connectez, il s'agit en fait d'un processus d'établissement d'une confiance. En fait, le serveur génère une clé que vous pouvez enregistrer.

par exemple

L'utilisateur a de la machine A souhaite utiliser l'identité de l'utilisateur B pour se connecter à la machine B sur la machine A. Les opérations suivantes sont requises:

Étapes:
①Utilisateur a de la machine A, générez une paire de
commandes clavier sur la machine A :

ssh-keygen -t rsa

ssh-keygen signifie générer une clé, rsa est le nom de l'algorithme pour générer la clé

② La clé générée est divisée en clé publique et clé privée. L'utilisateur a doit copier la clé publique dans le fichier authorithxxxx_keys dans le répertoire personnel de l'utilisateur b sur la machine B.Il
existe deux façons de copier: Il est
recommandé d'utiliser directement la méthode 2, ce qui est simple et grossier . La méthode 1 est juste à comprendre.
Méthode 1:
a) Utilisez l'utilisateur b pour vous connecter à la machine B
b) Modifiez authorithxxxx_keys et ajoutez le contenu de la clé publique
Méthode 2: Les
étapes ci-dessus sont sur la machine A, utilisez l'utilisateur a pour exécuter la commande suivante: ssh- copy-id b @ B peut effectuer les deux étapes ci-dessus

③ L'utilisateur a de la machine A peut utiliser ssh b @ B pour se connecter.

Démo

Par défaut, un mot de passe est requis pour se connecter,

[root@zjj101 demo]# ssh root@zjj102
root@zjj102's password: 
Last login: Thu Oct 15 09:37:00 2020 from 172.16.10.182
[root@zjj102 ~]# ^C
[root@zjj102 ~]# exit
登出
Connection to zjj102 closed.
[root@zjj101 demo]# 

Générez la clé publique et la clé privée, enregistrez le contenu entre parenthèses par défaut, appuyez simplement sur Entrée trois fois,

[root@zjj101 demo]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:36l76tMgE8NF4emz1eg1Cdpja1S3u8kiOSoT3LjgM2E root@zjj101
The key's randomart image is:
+---[RSA 2048]----+
|         .o.     |
|         ...     |
|       . .o . . .|
|        +. o = o.|
|      . So+ B =. |
|     E +oo.O = ..|
|    o o ooooB  . |
|     + +  .*o.. o|
|      o oo*=o .+ |
+----[SHA256]-----+
[root@zjj101 demo]# 

Le répertoire est un répertoire caché. Si vous devez entrer et l'
afficher, vous devez utiliser ls -al pour l'afficher,
ou directement cd vers /root/.ssh/

[root@zjj101 demo]# cd /root/.ssh/
[root@zjj101 .ssh]# ls
id_rsa  id_rsa.pub  known_hosts
[root@zjj101 .ssh]# cat id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDq6Z1CKsbHw2nqycGXjnoxbi2l+DQt5Hnv5OmMjx8DdB1AxUBxwGZwWSMAWbqiOpbHOlOkHUgNPEXhv1AKP+Bg+W/v3w2xBgBI/YQpSTgMQCoKBzT1GNtrn3VgZ2X/k3PDzS17WCBvhO2InWAMIBhqT+ik2i+viTBYOD9AogyWoCe42zL8aTE7eQfCyzf/xMbaMd4Yll1JeRNPgYN6VzLW5LqXb3O5DHwcUsed0M659gboCRqcpARrvtXkeiZt7kyuJb2DOv6ADPINWA9iDwPYMXK44KUm3HnsnFo1yGpyVbtuDW/zZSPf5eaM0QmRGTZ2OpxWvExlzzGthUu0jRl7 root@zjj101
[root@zjj101 .ssh]# 

id_rsa clé privée id_rsa.pub est la clé publique

Voie 2

La méthode 1 doit être copiée manuellement, ce qui est très gênant. Si vous avez besoin de Baidu par vous-même, vous pouvez directement démontrer la méthode 2.
ssh-copy-id xxx

[root@zjj101 .ssh]# ssh-copy-id root@zjj102
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/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
root@zjj102's password: 

Number of key(s) added: 1

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

[root@zjj101 .ssh]#

Connectez-vous directement, connectez-vous à zjj102 sans saisir le mot de passe ci-dessous

[root@zjj101 .ssh]# ssh root@zjj102
Last login: Thu Oct 15 10:27:23 2020 from zjj101
[root@zjj102 ~]# 

Vérifiez si l'écriture est réussie,
vous pouvez voir que les clés_autorisées ont déjà le contenu. Dans des circonstances normales, comme le mot de passe n'est pas entré dans les étapes ci-dessus, il doit réussir.

[root@zjj102 ~]# cd /root/.ssh/
[root@zjj102 .ssh]# ls
authorized_keys
[root@zjj102 .ssh]# cat authorized_keys 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDq6Z1CKsbHw2nqycGXjnoxbi2l+DQt5Hnv5OmMjx8DdB1AxUBxwGZwWSMAWbqiOpbHOlOkHUgNPEXhv1AKP+Bg+W/v3w2xBgBI/YQpSTgMQCoKBzT1GNtrn3VgZ2X/k3PDzS17WCBvhO2InWAMIBhqT+ik2i+viTBYOD9AogyWoCe42zL8aTE7eQfCyzf/xMbaMd4Yll1JeRNPgYN6VzLW5LqXb3O5DHwcUsed0M659gboCRqcpARrvtXkeiZt7kyuJb2DOv6ADPINWA9iDwPYMXK44KUm3HnsnFo1yGpyVbtuDW/zZSPf5eaM0QmRGTZ2OpxWvExlzzGthUu0jRl7 root@zjj101
[root@zjj102 .ssh]# 

Annuler la connexion sans mot de passe

Effacez simplement les informations de clé publique pertinentes dans le fichier authorized_keys de /root/.ssh/ du serveur cible.

[root@zjj102 ~]# cd /root/.ssh/
[root@zjj102 .ssh]# ls
authorized_keys
[root@zjj102 .ssh]# cat authorized_keys 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDq6Z1CKsbHw2nqycGXjnoxbi2l+DQt5Hnv5OmMjx8DdB1AxUBxwGZwWSMAWbqiOpbHOlOkHUgNPEXhv1AKP+Bg+W/v3w2xBgBI/YQpSTgMQCoKBzT1GNtrn3VgZ2X/k3PDzS17WCBvhO2InWAMIBhqT+ik2i+viTBYOD9AogyWoCe42zL8aTE7eQfCyzf/xMbaMd4Yll1JeRNPgYN6VzLW5LqXb3O5DHwcUsed0M659gboCRqcpARrvtXkeiZt7kyuJb2DOv6ADPINWA9iDwPYMXK44KUm3HnsnFo1yGpyVbtuDW/zZSPf5eaM0QmRGTZ2OpxWvExlzzGthUu0jRl7 root@zjj101

Je suppose que tu aimes

Origine blog.csdn.net/qq_41489540/article/details/109091590
conseillé
Classement