ObjectifQuand vous commandez votre VPS, une distribution est préinstallée, mais aucun protocole de sécurité n’est mis en place nativement. Il vous revient donc de sécuriser votre VPS, point sur lequel OVH ne pourra pas intervenir.
Ce guide a pour but de vous donner des conseils généraux pour sécuriser votre serveur.
OVH met à votre disposition des machines dont la responsabilité vous revient. En effet, n’ayant aucun accès à ces machines, nous n’en sommes pas les administrateurs. Il vous appartient de ce fait d’en assurer la gestion logicielle et la sécurisation au quotidien. Nous mettons à votre disposition ce guide afin de vous accompagner au mieux sur des tâches courantes. Néanmoins, nous vous recommandons de faire appel à un prestataire spécialisé si vous éprouvez des difficultés ou des doutes concernant l’administration, l’utilisation ou la sécurisation d’un serveur. Plus d’informations dans la section “Aller plus loin” de ce guide.
Prérequis Être connecté en SSH à votre VPS (accès root).
En pratiquePlusieurs conseils vont vous être apportés. Attention, ce guide est général. Certaines commandes nécessitent d’être adaptées à la distribution que vous utilisez. Quelques informations vous conseillent d’utiliser des outils externes. N’hésitez pas à vous référer à la documentation officielle de ceux-ci pour obtenir de l’aide.
Mettre à jour le systèmeLes développeurs des distributions font de nombreuses mises à jour des paquets, très souvent pour des raisons de sécurité. Le maintien à jour de votre distribution est donc un point capital pour sécuriser votre VPS.
Cette mise à jour passera par deux étapes :
La mise à jour de la liste des paquets
apt-get update
La mise à jour des paquets eux-mêmes
apt-get upgrade
Une fois cette étape terminée, votre système est à jour. Cette opération est à effectuer régulièrement.
Modifier le port d’écoute par défaut du service SSH
L’une des premières actions à effectuer sur votre serveur est celle du port d’écoute du service SSH. L’écoute est par défaut définie sur le port 22. Il est donc conseillé de ne pas le laisser en l’état et de le modifier. En effet, la plupart des piratages de serveurs sont faits par des robots qui ciblent par défaut le port 22. Modifier son paramétrage leur compliquera la tâche et rendra votre serveur plus difficile à atteindre.
Voici la commande à effectuer pour modifier le fichier de configuration du service :
nano /etc/ssh/sshd_config
La commande nanoest donnée à titre d’exemple, vous pouvez utiliser la commande vim ou toute autre commande permettant l’édition du fichier sshd_config.
Il faut ensuite visualiser la ligne suivante :
# What ports, IPs and protocols we listen for Port 22
Remplacez le nombre 22 par celui de votre choix. Veuillez toutefois à ne pas renseigner un numéro de port déjà utilisé sur votre système. Sauvegardez puis quittez le fichier de configuration.
Il vous faut ensuite redémarrer votre service :
/etc/init.d/ssh restart
À présent, lors de votre demande de connexion SSH sur votre machine, vous devrez obligatoirement renseigner le nouveau port :
ssh root@votrevps.ovh.net -p NouveauPort
Modifier le mot de passe associé à l’utilisateur “root”
À l’installation d’une distribution, un mot de passe est créé automatiquement pour l’accès principal (root). Il est très fortement conseillé de le personnaliser en le modifiant. Pour cela, une fois connecté, il vous suffit de taper la commande suivante :
passwd root
Votre système vous demandera alors de rentrer votre nouveau mot de passe deux fois pour le valider. Attention, celui-ci ne s’affichera pas lors de l’écriture, par mesure de sécurité. Vous ne pourrez donc pas voir les caractères saisis.
Une fois cette opération effectuée, vous devrez renseigner le nouveau mot de passe dès votre prochaine connexion sur le système.
Créer un utilisateur avec des droits restreints et agir sur le système avec les droits rootLa création d’un nouvel utilisateur se fait avec la commande suivante :
adduser NomUtilisateurPersonnalisé
Remplissez ensuite les différentes informations demandées par le système (mot de passe, nom, etc).
Cet utilisateur sera autorisé à se connecter à votre système en SSH avec le mot de passe indiqué lors de sa création.
Une fois connecté à votre système avec ce dernier, si vous souhaitez effectuer des opérations nécessitant les droits root, il suffira de taper la commande suivante :
su root
Il faudra alors indiquer le mot de passe associé à l’utilisateur root pour valider l’opération.
Désactiver l’accès au serveur via l’utilisateur root
L’utilisateur root est créé par défaut sur les systèmes UNIX, et est celui qui possède le plus de droits sur votre système. Il est déconseillé, voire dangereux de laisser votre VPS accessible uniquement via cet utilisateur, ce dernier pouvant effectuer des opérations irréversibles sur votre serveur.
Il est recommandé de désactiver son accès direct via le protocole SSH.
Pour effectuer cette opération, il faut modifier le fichier de configuration SSH comme vous l’avez effectué précédemment pour modifier le port d’accès à votre VPS
nano /etc/ssh/sshd_config
Repérez ensuite la section suivante :
# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes
Remplacez le yes par no pour la ligne PermitRootLogin.
Pour que cette modification soit prise en compte il faut redémarrer le service SSH :
/etc/init.d/ssh restart
Maintenant, afin de pouvoir vous connecter à votre système, servez-vous de l’utilisateur que vous venez de créer.
Installer et configurer le paquet Fail2banFail2ban est un framework de prévention contre les intrusions dont le but est de bloquer les adresses IP inconnues qui tentent de pénétrer dans votre système. Ce paquet est recommandé, voire indispensable, pour vous prémunir contre toute tentative de brute force sur vos services.
L’installation de ce paquet s’effectue avec la commande suivante :
apt-get install fail2ban
Une fois le paquet installé, il faut modifier le fichier de configuration de ce dernier pour l’adapter à la vôtre. Avant toute modification, il est recommandé de faire une sauvegarde de ce fichier en tapant la commande suivante :
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.conf.backup
Apportez ensuite vos modifications sur le fichier :
nano /etc/fail2ban/jail.conf
Une fois l’opération terminée, vous devez redémarrer le service à l’aide de cette commande :
/etc/init.d/fail2ban restart
Pour toute demande complémentaire concernant Fail2Ban, n’hésitez pas à consulter la documentation officielle de cet outil :
https://www.fail2ban.org/wiki/index.php/Main_Page