Traefik - Créer une authentification basique

Tut's Linux juil. 13, 2020

Certaines applications n'ont pas de mécanisme d'authentification, vous accédez à la ressource directement depuis l'URL/l'adresse IP. De nos jours, c'est risqué. Traefik permet d'ajouter une authentification simple par couple identifiant/mot de passe.

Pour se faire, j'utiliserai les fichiers de configuration dynamique pour Traefik - petit rappel sur les configurations à cette adresse (CZS).


Le chiffrement des mots de passe se fait via MD5, SHA1 ou BCrypt. Ici ce sera du BCrypt, en utilisant le site web "bcrypt.fr" pour générer les hash. L'utilisation du paquet htpasswd est aussi envisageable.
Dans votre fichier docker-compose.yml, ajoutez un label "middleware" pour les services que vous souhaitez protéger :

traefik.http.routers.NOMSERVICE.middlewares: authentification@file

Maintenant, effectuons la configuration du middleware - éditez votre fichier traefik_dynamic.toml :

[http.middlewares]
  [http.middlewares.authentification.basicAuth]
  users = [
    "toto:$2y$10$Q.lECM9D3rP.vzbsT95K7uLT4cRh4FW1DsEyZbsg5rR73pWDuZ1Tm",
  ]

Si vous utilisez un fichier .yml, voici la configuration :

http:
  middlewares:
    authentification:
      basicAuth:
        users:
        - toto:$2y$10$Q.lECM9D3rP.vzbsT95K7uLT4cRh4FW1DsEyZbsg5rR73pWDuZ1Tm

L'utilisateur créé (toto) a pour mot de passe "pouetpouet". Dès à présent, refaite un docker-compose up -d pour recréer vos services et ainsi bénéficier d'une authentification "basique" !

Source - documentation Traefik.

Mots clés

Julien HOMMET

Bercé par l'informatique depuis mon plus jeune âge, je transforme ma passion en expertise.

--}}
Super ! Vous vous êtes inscrit avec succès.
Super ! Effectuez le paiement pour obtenir l'accès complet.
Bon retour parmi nous ! Vous vous êtes connecté avec succès.
Parfait ! Votre compte est entièrement activé, vous avez désormais accès à tout le contenu.