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.

Prepare:

You need Golang compiler and Git, so install them.

[yandere@moe golang]$ sudo pacman -S go git

set the GOPATH

[yandere@moe golang]$ export GOPATH=~/golang

set necessary variables

[yandere@moe 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/,$/}/')
LDFLAGS="\
-X github.com/Psiphon-Labs/psiphon-tunnel-core/psiphon/common.buildDate=$BUILDDATE \
-X github.com/Psiphon-Labs/psiphon-tunnel-core/psiphon/common.buildRepo=$BUILDREPO \go build
-X github.com/Psiphon-Labs/psiphon-tunnel-core/psiphon/common.buildgo buildRev=$BUILDREV \
-X github.com/Psiphon-Labs/psiphon-tunnel-core/psiphon/common.goVersion=$GOVERSION \
-X github.com/Psiphon-Labs/psiphon-tunnel-core/psiphon/common.dependencies=$DEPENDENCIES \
"

Build:

get necessary files

[yandere@moe golang]$ go get

build

[yandere@moe golang]$ go build

Configuring:

create a configure file called config.json and write

{
"LocalHttpProxyPort":8081,
"LocalSocksProxyPort":1081,
"PropagationChannelId":"FFFFFFFFFFFFFFFF",
"RemoteServerListDownloadFilename":"remote_server_list",
"RemoteServerListSignaturePublicKey":"MIICIDANBgkqhkiG9w0BAQEFAAOCAg0AMIICCAKCAgEAt7Ls+/39r+T6zNW7GiVpJfzq/xvL9SBH5rIFnk0RXYEYavax3WS6HOD35eTAqn8AniOwiH+DOkvgSKF2caqk/y1dfq47Pdymtwzp9ikpB1C5OfAysXzBiwVJlCdajBKvBZDerV1cMvRzCKvKwRmvDmHgphQQ7WfXIGbRbmmk6opMBh3roE42KcotLFtqp0RRwLtcBRNtCdsrVsjiI1Lqz/lH+T61sGjSjQ3CHMuZYSQJZo/KrvzgQXpkaCTdbObxHqb6/+i1qaVOfEsvjoiyzTxJADvSytVtcTjijhPEV6XskJVHE1Zgl+7rATr/pDQkw6DPCNBS1+Y6fy7GstZALQXwEDN/qhQI9kWkHijT8ns+i1vGg00Mk/6J75arLhqcodWsdeG/M/moWgqQAnlZAGVtJI1OgeF5fsPpXu4kctOfuZlGjVZXQNW34aOzm8r8S0eVZitPlbhcPiR4gT/aSMz/wd8lZlzZYsje/Jr8u/YtlwjjreZrGRmG8KMOzukV3lLmMppXFMvl4bxv6YFEmIuTsOhbLTwFgh7KYNjodLj/LsqRVfwz31PgWQFTEPICV7GCvgVlPRxnofqKSjgTWI4mxDhBpVcATvaoBl1L/6WLbFvBsoAUBItWwctO2xalKxF5szhGm8lccoc5MZr8kfE0uxMgsxz4er68iCID+rsCAQM=",
"RemoteServerListUrl":"https://s3.amazonaws.com//psiphon/web/mjr4-p23r-puwl/server_list_compressed",
"SponsorId":"FFFFFFFFFFFFFFFF",
"UseIndistinguishableTLS":true
}

other parameters can be found in here.

Run:

then you can start using Psiphon on Linux

[yandere@moe golang]$ ./go(compiled file) -config config.json

and set your socks proxy to 127.0.0.1:1081

9 Comments

  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 = “[]”;

    Reply
  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

    Reply
  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.

    Reply
    • 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 “psiphon3.co” is not the official website.
      Try to download again from the official Psiphon website “https://psiphon.ca/”.

      Reply
  4. To determine internal swelling is difficult enough, therefore, consequently, they influence the body for a long time, which threatens the normal fetus. Fluids are dangerous because they break blood circulation. Such situation leads to worsening feeding and the breath baby, created hypoxia.
    Fighting such a pathology should be done with the help of correction feeding and special procedures so that water does not stay tissues. If expectant mother is resting, then under the feet preferably put a cushion or pillow to improve the blood circulation of tired legs. Prohibited long time to sit or stand, as this leads to stagnation in the body. It is recommended that the knee-elbow position several times a day in order to increase blood flow.
    how to reduce swelling while pregnant

    Reply
  5. There are different ways to fry tomatoes, but each of them will require cook to spend row hours in the kitchen, so this dish is usually better correct do on weekends or for special occasions. When tomatoes are roasted, they get a deep taste and are combined with seafood, antipasto and other roasted vegetables. Moreover, they are perfectly suitable for use in the baking industry, in making bread or cake with custard.
    http://stewedtomatoes.top/homemade-stewed-tomatoes-recipe

    Reply

Leave a Reply

Your email address will not be published.

*

code