À travers les différentes étapes de la construction d’une infrastructure, cet article vise à présenter les bonnes pratiques à adopter lors de l'usage de Docker. Cet article explique comment installer Docker, définir un service, le mettre en œuvre, le faire interagir avec d'autres et plus encore.
1. Contexte
À l'occasion de la Nuit Du Hack 2017, Intrinsec proposait un mini-CTF (Capture The Flag) en parallèle de l’officiel. Il s’agit d’un ensemble d'épreuves permettant de récupérer des drapeaux (« flags ») présents sous la forme de secrets. L’équipe gagnante est celle parvenant à obtenir tous les drapeaux, ou en ayant récupéré le maximum à l'issue du temps imparti.
Le CTF était constitué :
- d'une page web d'accueil présentant les épreuves et fournissant toutes les informations nécessaires aux concurrents ;
- de deux challenges hors ligne téléchargeables depuis cette interface ;
- de cinq services en ligne.
2. Cahier des charges
L’infrastructure devait pouvoir répondre au cahier des charges suivant :
- reposer exclusivement sur un unique serveur aux ressources limitées ;
- permettre une disponibilité maximale. Un joueur souhaitant participer au CTF et rencontrant une erreur ou une indisponibilité du service allait...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première
[HUB] https://hub.docker.com/
[DISTROLESS] https://github.com/GoogleCloudPlatform/distroless
[GO] https://hub.docker.com/_/golang/
[COMPOSE] https://github.com/docker/compose/releases
[ROOT] https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
[10] https://github.com/docker/docker-bench-security
[DBLOG] https://blog.docker.com/
Référence externe :
[Docker security] https://docs.docker.com/engine/security/security/