La sécurité avec Docker – Chapitre 1 : Le système
Après plusieurs années d’expérience, je pourrais résumer Docker en un outil très utile, facile à prendre en main mais vraiment difficile à maîtriser.
Le côté « facilité de déploiement » de départ masque les problèmes de sécurité inhérents à la technologie des containers.
Or si Docker était encore pointé du doigt pour ses lacunes sécuritaires il y a quelques années, force est de constater que des efforts ont été faits dans ce domaine si on veut bien se donner la peine de mettre les mains dans le cambouis.
Aujourd’hui je commence une série de quelques articles sur la sécurité en environnement Docker.
- Chapitre 1 : Le système
- Chapitre 2 : Le réseau
- Chapitre 3 : Les utilisateurs
- Chapitre 4 : Les images et les dépôts
- Chapitre final : Le test ultime
Chapitre I : Système
Les recommandations systèmes pour Docker sont les mêmes que pour Linux en général :
Créer une partition séparée pour les répertoires critiques, en l’occurrence : /var/lib/docker
Activer les mises à jour de sécurité automatiques (sous Debian les unattended upgrades, sous Centos yum-cron)
Auditer les fichiers importants de Docker
Récupérer les logs des containers, pour ça plusieurs méthodes possibles.
Fixer des limites physiques aux containers (pour éviter les dénis de services globaux). Par exemple :
# 128 Mo de RAM et 2 vCPU maximum
docker run --memory=128m --cpus=2 ...