Dans cette documentation nous verrons ensemble comment désactiver l'accès root en SSH.
Nous verrons également comment créer une clé RSA pour sécuriser l'accès SSH au serveur PVE tout en permettant l'accès uniquement à un compte spécifique et uniquement depuis votre ordinateur.
ssh-keygen -t rsa -b 2048 -f Chemin_Répertoire/Nom-cle.



Nous allons en suite devoir envoyer la clé RSA sur le serveur PVE et la placer dans le fichier "authorized_keys." se trouvant dans le répertoire /home/username/.ssh de l'utilisateur qui sera autorisé à se connecter en SSH.
Ce fichier est utilisé lors de l’authentification pour déterminer si la clé privée de l’utilisateur est conforme à la clé publique inscrite dans le fichier.
ssh-copy-id -i ~/.ssh/id_rsa.pub <username>@<ipaddress>

/etc/ssh/sshd_config#Authentication" modifier les paramètres comme ceci :# Authentication:
#LoginGraceTime 2m
PermitRootLogin no

Ne pas quitter le fichier ou l'enregistrer pour l'instant.
Nous allons à présent le configurer pour autoriser l'accès en SSH pour l'utilisateur souhaité à l'aide de sa clé RSA
#Authentication" à la suite des précédentes modifications, entrer les paramètres suivants :PasswordAuthentication no
PermitEmptyPasswords no
PubkeyAuthentication yes
AllowUsers user@IP_Source

Avec cette configuration, l'utilisateur root n'aura plus la possibilité de se connecter en SSH sur le serveur PVE, l'utilisation de password y compris vide ne sera plus autorisée. A la place l'utilisation de clé RSA sera nécessaire pour se connecter en SSH.
De plus, seul l'utilisateur qui sera indiqué pourra se connecter depuis l'IP indiquée (user@IP_Source)
ATTENTION : Il est possible d'autoriser ou de refuser l'accès à une liste d'utilisateurs, cependant je ne rentrerai pas dans le détail ici. Pour en savoir plus je vous invite à vous renseigner sur le sujet.
Il faut à présent relancer le service SSH pour appliquer les modifications.
Taper la commande suivante :
systemctl restart sshd.service

Pour la démonstration je vais effectuer deux tests de connexion :
ssh -i Chemin_Complet_De_La_Clé\Clé_privée User@IP_PVE
Pour des raisons de sécurité la passphrase de la clé sera demandée.
Après l'avoir entrée, l'accès en SSH sera autorisé.

ssh -i Chemin_Complet_De_La_Clé\Clé_privée User@IP_PVE
Cependant, comme la configuration SSH ne prend pas en compte cette machine l'accès est simplement refusé bien que nous utilisions la bonne clé RSA.