July 16, 2019

Across the Great Wall

Many of the sites needed for instructions and resources on crossing the wall are themselves behind the wall. Therefore in this post, we take our first steps to reach these instructions and resources. This post lists four possibilities. All these instructions are for a computer running Ubuntu Linux 18.04.

FanQiangDang (翻墙党)

FanQiangDang (翻墙党) contains tutorials and free public-interest servers. The subjects covered include airport recommendations, free over-the-wall software, free Shadowsocks nodes, ShadowsocksR nodes, and V2Ray nodes, over-the-wall tips, free trials, network security, and so on.

For now, the site can still be reached simply by editing your /etc/hosts file. You can do this as follows. Open a terminal (Ctrl+Alt+t). Open the hosts file in an editor:

sudo vi /etc/hosts

At the bottom of the file, press the o key on your computer keyboard to open a line for input.

Insert the line:

104.16.248.1 fanqiangdang.com

Press the Esc key on your keyboard to escape from input mode.

Type :wq and press Enter to write the file to disk and quit the editor.

Then open Firefox and visit https://fanqiangdang.com.

Lantern (蓝灯)

Lantern (蓝灯) is a free and open-source, peer-to-peer, Internet censorship circumvention tool, intended to be used for casual web browsing. It provides a way to bypass state-sanctioned filtration through a network of trusted users, though it is not an anonymity tool like Tor (see below). Using Lantern, users in countries having free Internet access share their bandwidth with those who are in countries where the network is partly blocked. Network connections will be dispersed between multiple computers running Lantern so it will not put undue stress on a single connection or computer.

The official site at https://getlantern.org is blocked by the wall. However, the binaries are mirrored on Github at https://github.com/getlantern/lantern-binaries. The newest version is version 5.50.

To install Lantern, open Firefox, and download lantern-installer-64-bit.deb from the above page.

Open a terminal (Ctrl+Alt+t). Change into your Downloads folder:

cd ~/Downloads

Install the package:

sudo dpkg -i lantern-installer-64-bit.deb

Tor

The Tor Project site at https://www.torproject.org is blocked, but you can find a mirror to download the Tor Browser at https://github.com/TheTorProject/gettorbrowser/releases. This repository has not been updated recently, and it contains Tor Browser version 8.0.2. Currently the latest version on the official site is Tor Browser version 8.5.4. Tor Browser is available for Linux in both en-US and zh-CN versions.

Open Firefox, and visit https://github.com/TheTorProject/gettorbrowser/releases. Download either tor-browser-linux64-8.0.2_zh-CN.tar.xz or tor-browser-linux64-8.0.2_en-US.tar.xz, depending on your language preference. We will use the example of tor-browser-linux64-8.0.2_en-US.tar.xz.

Click the file name. Select Save File, and click OK. It is a large download (over 70 MB). When the download is complete, close Firefox.

Open a terminal (Ctrl+Alt+t), and change directory into your Downloads folder:

cd ~/Downloads

Enter the ls for list command:

ls

You should see your downloaded archive file in there. Extract the archive by entering the command:

tar -xvf tor-browser-linux64-8.0.2_en-US.tar.xz

If you now repeat the ls command, you will see that tar -xvf has created a new directory named tor-browser_en-US. Change into this directory by issuing the command:

cd tor-browser_en-US

This directory contains an executable script named start-tor-browser.desktop. Execute this script:

./start-tor-browser.desktop

After 10 seconds or so, the initial Tor screen appears. Tor is blocked in China, so a special configuration is needed.

  1. Click the button Configure.
  2. Check the box Tor is censored in my country.
  3. An option automatically appears, Select a built-in bridge.
  4. Select the option meek-azure (works in China).
  5. Click Connect.
  6. You will see a message telling you to wait. It may take several minutes for Tor Browser to connect to the Tor network.
  7. After a successful connection, the Tor Browser launches.
  8. In the Tor Browser, visit https://check.torproject.org
  9. Wait while Tor Browser connects to the site.
  10. You should see a message: "Congratulations. This browser is configured to use Tor."
  11. If you change the language, the URL becomes https://check.torproject.org/?lang=zh_CN, and the message reads 恭喜。该浏览器已配置为使用 Tor 网络。

