Suite à l'excellent billet de NicoLargo : http://blog.nicolargo.com/2013/03/mes-5-premieres-minutes-sur-un-serveur-debian.html, j'ai également décidé d'évoquer la configuration que j'utilise lorsque je configure un nouveau serveur Debian.

  • Utilisation de LVM avec les répertoires /, /home, /tmp, /var, /boot, /srv sur des volumes logiques différents (j'utilise pour l'instant les systèmes de fichier ext4 et XFS)
  • Mise en place d'un password au niveau du Grub
  • Création d'un utilisateur classique en plus du root avec mot de passe fort
  • Activation de SSH avec authentification par clefs RSA ou ECDSA avec interdiction de se connecter en root (utilisation de la commande su par la suite)
  • Automatisation d'une partie des mises à jour avec CRON-APT
  • Mise en place d'un Firewall avec Netfilter / IPTABLES
  • Chroot ou Jails des principaux services sensibles (DNS et WEB)
  • Utilisation de FAIL2BAN pour les services SSH, HTTP, DNS, SMTP
  • Mise en place de PortSentry pour éviter les Scan basiques
  • En fonction des besoins mise en place d'un Reverse-Proxy (HAProxy, Apache, NGinx ou Varnish) en Frontal
  • Utilisation régulière de ClamAV, CHKROOTKIT et Lynis (Virus, Trojan, Rootkit)
  • Mise en place de LogWatch pour obtenir des remontées régulières d'informations par mail
  • Scripts de sauvegarde avec Rsync over SSH + CRON

Je n'ai pas encore eu l'occasion de tester GLANCES, l'outil de supervision développé par Nico Largo... mais Why not ? Voilà, ce que je fais lorsque je décide de mettre en production un serveur Debian accessible sur le NET.

Si vous avez des idées ou des suggestions pour améliorer, ou optimiser ma configuration, je suis bien entendu preneur ;) .