Psiphon is an Internet censorship circumvention system which used by a lot of users around the world, but unfortunately, there are no official binary for Linux systems yet. However, we can still compile it and make it works on Linux.

My first attempt to run Psiphon on Linux was to use wine, but it doesn’t work due to the new design(or something else).

Fortunately, Psiphon is an open-source software and you can download the source code from Github.

The core part of Psiphon is psiphon-tunnel-core, written in Go.


You need Golang compiler and Git, so install them.

[[email protected] golang]$ sudo pacman -S go git

set the GOPATH

[[email protected] golang]$ export GOPATH=~/golang

set necessary variables

[[email protected] golang]$ BUILDDATE=$(date --iso-8601=seconds)
BUILDREPO=$(git config --get remote.origin.url)
BUILDREV=$(git rev-parse --short HEAD)
GOVERSION=$(go version | perl -ne '/go version (.*?) / && print $1')
DEPENDENCIES=$(echo -n "{" && go list -f '{{range $dep := .Deps}}{{printf "%s\n" $dep}}{{end}}' | xargs go list -f '{{if not .Standard}}{{.ImportPath}}{{end}}' | xargs -I pkg bash -c 'cd $GOPATH/src/pkg && echo -n "\"pkg\":\"$(git rev-parse --short HEAD)\","' | sed 's/,$/}/')
-X$BUILDREPO \go build
-X buildRev=$BUILDREV \


get necessary files

[[email protected] golang]$ go get


[[email protected] golang]$ go build


create a configure file called config.json and write


other parameters can be found in here.


then you can start using Psiphon on Linux

[[email protected] golang]$ ./go(compiled file) -config config.json

and set your socks proxy to


  1. how i can do with mobile client config with own psiphon ssh server tunnel.
    what parameter i required to fill for own server

    public static final String PROPAGATION_CHANNEL_ID = “”;
    public static String SPONSOR_ID = “”;
    public static final String REMOTE_SERVER_LIST_URLS_JSON = “[]”;
    public static final String REMOTE_SERVER_LIST_SIGNATURE_PUBLIC_KEY = “”;
    public static final String OBFUSCATED_SERVER_LIST_ROOT_URLS_JSON = “[]”;

  2. we are rebuilding “Psiphon3/android” to work as an android client for “SoftEther Server” since we think it supports/uses “L2TP/IPsec CRT”
    my question is will we ever get it done to support “L2TP/IPsec PSK” not CRT

  3. After installing psiphon 3 on my device, it really slowed my internet connection and it gets disconnect whenever i try to surf.Even the other installed apps are not working properly.please solve the problem asap.

    • Sorry to hear about that, but I am not the Psiphon developer so I can’t help you much about that. However, it seems you didn’t download the genuine version of Psiphon as “” is not the official website.
      Try to download again from the official Psiphon website “”.

    • You can get the configuration parameters from the Windows version, go to %APPDATA% folder and find the Psiphon folder, then make a copy of the configuration file (that’s how I got these values).

  4. You are great.
    Thank you for this manual.
    this ok for me, now i am a psiphon linux internet surfer.


Leave a Reply

Your email address will not be published.