- Fix Authelia config template paths (/data/ -> /config/) - Add secret placeholder replacement in deploy script - Add user database placeholder replacement - Add automatic dashboard stack deployment (Homepage, Homarr) - Remove incorrect Portainer reference from infrastructure log - Update deployment steps and final summary
82 lines
1.8 KiB
YAML
82 lines
1.8 KiB
YAML
# Authelia Configuration
|
|
# Copy to /opt/stacks/authelia/configuration.yml
|
|
# IMPORTANT: Replace 'your-domain.duckdns.org' with your actual DuckDNS domain
|
|
|
|
server:
|
|
host: 0.0.0.0
|
|
port: 9091
|
|
|
|
log:
|
|
level: info
|
|
|
|
theme: dark
|
|
|
|
jwt_secret: ${AUTHELIA_JWT_SECRET}
|
|
|
|
default_redirection_url: https://auth.your-domain.duckdns.org
|
|
|
|
totp:
|
|
issuer: your-domain.duckdns.org
|
|
period: 30
|
|
skew: 1
|
|
|
|
authentication_backend:
|
|
file:
|
|
path: /config/users_database.yml
|
|
password:
|
|
algorithm: argon2id
|
|
iterations: 1
|
|
key_length: 32
|
|
salt_length: 16
|
|
memory: 1024
|
|
parallelism: 8
|
|
|
|
access_control:
|
|
default_policy: deny
|
|
|
|
rules:
|
|
# Bypass Authelia for Jellyfin (allow app access)
|
|
- domain: jellyfin.your-domain.duckdns.org
|
|
policy: bypass
|
|
|
|
# Bypass for Plex (allow app access)
|
|
- domain: plex.your-domain.duckdns.org
|
|
policy: bypass
|
|
|
|
# Bypass for Home Assistant (has its own auth)
|
|
- domain: ha.your-domain.duckdns.org
|
|
policy: bypass
|
|
|
|
# Protected: All other services require authentication
|
|
- domain: "*.your-domain.duckdns.org"
|
|
policy: one_factor
|
|
|
|
# Two-factor for admin services (optional)
|
|
# - domain:
|
|
# - "admin.your-domain.duckdns.org"
|
|
# - "portainer.your-domain.duckdns.org"
|
|
# policy: two_factor
|
|
|
|
session:
|
|
name: authelia_session
|
|
secret: ${AUTHELIA_SESSION_SECRET}
|
|
expiration: 24h # Session expires after 24 hours
|
|
inactivity: 24h # Session expires after 24 hours of inactivity
|
|
remember_me_duration: 1M
|
|
domain: your-domain.duckdns.org
|
|
|
|
regulation:
|
|
max_retries: 3
|
|
find_time: 2m
|
|
ban_time: 5m
|
|
|
|
storage:
|
|
encryption_key: ${AUTHELIA_STORAGE_ENCRYPTION_KEY}
|
|
local:
|
|
path: /config/db.sqlite3
|
|
|
|
notifier:
|
|
# File-based notifications (for development/testing)
|
|
filesystem:
|
|
filename: /config/notification.txt
|