[Unit] Description=Continuwuity - Matrix homeserver Documentation=https://continuwuity.org/ Wants=network-online.target After=network-online.target Alias=matrix-conduwuit.service [Service] DynamicUser=yes User=conduwuit Group=conduwuit Type=notify-reload ReloadSignal=SIGUSR1 Environment="CONTINUWUITY_LOG_TO_JOURNALD=true" Environment="CONTINUWUITY_JOURNALD_IDENTIFIER=%N" Environment="CONTINUWUITY_DATABASE_PATH=%S/conduwuit" Environment="CONTINUWUITY_CONFIG_RELOAD_SIGNAL=true" LoadCredential=conduwuit.toml:/etc/conduwuit/conduwuit.toml ExecStart=/usr/bin/conduwuit --config ${CREDENTIALS_DIRECTORY}/conduwuit.toml AmbientCapabilities= CapabilityBoundingSet= DevicePolicy=closed LockPersonality=yes MemoryDenyWriteExecute=yes NoNewPrivileges=yes #ProcSubset=pid ProtectClock=yes ProtectControlGroups=yes ProtectHome=yes ProtectHostname=yes ProtectKernelLogs=yes ProtectKernelModules=yes ProtectKernelTunables=yes ProtectProc=invisible ProtectSystem=strict PrivateDevices=yes PrivateMounts=yes PrivateTmp=yes PrivateUsers=yes PrivateIPC=yes RemoveIPC=yes RestrictAddressFamilies=AF_INET AF_INET6 AF_UNIX RestrictNamespaces=yes RestrictRealtime=yes RestrictSUIDSGID=yes SystemCallArchitectures=native SystemCallFilter=@system-service @resources SystemCallFilter=~@clock @debug @module @mount @reboot @swap @cpu-emulation @obsolete @timer @chown @setuid @privileged @keyring @ipc SystemCallErrorNumber=EPERM # ConfigurationDirectory isn't specified here because it's created by # the distro's package manager. StateDirectory=conduwuit RuntimeDirectory=conduwuit RuntimeDirectoryMode=0750 Restart=on-failure RestartSec=5 TimeoutStopSec=4m TimeoutStartSec=4m StartLimitInterval=1m StartLimitBurst=5 [Install] WantedBy=multi-user.target