In the launcher on the left, right-click on the Tor Browser icon, and select Add to Favorites. When you close Tor Browser, it will now remain in the launcher for future use.

Program-Think Downloads

BTSync (now called Resilio Sync) is a proprietary peer-to-peer file synchronization tool. Its use for downloading GFW tools is explained in two blog posts:

To use this approach, first create a directory to sync. Open a terminal (Ctrl+Alt+t), and issue the command:

mkdir ~/Downloads/program-think

The posts on the Program-Think blog describe a problem in that BTSync trackers are blocked in China. We therefore need to enable the Distributed Hash Table (DHT) functionality of BTSync. This is only available in certain versions of BTSync. Version 1.4.111 was the last version that was both free and supported DHT enabling.

The regular executables assume you have a device running glibc 2.24 and later. There are special executables for older devices running glibc 2.23 and before. Each executable comes in a 32-bit (i386) and a 64-bit (x64) edition. You can check which version of glibc you have by opening a terminal (Ctrl+Alt+t) entering the command:

ldd --version

Ubuntu 18.04 should return a version of 2.27, so we are good to use the regular 64-bit version of BTSync 4.1.111. This download is named btsync_x64-1.4.111.tar.gz.

Open Firefox, and download the archive of your choice:

btsync_glibc23_i386-1.4.111.tar.gz

btsync_glibc23_x64-1.4.111.tar.gz

btsync_i386-1.4.111.tar.gz

btsync_x64-1.4.111.tar.gz

Note: For Windows 64-bit and Windows 32-bit users, the following are also available:

BTSync_x64-1.4.111.exe

BTSync-1.4.111.exe

For Mac users, the following are also available:

BTSync-1.4.111.dmg

Our choice in this example is btsync_x64-1.4.111.tar.gz. Select the option Save File, and click OK. Once the download is complete, close Firefox.

Open a terminal (Ctrl+Alt+t)), and change into your Downloads folder:

cd ~/Downloads

Enter the ls for list command:

ls

You should see your download in there, which for us is named btsync_x64-1.4.111.tar.gz. You will also see the program-think directory you created a moment ago.

Check the integrity of the file with the sha256sum command:

sha256sum btsync_x64-1.4.111.tar.gz

The sha256 checksums should be as follows:

758cb2e3b21a21297a6fc46ca36999b2c7c170939b366e012af62a2ca953179c btsync_glibc23_i386-1.4.111.tar.gz

921c47be0f60a3c88e8452a1de5252b2cbf1c8280d57a011f400d3cb9df676cc btsync_glibc23_x64-1.4.111.tar.gz

f3b3095d5b7021157ada032040144e715621585864e979ba53a4697be8918ae3 btsync_i386-1.4.111.tar.gz

6ea03cd2f60177baca58c701b80e1abf44b7c42fc4ec5b8bcfd3b266876e832f btsync_x64-1.4.111.tar.gz

To extract the files from the archive, issue the command:

tar -xvzf btsync_x64-1.4.111.tar.gz

Three files are extracted. The executable itself is named btsync. Run this program:

./btsync

BTSync forks a background process that listens on the default port of 8888.

Close the terminal. Open Firefox and visit http://127.0.0.1:8888.

On the welcome screen, check the box for the End User License Agreement (EULA). Enter your choice of a username, password, and confirm password. Click Get Started.

A box appears, Authentication Required. This is for the username and password you chose a moment ago. When you have typed them, click OK.

If you want to change the language of the interface, click the gear icon, select Preferences, and change the Language as you wish.

Now click the add key icon. Add the program-think key:

BTLZ4A4UD3PEWKPLLWEOKH3W7OQJKFPLG

Click Next. Choose your folder, /home/yourusername/Downloads/program-think. Click Add.

Now select the row for the folder you created a few moments ago, e.g., /home/yourusername/Downloads/program-think. Click the three dots at the end of the row, and select Preferences. These are folder-specific preferences.

Close the folder-specific Preferences box.

The Status column shows that the folder is in status Receiving. When the sync is complete, you will see these contents in your program-think subdirectory within your Downloads directory: