Common ways to bypass block

Nowadays, the most common ways to bypass GFW block or any other kind of blocks are:

  • SS
  • SSR
  • V2ray
  • Trojan

The first two are basically semi-obsolete. SSR is no longer in active development. SS is easy to be detected without obfs plugin. V2ray and Trojan are not that easy for newbies because they need you to have a domain, SSL and open the 80,443 port on your VPS.

So, Thus where Snell comes in. Snell is an encrypted proxy service program with traffic obfuscating is embedded (HTTP & TLS), and the best part is, it's very easy to setup (only three lines command needed).

Enable BBR

Before we deploy any proxy service on our VPS, it's essential to enable BBR service, it can boost your connection speed. In this guide, I will use an one key script.

wget -N --no-check-certificate "https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh"
chmod +x tcp.sh
./tcp.sh

In this script, you can enable other speed boost services like BBR plus, BBR Mod, lotserver etc. But most of them will require you to change the Linux kernel to enable it. It's very dangerous to change the Linux kernel cause it can end up unbootable. You should do it unless you're very clear about what you're doing.

In this example, we just press 4 and Enter to enable BBR service on our Ubuntu 18.04 system.

You can not directly enable the bbr service on Centos system cause kernel compatibility.

Deploy Snell

First, we need to download the corresponding release of your system. For most server, we just need the amd64 version.

The lastest version of Snell is v2.0.2 upon writing this post.
# Download
wget https://github.com/surge-networks/snell/releases/download/v2.0.1/snell-server-v2.0.2-linux-amd64.zip
# Decompress
sudo apt install unzip
unzip snell-server-v2.0.2-linux-amd64.zip
# if you execute for the first time, a wizard will guide you to generate a new config.
./snell-server

Modify the config

You can use nano snell-server.conf to modify the snell config. Use Ctrl+X to save when finished.

Background Running

If we just excute the ./snell-server normally, it will stop once we close the SSH terminal. In order to let it run on the background, we have serval ways to achieve this. In this tutorial, I will use Tumx.

Install Tmux

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

Use Tmux

# Creat session
tmux new -s snell
# detach session
`crtl`+`b` `d`
# connect session
tmux attach-sesssion -t snell
# kill session
tmux kill-session -t snell

Connect to Snell Server

After Snell is running on our server. We can use Clash to connect to it.

Clash is a rule-based tunnel in Go.

Gui Client

For IOS, you can use Surge or Shadowrocket on the Apple app store.

Last modification:September 20, 2020
If you like my post, you can donate to buy me a cup of coffee.