# ============================================================================= # barox SecPen - Queue Worker (fuehrt die Scans aus) # Ablage: /etc/systemd/system/barox-secpen-worker.service # Aktivieren: systemctl enable --now barox-secpen-worker # ============================================================================= [Unit] Description=barox SecPen Scan Worker After=network-online.target mariadb.service mysql.service Wants=network-online.target [Service] Type=simple User=www-data Group=www-data WorkingDirectory=/var/www/html/barox-secpen # Die Warteschlangen "scans" und "default" werden hier verarbeitet. # --max-time sorgt fuer einen regelmaessigen Neustart (frischer Speicher). ExecStart=/usr/bin/php artisan queue:work --queue=scans,default,reports \ --sleep=3 --tries=1 --timeout=0 --max-time=3600 --rest=0.2 ExecReload=/usr/bin/php artisan queue:restart Restart=always RestartSec=5 TimeoutStopSec=120 KillSignal=SIGTERM # --------------------------------------------------------------- Hardening --- NoNewPrivileges=true PrivateTmp=true ProtectSystem=strict ProtectHome=true ReadWritePaths=/var/www/html/barox-secpen/storage /var/lib/barox-secpen ProtectKernelTunables=true ProtectKernelModules=true ProtectControlGroups=true RestrictSUIDSGID=true RestrictRealtime=true LockPersonality=true MemoryDenyWriteExecute=false # Nmap benoetigt fuer -sS/-sU Rohsockets. systemd vergibt diese Faehigkeit # ausschliesslich an diesen Worker-Prozess - der Apache-/mod_php-Prozess # (ebenfalls www-data) erhaelt sie NICHT, da Capabilities pro Prozess gelten. AmbientCapabilities=CAP_NET_RAW CAP_NET_ADMIN CapabilityBoundingSet=CAP_NET_RAW CAP_NET_ADMIN StandardOutput=append:/var/log/barox-secpen/worker.log StandardError=append:/var/log/barox-secpen/worker-error.log [Install] WantedBy=multi-user.target