>> Home / Dev /

Shadowsocks Rust Setup for Debian

Published: Β· Updated: Β· Reading Time: 2 min

Shadowsocks Repo: https://github.com/shadowsocks/shadowsocks-rust

Setup rust first: Debian εˆε§‹εŒ– Rust ηŽ―ε’ƒ

InstallπŸ”—

rustup default nightly
cargo install shadowsocks-rust

ConfigureπŸ”—

mkdir ss

Server config sample:

{
  "servers": [
    {
      "address": "::",
      "port": 9982,
      "method": "chacha20-ietf-poly1305",
      "password": "strong-password",
      "mode": "tcp_and_udp",
      "fast_open": false,
      "timeout": 7200
    }
  ]
}

Add as a system serviceπŸ”—

sudo vim /etc/systemd/system/ss.service

Note: Change username to your own username

[Unit]
Description=ssserver service
After=network.target

[Service]
ExecStart=/home/username/.cargo/bin/ssserver -c /home/username/ss/config.json
ExecStop=/usr/bin/killall ssserver
Restart=on-failure
StandardOutput=syslog               # Output to syslog
StandardError=syslog                # Output to syslog
SyslogIdentifier=ss
User=username
Group=admin

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now ss

RunπŸ”—

StatusπŸ”—

sudo systemctl status ss

StopπŸ”—

sudo systemctl stop ss

UpdateπŸ”—

cargo install shadowsocks-rust

Multiple PortsπŸ”—

Also see here

sudo iptables -t nat -A PREROUTING -p tcp --dport 12000:12010 -j REDIRECT --to-port 9982
sudo iptables -t nat -A PREROUTING -p udp --dport 12000:12010 -j REDIRECT --to-port 9982

Show if success:πŸ”—

sudo iptables -t nat -L PREROUTING -nv --line-number

Delete the rule:πŸ”—

sudo iptables -t nat -D PREROUTING <number>

Other ResourcesπŸ”—


ResponseπŸ”—

Have you written a response to this? Let me know the URL: