Authentification automatique par SSH sans mot de passe

Voici comment ça fonctionne

Imaginons un poste client et un poste serveur, nous tentons évidement d’etablir une connexion ssh du client vers le serveur.

Habituelement, nous tapons la commande : ssh user@machine , puis l’on entrait le mot de passe.

Pour éviter cela, nous allons faire 2 choses :

1. Créer un jeu de clés (clé publique et clé privée) sur le client

2. Copier la clé publique du client sur le serveur.

Voici comment procéder

Générer le jeu de clé/certificat sur le client

ssh-keygen -t dsa

On vous demandera où placer ce jeu, répondez par default.

On vous demandera une passphrase pour crypter votre certificat, vous pouvez ne rien mettre si vous estimez que vous seul pouvez acceder à votre compte local du client.

Copiez la clé publique sur le serveur

ssh-copy-id -i ~/.ssh/id_dsa.pub user@machine

Cette commande ne fait qu’ajouter votre clé publique dans un fichier sur le serveur. Voici une commande équivalente :

cat ~/.ssh/id_dsa.pub | ssh user@machine « cat – >> ~/.ssh/authorized_keys »

Voila, vous pouvez desormais vous identifier sur le serveur sans mot de passe.

viassh-copy-id « Le blog de Fanch.