docker自建2fa验证器,抛弃各种totp验证器
- 建站相关
- 5天前
- 71热度
- 0评论
github项目:https://github.com/Bubka/2FAuth
需要:
1/vps
2/域名
安装docker不必再说
建个目录2fath
在目录下建个yml文件docker-compose.yml
services:
2fauth:
image: 2fauth/2fauth:latest
container_name: 2fauth
restart: unless-stopped
command: php artisan serve --host=0.0.0.0 --port=8000
environment:
- APP_NAME=2FAuth
- APP_ENV=production
- APP_TIMEZONE=Asia/Shanghai
- APP_DEBUG=false
- SITE_OWNER=你的邮箱
- APP_KEY=32位随机字符串 # ⚠️ 32位随机字符串
- APP_URL=https://2fa.666200.xyz # ⚠️ 改成你的域名(HTTPS)
- IS_DEMO_APP=false
- LOG_CHANNEL=daily
- LOG_LEVEL=notice
- DB_DATABASE="/srv/database/database.sqlite"
- CACHE_DRIVER=file
- SESSION_DRIVER=file
- MAIL_MAILER=log
- MAIL_VERIFY_SSL_PEER=true
- THROTTLE_API=60
- LOGIN_THROTTLE=5
- AUTHENTICATION_GUARD=web-guard
- AUTHENTICATION_LOG_RETENTION=365
- WEBAUTHN_NAME=2FAuth
- WEBAUTHN_USER_VERIFICATION=preferred
volumes:
- ./2fauth:/2fauth
ports:
- "8000:8000" # 映射宿主机端口,NPM 可以反代这个端口
32位随机字符串可以vps产生
openssl rand -base64 24 | tr -d '=+/ ' | cut -c1-32
rand -base64 24 生成 32 字节左右的随机数据
tr -d '=+/ ' 去掉特殊字符
cut -c1-32 截取前 32 个字符
然后在用Nginx Proxy Manager反代一下
常用的可以建个,推荐google验证器和2fath同时用,2fath在web端用很方便,复制粘贴,省的在打开Google验证器。原来google验证器的要重新生成,google验证器导出的其他totp识别不了,一个二维码,google验证器和2fath同时用