L’administration à distance des systèmes Linux repose principalement sur SSH (Secure Shell), qui fonctionne par défaut sur le port TCP 22. Cependant, il peut être judicieux de modifier ce port pour renforcer la sécurité. Par exemple, changer le port par défaut permet de réduire les risques liés aux attaques par force brute ciblant spécifiquement le port 22. Dans ce tutoriel, nous verrons comment remplacer le port 22 par un autre, comme le port 222.
Étape 1 : Localiser le fichier sshd_config
Sur la plupart des Linux, le fichier de configuration du serveur SSH sshd_config se trouve généralement dans /etc/ssh/sshd_config, mais pour être sûr, recherchez-le avec :
find /etc/ -name "sshd_config"
Étape 2 : Modifier le port SSH
On va corriger ce file, il faut décommenter la ligne pour activer et modifier numéro de port 22 -> 222.
Ouvrez le fichier sshd_config avec un éditeur de texte comme nano :
sudo nano /etc/ssh/sshd_config
Étape 3 : Vérifier et Modifier ssh.socket (si nécessaire)
Sur certains systèmes, SSH utilise systemd socket activation au lieu de démarrer sshd directement. Dans ce cas, vous devez également modifier le fichier ssh.socket.
Vérifiez si ssh.socket est actif :
systemctl status ssh.socket
Si actif, vous verrez active (listening). Passez à l’étape suivante pour le modifier.
Si ssh.socket n’est pas actif (affiché comme inactive ou not found), vous pouvez ignorer cette étape et passer directement à l’étape 4.
Modifiez le fichier ssh.socket :
sudo nano /lib/systemd/system/ssh.socket
Trouvez et modifiez la ligne ListenStream dans la section [Socket] :
ListenStream=22
Remplacez par :
ListenStream=222
Appliquez les changements :
sudo systemctl daemon-reload sudo systemctl restart ssh.socket sudo systemctl restart sshd
Étape 4 : Redémarrer le service SSH
Enregistrez le fichier et redémarrez le démon SSH:
systemctl restart sshd
On va verifier les resultats:
netstat -tupln | grep ssh
La ligne
tcp 0.0.0.0:222 LISTEN
indique que le port 222 est ouvert
Verification / configuration de firewall:
Pour pouvoir vous reconnecter à votre serveur après déconnexion ou redémarrage, vous devez configurer le pare-feu:
Si vous utiliser ufw , vous devez autoriser le nouveau port à l’aide de la commande:
sudo ufw allow 222/tcp
Pour vérifier status:
ufw status verbose
Si vous utiliser iptables, vous devez autoriser le nouveau port à l’aide de la commande:
sudo /sbin/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 222 -j ACCEPT
Si vous utiliser firewalld, vous devez autoriser le nouveau port à l’aide de la commande:
sudo firewall-cmd --permanent --add-port=222/tcp sudo firewall-cmd reload
Si vous avez des paramètres de pare-feu sur le panneau d’administration de votre hosting VPS, vous devez y changer le port la-bas.
Aussi, n’oubliez pas de changer les ports sur votre SSH client (Putty, MobaXterm)!
Plus d’information à propos de configuration de SSH et firewalls ici:
Bonne chance!