Cet article explique comment modifier le port Secure Shell (SSH) par défaut sur un serveur CentOS® ou Red Hat® Enterprise Linux®.
Ouvrir et modifier le fichier de configuration du démon SSH
-
Exécutez la commande suivante pour ouvrir le sshd_config fichier :
[root@server-01 ~]# vi /etc/ssh/sshd_config
-
Utilisez les touches fléchées pour faire défiler le fichier jusqu'à ce que vous trouviez le texte suivant :
#Port 22 #AddressFamily any #ListenAddress 0.0.0.0 #ListenAddress ::
-
Placez le curseur sur la ligne sous #Port 22 et appuyez sur le i touche pour entrer en mode insertion .
-
Appuyez sur Entrée clé pour créer une nouvelle ligne et tapez
Port <Specified Port Number>
.Port 2021
est le nouveau port SSH dans l'exemple suivant :#Port 22 Port 2021 #AddressFamily any #ListenAddress 0.0.0.0 #ListenAddress ::
-
Appuyez sur Échap touche pour quitter le mode insertion . Ensuite, quittez
vi
en tapant:wq
et en appuyant sur Entrée clé.
Lier le démon SSH au nouveau port
-
Installez les policycoreutils package pour lier le démon SSH au nouveau port SSH à l'aide de la commande suivante :
[root@server-01 ~]# yum install policycoreutils
-
Tapez
y
et appuyez sur Entrée touche pour poursuivre l'installation. Une fois cette tâche terminée, ajoutez les règles suivantes pour vous assurer que le démon SSH se lie au port spécifié :[root@server-01 ~]# semanage port -a -t ssh_port_t -p tcp 2021 [root@server-01 ~]# semanage port -m -t ssh_port_t -p tcp 2021
-
Redémarrez ensuite le démon SSH :
[root@server-01 ~]# systemctl restart sshd
Vérifier la liaison au nouveau port
Assurez-vous que les modifications de port ont pris effet en utilisant soit netstat ou ss commande comme indiqué dans l'exemple suivant :
[root@server-01 ~]# ss -tlpn| grep ssh
LISTEN 0 128 0.0.0.0:2021 0.0.0.0:* users:(("sshd",pid=28065,fd=4))
LISTEN 0 128 [::]:2021 [::]:* users:(("sshd",pid=28065,fd=6))
[root@server-01 ~]# netstat -tlpn| grep ssh
tcp 0 0 0.0.0.0:2021 0.0.0.0:* LISTEN 28065 sshd
tcp6 0 0 :::2021 :::* LISTEN 28065 sshd
Comme vous pouvez le voir, les deux commandes montrent que Port 2021
est maintenant en place.
Mettre à jour votre pare-feu
Mettez à jour votre pare-feu pour vous assurer que les connexions entrantes sont autorisées sur le nouveau port spécifié. Saisissez les deux lignes suivantes :
[root@server-01 ~]# sudo firewall-cmd --add-port=2021/tcp --permanent
success
[root@server-01 ~]# sudo firewall-cmd --remove-service=ssh --permanent
success
Remarque : Le premier changement inclut le Port 2021
dans l'exemple.
Vérifier le changement par connexion
Une tentative de SSH devrait renvoyer ce qui suit :
`ssh: connect to host 104.130.26.57 port 22: No route to host`
Maintenant, en utilisant le -p <Port Number>
option, vous devriez pouvoir vous connecter avec succès :
ssh [email protected] -p 2021
[email protected]'s password: