eleven / messenger Public

Clone
git clone https://amadan.net/eleven/messenger

Plain git — no account needed to clone.

Download

Download this file

1[Unit]
2Description=lchat public-web fetch service (unfurl + signed image proxy)
3After=network-online.target
4Wants=network-online.target
5
6[Service]
7# The service's own secrets (preview salt + image-signing key) mint themselves
8# into its DB on first boot (fetch.go). The optional env file carries exactly
9# one thing: LCHAT_GIPHY_KEY, the platform Giphy key that turns /api/gif on.
10EnvironmentFile=-/data/fetch.env
11ExecStart=/opt/lchat/lchat fetch run --socket /run/lchat/fetch.sock --db /data/fetch.db
12Restart=always
13RestartSec=1
14
15# --- hardening (see docs/instance-router.md § Hardening) ---
16User=lchat
17Group=lchat
18CapabilityBoundingSet=
19NoNewPrivileges=yes
20ProtectSystem=strict
21ProtectHome=yes
22ReadWritePaths=/run/lchat /data
23PrivateTmp=yes
24PrivateDevices=yes
25ProtectClock=yes
26ProtectHostname=yes
27ProtectKernelTunables=yes
28ProtectKernelModules=yes
29ProtectKernelLogs=yes
30ProtectControlGroups=yes
31ProtectProc=invisible
32RestrictAddressFamilies=AF_INET AF_INET6 AF_UNIX
33RestrictNamespaces=yes
34RestrictRealtime=yes
35RestrictSUIDSGID=yes
36LockPersonality=yes
37MemoryDenyWriteExecute=yes
38SystemCallFilter=@system-service
39SystemCallErrorNumber=EPERM
40SystemCallArchitectures=native
41MemoryMax=512M
42TasksMax=256
43
44[Install]
45WantedBy=multi-user.target
46