SSH

De Travail-ivan

SSH[modifier | modifier le wikicode]

Se connecté en ssh avec mot de passe[modifier | modifier le wikicode]

Pour vous connecter en SSH (Secure Shell) à un serveur distant, vous avez besoin d'un terminal ou d'une interface en ligne de commande. Voici la commande de base pour établir une connexion SSH :

ssh ivan@192.168.56.10

La première fois que vous vous connectez à un serveur, il se peut qu'on vous demande de confirmer l'authenticité de l'hôte. Cela permet de s'assurer que vous vous connectez au bon serveur. Acceptez la connexion en tapant "yes" lorsque vous avez vérifier l'empreinte.

Après cela, on vous demandera probablement le mot de passe du compte utilisateur sur le serveur. Entrez le mot de passe et appuyez sur Entrée.

Se connecté en ssh avec clés de chiffrement[modifier | modifier le wikicode]

Sur le serveur ssh[modifier | modifier le wikicode]

Entrer dans le fichier /etc/ssh/sshd_config

sudo nano /etc/ssh/sshd_config 

Ajouter ces deux ligne dans le fichier /etc/ssh/sshd_config du serveur ssh

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

Redémarrer le service ssh

Systemctl restart ssh

Sur le poste client[modifier | modifier le wikicode]

Générer sa clé publique, et sa clé privée afin de pouvoir s’authentifier sur le serveur OpenSSH

ssh-keygen -b 256 -t ecdsa
  • Appuyer sur Entrée pour accepter la localisation de la clé par défaut.
  • ssh-keygen demande ensuite une phrase de chiffrement (ou « passphrase », équivalent d'un mot de passe, mais sous forme de phrase).

Copier la clés publique sur serveur ssh

ssh-copy-id -i ~/.ssh/id_ecdsa.pub etusio@192.168.56.10


Depuis le poste client, relancez une connexion ssh au serveur, la phrase de chiffrement vous est bien demandée, cela vous permet de vérifier que la connexion avec clé publique est fonctionnelle.

ssh etusio@192.168.56.10


Sur le serveur ssh[modifier | modifier le wikicode]

Entrer dans le fichier /etc/ssh/sshd_config

sudo nano /etc/ssh/sshd_config 

Sur le serveur ssh , désactiver l’authentification par mot de passe pour juste conserver celle par clés dans le fichier de configuration /etc/ssh/sshd_config

# Autorisation de connexion par mot de passe
PasswordAuthentication no

Redémarrer le service ssh

Systemctl restart ssh

Maintenant lors de la connexion il demandera la passphrase a la place du mot de passe.

Vérifier L'empreinte SHA256[modifier | modifier le wikicode]

Tout d’abord, assurez-vous manuellement que l’identité du serveur (l’empreinte de la clé présentée) lors de la première connexion est bien celle de la clé publique présente sur le serveur.

ssh-keygen -l -f /etc/ssh/ssh_host_ecdsa_key.pub

à comparer à l’empreinte affichée sur le client


Utilisation de ssh-agent[modifier | modifier le wikicode]

L'agent ssh est particulièrement utile si vous vous connectez très régulièrement à une machine et que vous ne souhaitez pas retaper la phrase de passe liée à votre clé privée à chaque connexion. Mais attention, cela peut ouvrir certaines brèches en matière de sécurité.

Sur le client, taper les commandes suivantes, pour mettre en place le ssh-agent. Par défaut sous Debian, le bureau GNOME intègre un trousseau de clés qui fonctionne en adéquation avec ssh-agent et qui permet d’éviter de saisir à chaque fois des mots de passe.


exec ssh-agent $SHELL
ssh-add

L’utilisation de la variable $SHELL permet d’exécuter l’agent SSh dans l’interpréteur en cours d’utilisation.

Entrer la phrase de passe configurée au préalable. Pendant toute la durée de la connexion, il est possibled’avoir accès à la machine distante sans avoir à taper un mot de passe. Si le processus ssh-agent disparaît, il sera nécessaire de retaper le mot de passe.