OpenID + Apache Guacamole
Last updated
Was this helpful?
Last updated
Was this helpful?
Docker et Docker Compose installés :
👉 Guide officiel :
Se connecter à l’interface admin :
https://authentik.ton-domaine.tld/if/admin/
💡 Remarque : Cette URL ne fonctionne que si un DNS est configuré.
Sinon, utilisez http://<IP>:9000
.
Aller dans Providers > + Create Type : OAuth2/OpenID Provider
Configurer :
Nom : Guacamole OIDC Provider
Authorization flow : explicit consent
Redirect URIs :
Enregistrer et copier :
Client ID
Client Secret
Allez dans Applications > + Create
Remplir :
Nom : Guacamole
Slug : guacamole
Provider : celui créé juste avant
Enregistrer.
À partir du provider OIDC, notez :
Authorization Endpoint
https://authentik.ton-domaine.tld/application/o/guacamole/authorize/
http://<IP>:9000/application/o/guacamole/authorize/
JWKS Endpoint
https://authentik.ton-domaine.tld/application/o/guacamole/jwks/
http://<IP>:9000/application/o/guacamole/jwks/
Issuer
https://authentik.ton-domaine.tld/application/o/guacamole/
http://<IP>:9000/application/o/guacamole/
Redirect URI (vers Guacamole)
https://guacamole.ton-domaine.tld/guacamole/
http://<IP>:8080/guacamole/
docker-compose.yml
.env
Dans le même dossier que docker-compose.yml
, créer un fichier .env
:
OPENID_AUTHORIZATION_ENDPOINT="http://:9000/application/o/guacamole/authorize/" OPENID_JWKS_ENDPOINT="http://:9000/application/o/guacamole/jwks/" OPENID_ISSUER="http://:9000/application/o/guacamole/" OPENID_CLIENT_ID="<CLIENT_ID>" OPENID_CLIENT_SECRET="<CLIENT_SECRET>"
Pour l'accès à Guacamole, via IP:8080
OPENID_REDIRECT_URI="http://:8080/guacamole/" OPENID_USERNAME_CLAIM_TYPE=preferred_username
✅ Remplacer <IP>
et les secrets par vos vraies valeurs.
Sans DNS (défaut) : http://<IP>:8080/guacamole/
Avec DNS (et certificat HTTPS) : https://guacamole.ton-domaine.tld/guacamole/
Pour rendre l’accès à Guacamole plus propre et sécurisé, on peut le placer derrière un reverse proxy comme NGINX.
URL propre : https://guacamole.ton-domaine.tld/
Connexion sécurisée (HTTPS avec certbot ou autre)
Possibilité de gérer l'accès en frontal via firewall, fail2ban, etc.
Permet de cacher l’IP/port interne de Guacamole
Quand Guacamole est derrière un reverse proxy avec HTTPS, Authentik doit faire confiance au certificat TLS présenté à l’URL de redirection (redirect_uri
).
1. Authentik valide le domaine guacamole.ton-domaine.tld
Le certificat du reverse proxy (Let’s Encrypt ou autre) doit être valide et signé par une autorité de confiance.
Pas de certificat autosigné côté RP si Authentik est strict (par défaut, il vérifie les chaînes).
2. (Optionnel) Authentik derrière le reverse proxy
Tu peux aussi exposer Authentik derrière le même reverse proxy. Cela permet :
De forcer HTTPS côté Authentik
D’homogénéiser la configuration réseau
De simplifier l’ouverture des ports (souvent juste 80/443)
Guacamole accessible via
https://guacamole.tld/guacamole/
http://<IP>:8080/guacamole/
Authentik doit connaître
Certificat TLS du reverse proxy
Pas de validation TLS
Certificat
Let’s Encrypt ou équivalent
Non requis
Authentik via RP
Recommandé
Optionnel
👉
👉