Free And Temporary VPN For China

If you are in China or temporarily visit China, it’s hard to open Google, Gmail, Slideshare, Twitter, etc. Internet Censorship is fine. But… I strongly suggest there should be one exception. We, as developers, should be able to access. It’s a must to do a better job.
Here I provide a free VPN service. The password will be rotated periodically. Unfortunately I can’t afford to make a bigger commitment. It should be good for temporary use. Right? Good news is you will have a Docker image to easily run the service in your own server. Check it now!

Original Article:

As a DevOps professional, I also recommend tools or products, maintain online services. The main goal is to help my audience to do a better job in daily work. You are included, for sure.

Please don’t hesitate to contact me, if anything bothers you and I can be of any help!

How To Use The Service

I’ve started a public VM in Linode, which can visit almost all websites. It serves as a http proxy server, running a private VPN protocol[1]. Unlike normal VPN protocols, this one is more reliable and resilient by design. Sorry, no more details. The more explanation I give, the higher possibility my website will be blocked in China.

Give it a try!
1. Download and install VPN client: Here is the Official link. Frankly speaking, I’m not surprised that you may fail to open the link, when you’re in China.

If the official link fails, try alternatives. Microsoft Windows: Linux world:

# mac OSx
pip install shadowsocks
brew install shadowsocks-libev
# Linux
pip install shadowsocks
apt-get install shadowsocks-libev

2. Get the credential: server ip, port and password.
As we may guess, there might be many users trying the free service. I have to update the password periodically. To the extreme case, it will be changed weekly.

Please contact me via email, in order to get the credential. Don’t worry, it’s totally free. I just want to reduce the risk of security issues.

3. Enable client and activate the server. Once it’s done, you should be fine to open Finally!

How to setup my own server by docker

  • 1. Rent a public VM In DigitalOcean Or Linode. DigitalOcean has a plan of $5/month. Personally I prefer a Linode VM with $10/month. With the extra money, my service is much more reliable. Also I have the luxury to try other funcy stuffs or host my side projects in the Cloud. Definitely you can have your own preference.
  • 2. Install docker daemon, and pull the image. Dockerfile can be found in Github.
docker pull denny/ss:v1
  • 3. Start the container
# Start the container
docker run -t -d --privileged -h ss \
--name my-ss -p 6187:6187 denny/ss:v1 \
/usr/bin/supervisord -n -c \
# Make sure iptables allow the traffic
ufw allow 6187/tcp
  • 4. [Optional] Customize server port and password. By default, the server port is 6187, and password is DamnGFW1234. It’s defined in /etc/shadowsocks.json.
# Update config file
vim /etc/shadowsocks.json
# Reload setting
supervisorctl reload
# Check tcp port
telnet localhost 6187
  • 5. [Optional] Check service status
# Login to container and check
telnet 6187
# Check service status
service supervisor status
# Check logfile
tail /var/log/supervisor/sss-stderr*
# Use tcpdump to monitor client requests
sudo tcpdump -vvv -XX -s 0 -f -c 1000 -nn -i any 'port 6187'



More Reading: Reverse SSH Tunnel: Export Your Mac Laptop To The Internet.

Check our popular posts? Discuss with us on LinkedIn, Twitter Or NewsLetter.

Originally published at on October 22, 2016.