diff --git a/outline-ss-server/data/keygen.sh b/outline-ss-server/data/keygen.sh new file mode 100755 index 0000000..8fc7525 --- /dev/null +++ b/outline-ss-server/data/keygen.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +set -euo pipefail + +# pwgen 12 1 + +NAME=${1:?name is empty} + +SERVER="127.0.0.1:9443" +CIPHER="chacha20-ietf-poly1305" +SECRET=$(yq -o json config.yml | jq -e -r --arg name "$NAME" '.keys[]|select(.id==$name).secret') +DIGEST=$(echo -n "$CIPHER:$SECRET" | base64 | sed 's/=*$//') + +echo "ss://$DIGEST@$SERVER/?outline=1" diff --git a/outline-ss-server/systemd/outline-ss-server.service b/outline-ss-server/systemd/outline-ss-server.service new file mode 100644 index 0000000..2694c18 --- /dev/null +++ b/outline-ss-server/systemd/outline-ss-server.service @@ -0,0 +1,16 @@ +[Unit] +Description=outline-ss-server +After=network.target + +[Service] +User=vpn +Group=vpn +WorkingDirectory=/etc/outline-ss-server +ExecStart=/usr/local/bin/outline-ss-server -config=config.yml -metrics=127.0.0.1:9092 -ip_country_db=ip-country.mmdb -replay_history=10000 +ExecReload=/bin/kill -HUP $MAINPID +LimitNOFILE=65536 +RestartSec=5 +Restart=always + +[Install] +WantedBy=multi-user.target