Deploy Traefik configuration¶
FastCGI server¶
For now, Traefik does not support FastCGI, so it can’t be used with the default provided llng-fastcgi-server. It can work with the PSGI server, if it exposes an HTTP socket. See :doc:Advanced PSGI usage<psgi>.
For example, to use the Traefik handler with uWSGI, exposing an HTTP socket binding on 127.0.0.1:8183
cd /usr/share/lemonldap-ng/llng-server && SOURCE_SERVER=traefik /sbin/uwsgi \
--plugin psgi \
--psgi llng-server.psgi \
--master \
--workers 2 \
--max-worker-lifetime 86400 \
--max-requests 10000 \
--disable-logging \
--harakiri 30 \
--buffer-size 65535 \
--limit-post 0 \
--die-on-term \
--http-socket 127.0.0.1:8183
Note : you can create a systemd unit, but as Traefik is mainly used in a containers context, you can use a command similar to the previous one as an entrypoint.
Then, to configure Traefik’s middleware to use it, you can use this configuration fragment:
http:
middlewares:
lemonldap:
forwardAuth:
address: http://127.0.0.1:8183
authResponseHeadersRegex: '^.*$'
Then to protect an app with Lemonldap::NG:
tags = [
"traefik.enable=true",
"traefik.http.routers.whoami.rule=Path(`/whoami`)",
"traefik.http.routers.whoami.entrypoints=https",
"traefik.http.routers.whoami.middlewares=lemonldap@file"
]
Install LLNG FastCGI server¶
Debian/Ubuntu¶
apt install lemonldap-ng-fastcgi-server
Enable and start the service :
systemctl enable llng-fastcgi-server
systemctl start llng-fastcgi-server
Red Hat/CentOS¶
yum install lemonldap-ng-nginx lemonldap-ng-fastcgi-server
Enable and start the service :
systemctl enable llng-fastcgi-server
systemctl start llng-fastcgi-server