VPS OVH Debian 8 : Premiers pas

Permalink | Publié le 3 avril 2017, dernière modification le 8 avril 2018.

Cet article est le premier d’une série d’articles dédiés à la configuration d’un serveur VPS OVH équipé de Debian 8 (Jessie).

Mot de passe root et nouvel utilisateur

Une fois le paiement effectué et le mail d’installation reçu, on peut commencer à bricoler le VPS. La première chose à faire est de changer le mot de passe de l’utilisateur root car il a été transmis par email donc il est potentiellement compromis, et la seconde chose de créer un nouvel utilisateur pour l’utilisation quotidienne, de manière à réduire les risques.

passwd root
adduser NOM

On saisi deux fois le mot de passe et c’est bon. Pour ce qui est de la création de l’utilisateur je ne m’embête pas à remplir les champs sur les renseignements personnels, uniquement le mot de passe. On va rajouter l’utilisateur au groupe sudo pour qu’il puisse avoir des droits administrateurs :

usermod -a -G sudo gach

SSH : Authentification par clés

Pour se connecter de manière sécurisée, il est nécessaire de générer une paire de clés RSA pour SSH au lieu d’utiliser des mots de passe. Cette opération s’effectue sur votre machine et non pas sur le VPS. La commande ssh-keygen recommande une taille de 2048 bits, OVH quand à lui préconise 4096 dans son guide à ce sujet. La référence française sur les bonnes pratiques à adopter, l’ANSSI, recommande une clé de 2048 bits pour RSA pour une durée de vie de 3 ans.

ssh-keygen -b 4096

Il nous est demandé de choisir où enregistrer les clés, on peut choisir de laisser par défaut et obtenir les fichiers id_rsa (clé privée) et id_rsa.pub (clé publique), générés dans le répertoire ~/.ssh. Il faut ensuite choisir une passphrase de protection, et c’est fini pour la génération des clés. On va ensuite utiliser une commande qui va ajouter notre clé publique à la liste des clés autorisées par le serveur :

ssh-copy-id -i id_rsa.pub NOM@vpsxxxxxx.ovh.net

Un mot de passe est demandé, c’est celui qui a été défini lors de la création de l’utilisateur. On va ensuite se connecter en SSH tout simplement avec la commande suivante :

ssh NOM@vpsxxxxxx.ovh.net

Et maintenant, contrairement à ce qu’il aurait pu se passer si vous vous étiez déjà connecté avant cette étape, il ne demande non pas le mot de passe de l’utilisateur root, mais bien la passphrase de votre clé privée, définie durant sa création. Il est fortement conseillé de définir une passphrase, mais sachez que dans le cas contraire, vous seriez connecté automatiquement.

Il est possible de voir les clés autorisées à se connecter au serveur, en affichant le fichier ~/.ssh/authorized_keys. Il est nécessaire de copier la clé publique pour chaque utilisateur d’un serveur.

SSH : Changer le port et interdire root

On continu toujours dans la sécurisation de notre serveur, avec le changement du port d’écoute de SSH, pour éviter que des robots viennent faire du brute-force dessus. Et vu que c’est dans le même fichier de configuration, on va empêcher une connexion en SSH avec le compte root. On pourra toujours y accéder en s’y connectant avec un autre compte et en effectuant un sudo su.

sudo nano /etc/ssh/sshd_config

Il y a donc deux lignes à modifier, tout au début le port 22 en y mettant celui de votre choix mais qui ne risque pas d’être utilisé par un autre programme : vous pouvez aller jusqu’à 65535. Puis ensuite la ligne « PermitRootLogin » :

Port 4999
PermitRootLogin no

On enregistre le fichier (Ctrl + o) puis on sort (Ctrl + x) et on recharge la configuration SSH à l’aide de la commande :

sudo sshd restart

Pour tester ces changements, on se déconnecte du serveur puis on adapte la commande SSH avec le nouveau numéro de port et la permission sera refusée systématiquement.

ssh root@vpsxxxxxx.ovh.net -p 4999

Mises à jour

Voilà maintenant il ne reste plus qu’à faire une petite mise à jour du système et votre VPS est prêt à l’utilisation !

sudo apt-get update
sudo apt-get upgrade

Perl : définir les locales

Il est possible que vous ayez un message régulièrement, un simple warning de la part de Perl, venant vous rappeler que les paramètres régionaux (locales) ne sont pas définies. Pour régler cela, il faut regénérer les bons paramètres régionaux :

sudo locale-gen fr_FR.UTF-8

Puis ensuite reconfigurer en sélectionnant fr_FR.UTF-8 et le problème ne devrait plus survenir :

sudo dpkg-reconfigure locales

C’est à priori dû aux différences entre la machine locale et le serveur concernant les langues supportées.

Commentaires

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *