1

Portainer avec du HTTPS

Portainer est un super outil ! C’est une interface de gestion de container Docker intuitive et super agréable. Portainer permet de gérer ses images, volumes, networks que cela soit en local ou alors avec un cluster Swarm. Il s’installe sous forme de container et est disponible sous forme d’interface web.

Docker

On récupère l’image officiel de portainer

$ sudo docker pull portainer/portainer

On vérifie que l’image est bien récupéré

$ sudo docker images
REPOSITORY              TAG      IMAGE               ID   CREATED    SIZE
portainer/portainer     latest   6cafdc66421d        10   days ago   33.1MB

HTTPS

CSR, KEY & CRT

La génération d’un certificat SSL permet de sécuriser ses échanges avec un chiffrement des transmissions. Je n’ai pas envie que lorsque je me connecte, mes informations d’authentification circulent en clair …

Je vais générer les fichiers suivant pour portainer :

.CSR : c’est le fichier contenant les informations de ma demande certificat, contenant ma clé publique.
.KEY : il s’agit de ma clé privée, qui contient donc les informations privées de mon certificat
.CRT : il s’agit du certificat, contenant les informations publiques du SSL. Dans mon cas il s’agira d’un certificat auto-signé, mais il peut également être délivré par une autorité de certification.

Création d’un certificat SSL

Création d’un répertoire qui accueilleras mes différents fichiers

$ sudo mkdir /etc/ssl/portainer && cd /etc/ssl/portainer

Génération d’une paire de clés RSA 1024bits

$ sudo openssl genrsa -out portainer.key 1024
$ sudo openssl req -new -key portainer.key -out portainer.csr

On remplis ensuite les différents champs qui défilent, ce sont les informations qui apparaitrons sur le certificat : localisation, organisation, domaine souhaité..

Une fois les clés générés, il ne reste plus qu’à générer le certificat avec les informations publiques

$ sudo openssl x509 -req -days 999 -in portainer.csr -signkey portainer.key -out portainer.crt

Déploiement de portainer

Copie des clés

Copie des clés et du certificat pour qu’il soit accessible par portainer lors du démarrage

$ mkdir ~/portainer && sudo cp /etc/ssl/portainer/* ~/portainer

Démarrage

On lance portainer avec nos certificats 🙂

$ sudo docker run --name portainer_with_SSL -d -p 443:9000 -v ~/portainer:/certs -v "/var/run/docker.sock:/var/run/docker.sock" portainer/portainer --ssl --sslcert /certs/portainer.crt --sslkey /certs/portainer.key

Et hop !

 

Supras

Supras

Un commentaire

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *