[Tuto] Changer le port SSH de votre serveur ( Debian 13 Trixie )

EVO

Administrateur
Membre du personnel
25 Novembre 2019
10 761
2 374
288
/var/run/docker.sock
[Tuto] Changer le port SSH de votre serveur ( Debian 13 )

:giggle:

Testé sur Debian 13 Trixie


Sommaire :
1/ Ajout d'un fichier de configuration personnalisé
2/ Redémarrage du service ssh
3/ Aller plus loin
___A/ Vérification de la validité de le configuration
___B/ Vérification de la validité de le configuration et affichage de configuration actuelle


:giggle:

1/ Ajout d'un fichier de configuration personnalisé

Le port d'écoute de ssh ce trouve dans /etc/ssh/sshd_config, nous allons rajouter un fichier de configuration dans sshd_config.d afin de surcharger cette configuration.

Pour passer en root :
Code:
su -

Puis on modifie le fichier de configuration :
Code:
nano /etc/ssh/sshd_config.d/1000-port.conf
1755502071488.png

Dans ce fichier, vous allez rajouter 1 ligne :
Code:
Port 2222
1755502140861.png
Dans mon exemple, j'ai choisi 2222. Il représente le futur port SSH, je vous conseil de choisir supérieur à 1024 et inférieur à 65535.

Puis on enregistre, avec Ctrl+X et je confirme avec Y puis Enter


2/ Redémarrage du service ssh

Enfin on redémarre le service ssh :

Code:
systemctl restart ssh

Note : Le redémarrage du service SSH ne "casse" pas votre connexion actuelle, je vous conseil de vous connecter via une 2eme session SSH pour controler le bon fonctionnement du changement de port avant de vous déconnecter de votre session actuelle.

3/ Aller plus loin ....

A/ Vérification de la validité de la configuration

Code:
ssh -t
Exécuter la commande si dessus ( mode test ) pour vérifier uniquement la validité du fichier de configuration et l'intégrité des clés. Si tout est ok, alors la commande ne retourne rien.

B/ Vérification de la validité de la configuration et affichage de configuration actuelle

Code:
ssh -T
Exécuter la commande si dessus ( mode test étendu), pour vérifier la validité du fichier de configuration et afficher la configuration effective.


Source : https://linux.die.net/man/8/sshd , https://www.man7.org/linux/man-pages/man5/sshd_config.5.html

2025-08-18 - Refonte du tuto pour utiliser la méthode de l'ajout d'un fichier de configuration dans sshd_config.d et ajout de la section "Aller plus loin"
2021-07-11 - Création
 
Dernière édition:
  • J'aime
Réactions: MilesTEG
Hello,
petit complément suite à un lxc récalcitrant pour Proxmox: il faut désactiver et réactiver le service ssh pour que la modif soit prise en compte:

systemctl disable ssh.socket
systemctl enable ssh
Redémarrer le container

Source (forum proxmox)
 
Salut
Perso je préfère passer par l’ajout d’un fichier dans /etc/ssh/sshd_config.d/ 😊
J’en profite alors pour ajouter les réglages pour l’accès via clé ssh 🙂
Je ferais un complément au tuto de @EVO pour ça un de ces 4 😊
 
Salut
Perso je préfère passer par l’ajout d’un fichier dans /etc/ssh/sshd_config.d/ 😊
J’en profite alors pour ajouter les réglages pour l’accès via clé ssh 🙂
Je ferais un complément au tuto de @EVO pour ça un de ces 4 😊
Mais pourquoi je n'y ai pas pensé avant 🤦‍♂️
Effectivement tu as raison c'est plus logique de faire une conf custom à part, en plus ça ne nécessitera pas une action à chaque mise à jour du paquet openssh...

Et du coup, sur Proxmox, tu n'as plus besoin de faire la manip disable/enable ?
 
  • J'aime
Réactions: EVO
Et du coup, sur Proxmox, tu n'as plus besoin de faire la manip disable/enable ?
De quelle manipulation parles-tu ?

Avec la clé ssh je lance une connexion sans devoir entrer mon mot de passe.
Mais ça nécessite un peu plus de travail que simplement mettre un .conf dans le dossier /etc/ssh/sshd_config.d/ .
 
Je parle de la manip que je cite au second message de ce fil, pour que le changement de port soit pris en compte sur un lxc dans proxmox
 
Perso je préfère passer par l’ajout d’un fichier dans /etc/ssh/sshd_config.d/ 😊
Alors oui, maintenant c'est une meilleur pratique, il me faut modifier le tuto.

Attention cependant pour ceux qui souhaite passer a cette solution, si votre installation a un peu d'age, c'est pas forcément pris en charge ( car les anciens fichiers de configuration ne le prennent pas en charge )

Vous devez vous assurez d'avoir la ligne : Include /etc/ssh/sshd_config.d/*.conf
Au début du fichier /etc/ssh/sshd_config

Si ce n'est pas le cas, vous pouvez "reset" le fichier sshd_config en renommant l'actuelle et en remplaçant le nouveau ( attention vous perdez alors les modifications ! ) :

Code:
mv /etc/ssh/sshd_config /etc/ssh/sshd_config.bak && cp /usr/share/openssh/sshd_config /etc/ssh/sshd_config

Puis vous pouvez créer un fichier pour y inclure vos modifications, qui vont alors surcharger sshd_config :
Code:
nano -l /etc/ssh/sshd_config.d/1000-maconf.conf
( le nom du fichier est libre du moment que l'extension à la fin est bien .conf )
 
  • J'aime
Réactions: MilesTEG