Traefik 基本认证
Traefik Basic Auth
我最近开始将 Traefik 与 Docker 一起使用,我必须说这太棒了。我现在遇到的问题是,当我将基本身份验证中间件应用到我的 Traefik 仪表板,然后去加载仪表板时,它不断地提示我输入用户名和密码,无休止地循环,我永远无法进入仪表板。但是,它在没有基本身份验证的情况下工作得很好,我可以很好地加载我的仪表板。请问有人可以帮忙吗?在过去的几天里,它一直让我发疯。请看下面我的样品。 (请注意密码哈希,我在开头尝试过使用和不使用额外的美元符号,但均无效)。提前谢谢你。
我的Docker撰写文件:
version: '3'
services:
traefik:
image: "traefik:v2.2"
ports:
- "80:80"
- "443:443"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/user/traefik/traefik.yml:/etc/traefik/traefik.yaml:ro
labels:
- "traefik.enable=true"
- "traefik.http.routers.api.rule=Host(`traefik.com`)"
- "traefik.http.routers.api.entrypoints=insecure"
- "traefik.http.routers.api.service=api@internal"
- "traefik.http.routers.api.middlewares=api-auth"
- "traefik.http.middlewares.api-auth.basicauth.users=admin:$$..."
networks:
default:
external:
name: "web"
我的Traefik.yml文件
providers:
docker:
endpoint: "unix:///var/run/docker.sock"
network: "web" # Custom docker network
exposedByDefault: false
entryPoints:
insecure:
address: ":80"
secure:
address: ":443"
api:
dashboard: true
好像跟哈希密码有关。
所有 $
符号必须由另一个 $
转义,而不是开头的第一个。
此外,并非每个 crypt 函数都得到处理。
尝试使用此生成密码:echo $(htpasswd -nb user password) | sed -e s/\$/\$\$/g
如 https://docs.traefik.io/middlewares/basicauth/#users
中所示
我最近开始将 Traefik 与 Docker 一起使用,我必须说这太棒了。我现在遇到的问题是,当我将基本身份验证中间件应用到我的 Traefik 仪表板,然后去加载仪表板时,它不断地提示我输入用户名和密码,无休止地循环,我永远无法进入仪表板。但是,它在没有基本身份验证的情况下工作得很好,我可以很好地加载我的仪表板。请问有人可以帮忙吗?在过去的几天里,它一直让我发疯。请看下面我的样品。 (请注意密码哈希,我在开头尝试过使用和不使用额外的美元符号,但均无效)。提前谢谢你。
我的Docker撰写文件:
version: '3'
services:
traefik:
image: "traefik:v2.2"
ports:
- "80:80"
- "443:443"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/user/traefik/traefik.yml:/etc/traefik/traefik.yaml:ro
labels:
- "traefik.enable=true"
- "traefik.http.routers.api.rule=Host(`traefik.com`)"
- "traefik.http.routers.api.entrypoints=insecure"
- "traefik.http.routers.api.service=api@internal"
- "traefik.http.routers.api.middlewares=api-auth"
- "traefik.http.middlewares.api-auth.basicauth.users=admin:$$..."
networks:
default:
external:
name: "web"
我的Traefik.yml文件
providers:
docker:
endpoint: "unix:///var/run/docker.sock"
network: "web" # Custom docker network
exposedByDefault: false
entryPoints:
insecure:
address: ":80"
secure:
address: ":443"
api:
dashboard: true
好像跟哈希密码有关。
所有 $
符号必须由另一个 $
转义,而不是开头的第一个。
此外,并非每个 crypt 函数都得到处理。
尝试使用此生成密码:echo $(htpasswd -nb user password) | sed -e s/\$/\$\$/g
如 https://docs.traefik.io/middlewares/basicauth/#users