This kind of program is only suitable for those areas that their ISP or Government has certain contents or websites blocked. It's used to bypass these restrictions, like VPN but without routering your whole data, just for those contents it needed to be.

Similar programs are like SS, V2ray and Trojan etc. But Snell is more simple and straightforward.

Snell isn't open-source, if you mind. Quote from the original team: We haven't decided whether to open source the project for complicated reasons.

Enable BBR

Before deploying any proxy program, it's highly recommended to enable BBR on your server. Serval variants are:

  • BBR
  • BBR Plus
  • LotServer

Personally, I only use BBR, because it's already built into all modern Ubuntu systems, you can enable it very easily. If you need to use other variants, it may need to change the kernel

Changing kernel may lead to the server fail to boot, use it only if you know what you're doing

Snell deployment

Unlike Trojan or V2ray, to deploy Snell, basically, it only needs three steps. First SSH login to our VPS server and type the following commands:

# update software package
apt update
# install unzip
apt install unzip
# create and enter snell folder
mkdir snell && cd snell
# download Snell
wget https://github.com/surge-networks/snell/releases/latest/download/snell-server-v2.0.4-linux-amd64.zip
# unzip
unzip snell-server-v2.0.4-linux-amd64.zip
# run「if you run it for the first time, press Y to generate a new config」
# edit the config「optional,you can change the port and obfs etc.」
nano snell-server.conf

  • The commands above are based on Ubuntu or Debian system, if you use other systems, please change it accordingly.
  • As writing this post, the latest version of Snell is v2.0.4, if it updates afterward, please change the download address accordingly.

Background running

After we have finished editing our config file, we can start Snell server and keep it running in the background. Here I use Tmux as the demonstration, you can use other programs to suit your needs, like screen, nohup, systemd etc.

Install Tmux

# Ubuntu or Debian
sudo apt install tmux;
# CentOS or Fedora
sudo yum install tmux

Running Snell in the background

# Create process
tmux new -s snell
# Run Snell「in the directory where snell is located」

Other commands

# Exit process
press `crtl`+`b` then release and press `d`
# re-attach process
tmux a -t snell
# kill process
tmux kill-session -t snell

Connect with Snell server

You can use Surge if you're using the IOS device, otherwise, you can use Clash for windows.

You must import your config file before using Clash because it's a rule-based program. It only using the snell server if certain rules are matched and will not interfere with your normal connections.

Because the config file is highly customizable, you can just google "Snell sample config.yaml" to learn and write your own config which suits your needs.

Beaware The name under the proxies must match the name under each proxy-groups


Video Tutorial

Video is not in english

Last modification:August 22, 2021
If you like my post, you can donate to buy me a cup of coffee.