Auto-hébergement at-home, retour d’expérience et quelques bonnes pratiques

Auto-héberger chez soi un site vitrine, un blog, des photos; quelques conseils et retours d'expérience pour ne pas perdre de temps en maintenance.

Depuis plus de 10 ans j'héberge et je gère divers services : sites, wiki, bot, serveurs de jeu, pour moi ou des amis. D'abord sur des serveurs gérés par un hébergeur, j'ai choisi il y a 2-3 ans de m'auto-héberger @home, comprendre: non plus dans un datacenter mais chez moi derière une connexion internet pour particulier.

  • si vous n’avez pas d’IP fixe, ce n’est pas un problème, il est possible d’utiliser un client dynDNS sur n’importe quel domaine
  • si vous voulez accéder en ssh à une machine, ne NATer pas le port 22, utilisez un autre port, et faites attention à la sécurité: clé uniquement, openssh-server à jour, sshd bien configuré
  • utilisez une configuration texte pour déployer (façon IaC), type docker-compose. Personnellement je trouve l’IaC overkill pour juste 1 machine ou 2 dans un garage
  • séparez les données de la description de la configuration, ainsi vous pourrez versionner ce que vous déployez, via git et backup-er les données, via rsync ou autres.
  • autant que possible ne faites pas de modifications manuelles, tout doit être scripté et intégré aux images docker ou aux scripts de déploiement,
  • de manière générale, ne déployez/n’activez que les fonctions dont vous avez vraiment besoin. L’intérêt va être d’avoir le moins de surface d’attaque mais également de pouvoir fonctionner sur des machines plus limitées en ressources
  • attention aux écritures disques qui vont impacter la durée de vie surtout pour les supports physiques en carte sd notamment pour les raspberrypi. Faites attention à l’emplacement des écritures disques: logs, fichiers d’échange etc. Autant que possible placez ces dossiers en RAM avec des points de montage tmpfs
  • collectez uniquement des métriques pertinentes, pour anticiper des pannes et le vieillissement du matériel un peu vieux j’aime bien lire les données SMART des disques durs et les données mmc pour les supports type flash/eMMC
  • en cas de coupure élec, nécessité d’action manuelle pour relancer (dépend du mode d’alimentation)

Voilà, l’objectif de cet article est juste de contre-balancer des bonnes pratiques plus adaptées aux entreprises souhaitant un taux de service le plus proche de 100% mais nécessitant un suivi très régulier.