はじめに
Vaultwardenでは、vaultwarden.env
にADMIN_TOKEN
を書くことで、/admin
に
アクセスすることができます。
反対に、vaultwarden.env
からADMIN_TOKEN
を消せば、/admin
にアクセス
できなくなるなずなのですが、なぜかアクセスできてしまうという問題が発生しました。
環境
VaultwardenはDockerで立ち上げています。
- docker-compose.yml
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
environment:
- TZ=Asia/Tokyo
- SIGNUPS_ALLOWED=true
- VIRTUAL_HOST=example.com
- VIRTUAL_PORT=80
- SMTP_HOST=smtp.example.com
- SMTP_FROM=noreply-vaultwarden@example.com
- SMTP_PORT=587
- SMTP_SECURITY=starttls
- SMTP_USERNAME=example.com
- SMTP_PASSWORD=xxxxxxxxxxx
- SMTP_AUTH_MECHANISM="Login"
env_file:
- ./vaultwarden.env
volumes:
- vol_wv-data:/data
ports:
- 80:80
restart: always
volumes:
vol_wv-data:
原因
どうやらVaultwardenでは、管理ページから設定を変更すると/data/config.json
ファイルが生成され、
以降はこのファイルの設定が優先されてしまうようです。
(/data/
のところは各自マウント先をご確認ください。)
解決方法
vaultwarden.env
だけではなく、/data/config.json
からも"admin_token": "xxxxxxxxxxx"
を消すことで、
管理ページへアクセスできなくなります。
最後にdocker compose restart
も忘れずに!