Changer le port par défaut de SSH

Pour sécuriser l'accès à son serveur rien de mieux que de déplacer le port d'écoute du démon SSH sur un autre port. Ainsi tous les robots et autres scripts kiddies se heurteront à un mur au lieu de l'habituel réponse du service SSH, car bien entendu toutes ces tentatives d'attaques sont automatisées et configurées pour tenter que le port 22 pour les attaques SSH. Ces attaques n'ont pas le temps de tester d'autres ports, et continueront leur chemin sur l'adresse IP suivante.

Bien sûr il s'agit que d'une ruse, mais elle coûte tellement peu chère à mettre en place, et est tellement efficace que ce serait dommage de s'en priver.

La configuration du port d'écoute se fait dans le fichier /etc/ssh/sshd_config avec la clef Port, par défaut sur 22 et commentée. Il suffit donc de décommenter et de remplacer le port 22 par celui de son choix.

#Port 22
Port 22222

Vous êtes libre de mettre le port que vous souhaitez (faudra juste pas l'oublier) mais autant mettre un port assez élevé.

Derniers points avant de relancer le service SSH  :

  • Autoriser ce nouveau port dans le parefeu
  • Autoriser ce port pour SSH au niveau de SELinux

Pour autoriser le port 22222 au niveau du parefeu (ici firewalld) :

firewall-cmd --add-port=22222/tcp
firewall-cmd --add-port=22222/tcp --permanent

Voilà pour le parefeu. Pour SELinux :

semanage port -a -t ssh_port_t -p tcp 22222

Voila !

Pour vérifier la  liste des ports pour SSH dans SELinux :

semanage port -l | grep ssh

Pour relancer SSHd pour prise en compte de ce changement de port :

systemctl restart sshd

Ce qui est bon à savoir c'est que vous pouvez avoir plusieurs ports d'écoute pour SSH, et même préciser l'ip + port. On peut donc imaginer laisser le port 22 sur un réseau privé, mais changer celui sur le réseau public.

Depuis un client pour se connecter il y a l'option -p pour le client SSH :

ssh -p 22222 toto@mon.serveur.fr

En bonus, le mieux est d'ajouter un bloc de configuration dans votre .ssh/config concernant ce serveur et son nouveau port :

Host serveur
HostName mon.serveur.fr
User toto
Port 22222
Compression yes
ForwardAgent yes
ForwardX11 yes

La prochaine connexion pourra se faire avec simplement :

ssh serveur

Je parlerais sûrement plus tard des autres éléments à installer pour sécuriser son serveur (fail2ban, fwknop etc). En attendant amusez vous bien, et surtout, bonne année 2018 !


Ajouter un commentaire

Le code HTML est affiché comme du texte et les adresses web sont automatiquement transformées.

La discussion continue ailleurs

URL de rétrolien : https://www.linuxed.net/trackback/150

Fil des commentaires de ce billet