Générer des clés

Pour éviter de devoir taper des mots de passe constament en se connectant avec SSH, ont peut générer sur un client SSH des clés asymétrique (publique / privée) qui serviront à authentifier la personne qui se connecte en lieu et place du mot de passe.

Sur le client on génère les clés :

ssh-keygen -b 4096

Les fichiers id_ed25519 et id_ed25519.pub se créés dans le dossier ~/.ssh/

Puis on copie la clé publique sur le serveur :

# @client
ssh-copy-id user@srv.admx.osef
# {mot de passe} [entrée]

Et voilà ! Désormais un ssh user@srv.admx.osef depuis le client Ubuntu ne vous demandera plus de mot de passe.

Changer le mot de passe d'une clé existante :

ssh-keygen -p -f ~/.ssh/id_ed25519

Créer un fichier « config »

Il est possible de créer le fichier texte ~/.ssh/config pour y stocker des paramètres qui n'auront plus à être systématiquement écrit. Exemple :

Host srv
        HostName srv.admx.osef
        User user

Host *
        Compression yes

Désormais un simple ssh srv suffira à contacter le serveur.