Administrer un serveur dédié – part 2 : Le socle

Après cette petite introduction, nous allons réellement commencer l’installation.

Mes choix

On va dans cet article voir comment utiliser l’interface Online qui est très intuitive donc vous devriez pas avoir besoin de moi. Puis configurer la Debian pour la sécuriser un peu avant de l’utiliser plus que ça.

Pourquoi une Debian ? car j’ai toujours aimé cette distribution qui est très stable, qui est la maman de beaucoup d’autres distribution avec une philosophie très appréciable ( non commerciale, collaborative et qui sort pas tous les 6 mois mais quand elle est prête). Donc un très bon choix pour un serveur qui se doit d’être sécurisé avec des mises à jours de sécurité très régulières.

———————————————————————————

27/04/2014 : Ajout de l’expiration du mot de passe au bout de 100 jours pour plus de sécurité (cmd chage)

22/06/2014 : Coquille sur update-rc.d qui prend uniquement le nom du fichier en paramètre et pas le chemin qui est toujours /etc/init.d

———————————————————————————

Installation du serveur via la panel Online

Tout d’abord il faut se connecter à l’interface qui est d’ailleurs super bien faite contrairement à celle d’OVH je trouve.

https://console.online.net

Dans le menu Serveur > Liste de vos serveurs choisir celui que vous venez de commander et cliquer dessus.

Cliquer sur le bouton Installer à droite dans le menu.

Choisir Distributions serveur > Debian 7 64 bits

Laisser le partitionnement par défaut, nous serons donc en RAID1 soit une bonne sécurité car 2 disques durs et les données sont en double. Si un disque dur lâche, Online se charge de le changer et comme ça aucune perte de données et encore moins d’interruption de service.

On conserve le nom de la machine Online, on choisit un mot de passe pour le root et un mot de passe pour un compte utilisateur. Pas d’inquiétude on le changera tout à l’heure.

Puis valider les dernières étapes et attendre 1h que l’installation se termine correctement avant de vous connecter dessus pour la première fois sur votre nouveau serveur dédié.

 Première actions

Comme je le disais précédemment on va commencer par changer les mots de passe car on ne sait jamais le mot de passe qu’on a mit la première fois c’était sur internet donc c’est pas sûr.  Commande à utiliser pour le compte root et le compte utilisateur créé précédemment. On rajoute une expiration du mot de passe à 100 jours pour améliorer la sécurité.

passwd root
chage -M 100 root
Mettre à jour les mots de passe

Ensuite on passe à la mise à jour de notre Debian, comme il y en a régulièrement il faut le faire. On verra plus tard comment l’automatiser. Par la même occasion vous remarquez qu’on utilise toujours « aptitude » au lieu « apt-get » pour la gestion des paquets sous Debian car c’est celui qui est recommandé. (Si aptitude n’est pas installé il suffit de faire « apt-get install aptitude »)

aptitude update
aptitude upgrade
Première mise à jour

J’ai pris l’habitude de supprimer les services inutiles pour mes besoins car si on a moins de service alors on a plus de performance et moins de faille de sécurité.

Pour le moment la liste se compose de :

  • telnet (protocole de communication assez ancien que je n’utilise pas)
  • exim4 (agent de transport de courrier mais pas necessaire dans mon cas)
aptitude remove telnet
service exim4 stop
update-rc.d -f exim4 remove
rm /etc/init.d/exim4
aptitude purge exim4
Supprimer les services inutiles

Sécuriser le service SSH

Le service SSH est la première cible des attaques et le seul accès à votre serveur donc il faut le sécuriser un maximum pour éviter de se faire attaquer.

Si vous me croyez pas il suffit d’aller voir les logs après l’installation de votre serveur dans /var/log/auth.log.

On change le port par défaut car la plupart des robots utilise 22 pour essayer des milliards de login et password. On interdit au root de se connecter en SSH, ca veut dire qu’on sera toujours obligé de se connecter avec un compte utilisateur puis le compte root et on autorise au cas par cas les comptes. Ça permet d’éviter les robots qui utilisent root comme login. Les 2 dernières directives sont normalement déjà en place sur Debian 7.

Port xxxx (le modifier pour ne pas utiliser le port par défaut 22)
PermitRootLogin no
AllowUsers monlogin
PermitEmptyPasswords no
Protocol 2
vi /etc/ssh/sshd_config

Puis on relance le service pour prendre en compte la nouvelle configuration. Comme nous n’avons pas encore mis en place un firewall vous devriez pouvoir encore vous connecter dessus 🙂

service ssh reload
Relancer le service SSH

 

Mise en place d’un firewall

Un firewall permet de contrôler les flux réseaux entrants et sortants de votre serveur. Il est primordial d’en avoir un et qu’il soit le plus restrictif possible, si votre machine héberge uniquement un serveur web alors on autorise uniquement le HTTP, ….

La mise en place est assez simple on va écrire un script qui sera exécuté à chaque démarrage du serveur et qui va inscrire les règles que l’on souhaite grâce à un logiciel bien connu dans le monde linux: iptables

Please refresh the page to continue...

Il suffit juste de mettre votre IP au niveau de la variable HN_IP et de bien préciser le port SSH (le même que celui au dessus) dans la variable SSH_PORT.

Pour tester le script il suffit de le lancer une première fois et vérifier que tout fonctionne. Si c’est pas le cas redémarrer le serveur pour y avoir accès de nouveau.

firewall.sh start
Relancer le firewall

Après l’avoir validé, il faut que le script se lance à chaque fois que le serveur démarre :

chmod +x /etc/init.d/firewall.sh
chown root:root /etc/init.d/firewall.sh
update-rc.d firewall.sh defaults
Relancer le firewall automatiquement

 

 

 

Un commentaire

  1. Article très sympa et bien expliqué 🙂
    Une petite précisons néanmoins, je suis sous ubuntu 14.04, et pour activer le firewall, la commande n’est pas :
    update-rc.d /etc/init.d/firewall.sh defaults
    mais :
    update-rc.d firewall.sh defaults

    C’est bête mais j’ai mis un moment à comprendre (avant de lire le man).
    Merci en tout cas pour toutes ces infos 🙂

    Reply
  2. Bonjour,

    Je vous remercie pour ce tutoriel,

    J’ai rencontré un problème au niveau de la partie firewalling.

    – Changement d’IP HN_IP: pour la customiser avec mon ip eth0

    – Ensuite je suis les différentes étapes et j’effectue: update-rc.d firewall.sh defaults

    – Je teste bien le script tout marche bien et après le reboot je perds les accès.

    Avez vous déjà rencontré ce cas?

    Merci de votre retour.

    Reply

Leave a Comment.