[Unit] Description=Warden (Rust 서버 관리 및 방화벽 보안 패널) Documentation=https://localhost:9443 After=network-online.target nftables.service Wants=network-online.target [Service] Type=simple # 방화벽(nft)/서비스(systemctl)/커널로그(journalctl -k) 제어를 위해 root 로 실행 User=root WorkingDirectory=/WardenRoot ExecStart=/WardenRoot/warden --config /WardenRoot/config.toml run Restart=on-failure RestartSec=3 # 하드닝 (root 실행이지만 파일시스템 접근 최소화) # ProtectHome 은 쓰지 않는다. 웹 터미널·빌드 작업이 /root 를 써야 한다 # (npm ~/.npm, pip, cargo, go, composer, git 설정, acme.sh). 켜 두면 이들이 모두 실패한다. ProtectHome=false PrivateTmp=true # 미설치 경로는 '-' 접두어로 선택 처리(없어도 유닛 기동 실패 방지) ReadWritePaths=/WardenRoot -/etc/nginx -/etc/httpd -/etc/php.d -/etc/php-fpm.d -/etc/my.cnf.d [Install] WantedBy=multi-user.target