From 6b77f63a23c10e622f775f362b5e68616eaa367f Mon Sep 17 00:00:00 2001 From: postscriptum Date: Sun, 22 Mar 2026 13:17:52 +0200 Subject: [PATCH] add systemd example --- README.md | 46 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 34e6b31..9687047 100644 --- a/README.md +++ b/README.md @@ -38,4 +38,48 @@ duckduckgo.com // IP resolved 1.2.3.4 ``` -* see also: [my personal asset](https://codeberg.org/postscriptum/psocks-list) \ No newline at end of file +* see also: [my personal asset](https://codeberg.org/postscriptum/psocks-list) + +### systemd + +``` bash +git clone https://codeberg.org/postscriptum/psocks.git +cd psocks +cargo build --release --locked +sudo install target/release/psocks /usr/local/bin +sudo useradd -s /usr/sbin/nologin -Mr psocks +sudo mkdir /var/lib/psocks && sudo chown psocks:psocks /var/lib/psocks +sudo mkdir /var/log/psocks && sudo chown psocks:psocks /var/log/psocks +``` + +``` /etc/systemd/system/psocks.service +#/etc/systemd/system/psocks.service + +[Unit] +After=network-online.target +Wants=network-online.target + +[Service] +User=psocks +Group=psocks + +WorkingDirectory=/var/lib/psocks +ExecStart=/usr/local/bin/psocks \ + -a=https://codeberg.org/postscriptum/psocks-list/raw/branch/main/allow/internet.txt \ + -c=/var/lib/psocks/cache.txt \ + no-auth + +Restart=always + +Environment="RUST_LOG=warn" +Environment="NO_COLOR=1" + +StandardOutput=file:///var/log/psocks/debug.log +StandardError=file:///var/log/psocks/error.log + +[Install] +WantedBy=multi-user.target +``` +* `sudo systemctl restart psocks` +* `sudo systemctl enable psocks` +* `sudo systemctl status psocks`