Ceci est une ancienne révision du document !
Table des matières
Configuration d'un VPS chez OVH
Je souhaitais depuis un moment réinitialisé un VPS inutilisé, tournant avec une Debian 7 - Wheezy. On réinitialise ou installe donc le VPS avec Debian 8 - Jessie.
Et ensuite? Quelles sont les étapes pour sécuriser un peu le serveur avant de mettre en place un site web?
SSH - Première connexion
La première chose à faire, une fois le VPS (ré)initialisé, c'est de se connecter en ssh pour créer un utilisateur et modifier la configuration ssh pour empêcher la connexion en root. On pourra également mettre en place des clés pour se connecter sans taper de mot de passe.
OVH envoie le mot de passe du serveur par mail à l'initialisation de celui-ci.
$ ssh root@IP.DU.SER.VEUR root@IP.DU.SER.VEUR's password: root@vps12345:~#
Changer le mot de passe root
Le mot de passe root de votre serveur a transité, en clair (!), dans un mail. Il faut le changer rapidement.
root@vps12345:~# passwd Entrez le nouveau mot de passe UNIX : Retapez le nouveau mot de passe UNIX : passwd : le mot de passe a été mis à jour avec succès
Créer un nouvel utilisateur
Il faut créer un nouvel utilisateur pour exécuter les tâches courantes et surtout pour éviter de laisser la possibilité de se connecter via ssh avec l'utilisateur root.
root@vps89550:~# adduser nom-user Ajout de l'utilisateur « nom-user » ... Ajout du nouveau groupe « nom-user » (1000) ... Ajout du nouvel utilisateur « nom-user » (1000) avec le groupe « simon » ... Création du répertoire personnel « /home/nom-user »... Copie des fichiers depuis « /etc/skel »... Entrez le nouveau mot de passe UNIX : Retapez le nouveau mot de passe UNIX : passwd : le mot de passe a été mis à jour avec succès Modification des informations relatives à l'utilisateur nom-user Entrez la nouvelle valeur ou « Entrée » pour conserver la valeur proposée Nom complet []: nom-user N° de bureau []: Téléphone professionnel []: Téléphone personnel []: Autre []: Cette information est-elle correcte ? [O/n]
SSH - Modification de la configuration
Pour éviter une parties des attaques automatiques des scripts kiddies, il est possible de modifier le port de connexion de SSH. (C'est le port 22 par défaut.) On va aussi en profiter pour empêcher la connexion SSH avec le login root
et l'autoriser avec l'utilisateur que l'on vient de créer. Quand je modifie un fichier de configuration, j'ai l'habitude de laisser mes initiales en commentaire.
Je précise que je n'utilise pas le port 2222
, c'est un exemple.
# vim /etc/ssh/sshd_config (...) #SLF: #Port22 Port 2222 #Vous pouvez choisir n'importe quel port non-utilisé. (...) #SLF: #PermitRootLogin yes PermitRootLogin no (...) #SLF: AllowUsers nom-user (...)
Une fois la modification du fichier de configuration sauvegardée, il faut redémarrer le service SSH :
root@vps12345:~# service ssh restart
On ne perd pas la connexion lors du redémarrage du service SSH. On garde donc cette fenêtre ouverte et on fait quelques tests pour vérifier que tout s'est bien passé.
On essaye de se connecter en root sur le port 22 :
$ ssh root@IP.DU.SER.VEUR ssh: connect to host IP.DU.SER.VEUR port 22: Connection refused
On essaye sur le port qu'on a défini dans la configuration:
$ ssh root@IP.DU.SER.VEUR -p 2222 root@IP.DU.SER.VEUR's password: Permission denied, please try again.
On essaye enfin avec l'utilisateur qu'on a ajouté précédemment:
$ ssh nom-user@IP.DU.SER.VEUR -p 2222 nom-user@IP.DU.SER.VEUR's password: The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Thu Jan 26 16:20:19 2017 from ****************
SSH - Gestion des clés
$ ssh-copy-id nom-user@IP.DU.SER.VEUR -p 2222 /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys nom-user@IP.DU.SER.VEUR's password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'nom-user@IP.DU.SER.VEUR -p 2222'" and check to make sure that only the key(s) you wanted were added.