Configuration du serveur SSH
Dans cette étape, nous allons configurer un serveur SSH de base sur la machine virtuelle LabEx. SSH (Secure Shell) est un protocole réseau cryptographique permettant d'exécuter des services réseau de manière sécurisée sur un réseau non sécurisé. Il est couramment utilisé pour la connexion à distance en ligne de commande et l'exécution de commandes à distance.
Tout d'abord, nous devons installer le serveur OpenSSH. OpenSSH est une suite d'outils de niveau réseau liés à la sécurité basée sur le protocole Secure Shell. Il fournit un canal sécurisé sur un réseau non sécurisé dans une architecture client/serveur.
Exécutez la commande suivante pour installer le serveur OpenSSH :
sudo apt update
sudo apt install -y openssh-server
Cette commande met d'abord à jour les listes de paquets pour les mises à jour et les nouvelles installations. Ensuite, elle installe le paquet openssh-server
. Le drapeau -y
répond automatiquement "oui" à toutes les invitations pendant l'installation.
Une fois l'installation terminée, le serveur SSH devrait démarrer automatiquement. Vous pouvez vérifier son statut en utilisant la commande suivante :
sudo systemctl status ssh
Vous devriez voir une sortie similaire à celle-ci :
● ssh.service - OpenBSD Secure Shell server
Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2023-10-24 10:00:00 UTC; 10s ago
Docs: man:sshd(8)
man:sshd_config(5)
Main PID: 1234 (sshd)
Tasks: 1 (limit: 4621)
Memory: 1.2M
CPU: 10ms
CGroup: /system.slice/ssh.service
└─1234 sshd: /usr/sbin/sshd -D
Oct 24 10:00:00 labex systemd[1]: Started OpenBSD Secure Shell server.
Si le service SSH n'est pas en cours d'exécution, vous pouvez le démarrer avec :
sudo systemctl start ssh
Maintenant que le serveur SSH est en cours d'exécution, vous pouvez vous y connecter depuis une autre machine en utilisant un client SSH. Pour vous connecter, vous aurez besoin de l'adresse IP de la machine virtuelle LabEx. Vous pouvez la trouver en utilisant la commande ifconfig
. Cependant, comme ifconfig
n'est peut-être pas installé par défaut, une commande plus fiable est ip addr
.
ip addr
Recherchez l'adresse inet
associée à l'interface réseau (généralement eth0
ou enp0s3
). Elle ressemblera à 192.168.1.100
.
Par exemple, la sortie pourrait ressembler à ceci :
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff
inet 172.17.0.2/16 brd 172.17.255.255 scope global eth0
valid_lft forever preferred_lft forever
Dans ce cas, l'adresse IP est 172.17.0.2
.
Vous pouvez ensuite utiliser cette adresse IP pour vous connecter au serveur SSH depuis une autre machine en utilisant la commande ssh labex@<IP_ADDRESS>
. Vous n'avez pas besoin de le faire maintenant, car nous allons utiliser Hydra sur la même machine.
Enfin, configurons le serveur SSH pour autoriser l'authentification par mot de passe. Par défaut, SSH préfère souvent l'authentification basée sur des clés, qui est plus sécurisée. Cependant, pour ce laboratoire, nous allons activer l'authentification par mot de passe pour plus de simplicité.
Modifiez le fichier de configuration du serveur SSH en utilisant nano
:
sudo nano /etc/ssh/sshd_config
Trouvez la ligne #PasswordAuthentication no
et supprimez le commentaire (supprimez le #
) et changez no
en yes
:
PasswordAuthentication yes
Enregistrez le fichier en appuyant sur Ctrl+X
, puis Y
, puis Entrée
.
Redémarrez le serveur SSH pour que les modifications prennent effet :
sudo systemctl restart ssh
Maintenant, le serveur SSH est configuré et prêt à autoriser l'authentification par mot de passe.