aboutsummaryrefslogtreecommitdiffstats
path: root/mkosi.extra/etc/systemd/system/vaultwarden.service
diff options
context:
space:
mode:
Diffstat (limited to 'mkosi.extra/etc/systemd/system/vaultwarden.service')
-rw-r--r--mkosi.extra/etc/systemd/system/vaultwarden.service29
1 files changed, 29 insertions, 0 deletions
diff --git a/mkosi.extra/etc/systemd/system/vaultwarden.service b/mkosi.extra/etc/systemd/system/vaultwarden.service
new file mode 100644
index 0000000..6000845
--- /dev/null
+++ b/mkosi.extra/etc/systemd/system/vaultwarden.service
@@ -0,0 +1,29 @@
+[Unit]
+Description=Vaultwarden Server (Rust Edition)
+Documentation=https://github.com/dani-garcia/vaultwarden
+After=network.target
+
+[Service]
+# The user/group vaultwarden is run under. the working directory (see below) should allow write and read access to this user/group
+User=vaultwarden
+Group=vaultwarden
+# The location of the .env file for configuration
+EnvironmentFile=/etc/vaultwarden/vaultwarden.env
+# The location of the compiled binary
+ExecStart=/usr/local/bin/vaultwarden
+# Set reasonable connection and process limits
+LimitNOFILE=1048576
+LimitNPROC=64
+# Isolate vaultwarden from the rest of the system
+PrivateTmp=true
+PrivateDevices=true
+ProtectHome=true
+ProtectSystem=strict
+# Only allow writes to the following directory and set it to the working directory (user and password data are stored here)
+WorkingDirectory=/var/lib/vaultwarden
+ReadWriteDirectories=/var/lib/vaultwarden
+# Allow vaultwarden to bind ports in the range of 0-1024
+AmbientCapabilities=CAP_NET_BIND_SERVICE
+
+[Install]
+WantedBy=multi-user.target