mirror of
https://github.com/CloudNebulaProject/barycenter.git
synced 2026-04-10 13:10:42 +00:00
56 lines
1.2 KiB
SYSTEMD
56 lines
1.2 KiB
SYSTEMD
|
|
[Unit]
|
||
|
|
Description=Barycenter OpenID Connect Identity Provider
|
||
|
|
Documentation=https://github.com/yourusername/barycenter
|
||
|
|
After=network-online.target
|
||
|
|
Wants=network-online.target
|
||
|
|
|
||
|
|
[Service]
|
||
|
|
Type=simple
|
||
|
|
User=barycenter
|
||
|
|
Group=barycenter
|
||
|
|
|
||
|
|
# Paths
|
||
|
|
WorkingDirectory=/var/lib/barycenter
|
||
|
|
ExecStart=/usr/local/bin/barycenter --config /etc/barycenter/config.toml
|
||
|
|
|
||
|
|
# Security hardening
|
||
|
|
NoNewPrivileges=true
|
||
|
|
PrivateTmp=true
|
||
|
|
ProtectSystem=strict
|
||
|
|
ProtectHome=true
|
||
|
|
ReadWritePaths=/var/lib/barycenter
|
||
|
|
ProtectKernelTunables=true
|
||
|
|
ProtectKernelModules=true
|
||
|
|
ProtectControlGroups=true
|
||
|
|
RestrictRealtime=true
|
||
|
|
RestrictAddressFamilies=AF_INET AF_INET6 AF_UNIX
|
||
|
|
LockPersonality=true
|
||
|
|
MemoryDenyWriteExecute=true
|
||
|
|
RestrictNamespaces=true
|
||
|
|
SystemCallFilter=@system-service
|
||
|
|
SystemCallErrorNumber=EPERM
|
||
|
|
SystemCallArchitectures=native
|
||
|
|
|
||
|
|
# Resource limits
|
||
|
|
LimitNOFILE=65535
|
||
|
|
LimitNPROC=512
|
||
|
|
|
||
|
|
# Logging
|
||
|
|
StandardOutput=journal
|
||
|
|
StandardError=journal
|
||
|
|
SyslogIdentifier=barycenter
|
||
|
|
|
||
|
|
# Environment
|
||
|
|
Environment="RUST_LOG=info"
|
||
|
|
# Override config with environment variables:
|
||
|
|
# Environment="CRABIDP__SERVER__PUBLIC_BASE_URL=https://idp.example.com"
|
||
|
|
|
||
|
|
# Restart policy
|
||
|
|
Restart=on-failure
|
||
|
|
RestartSec=5s
|
||
|
|
StartLimitInterval=60s
|
||
|
|
StartLimitBurst=3
|
||
|
|
|
||
|
|
[Install]
|
||
|
|
WantedBy=multi-user.target
|