Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

psipool

Manage a multi-region Psiphon proxy pool entirely from the terminal.
a single-file TUI that gives you one tunnel per country, with per-tunnel SOCKS5 + HTTP ports and systemd supervision.

platform shell arch license

psipool demo

Requirements

OS Debian 9+ / Ubuntu 18.04+ (any Linux with bash 4.4+ and systemd)
Architecture x86_64, i686, arm64
Packages curl, iproute2, gawk (auto-installed on apt systems)

Install

curl -fsSL https://raw.githubusercontent.com/xHossein/psipool/master/psipool.sh -o /tmp/psipool \
  && sudo install -m 755 /tmp/psipool /usr/local/bin/psipool \
  && sudo psipool

Afterwards just sudo psipool from anywhere.

To try it without installing:

bash <(curl -fsSL https://raw.githubusercontent.com/xHossein/psipool/master/psipool.sh)

Usage

Key Action
↑ ↓ Move
Space Toggle (multi-select)
Enter Confirm
/ Filter
Esc Back
q Quit

Using the proxies

Both listeners bind to 127.0.0.1 only.

curl -x http://127.0.0.1:19843    https://api.myip.com   # HTTP
curl -x socks5h://127.0.0.1:21471 https://api.myip.com   # SOCKS5

Files & services

/opt/psipool/
├── psiphon-tunnel-core          # downloaded binary
├── configs/                     # config_<code>.json per instance
└── instances/                   # per-instance working dirs + cache
/etc/systemd/system/psipool@.service   # template unit

Each region is a systemd template instance:

systemctl status psipool@de       # check one instance
journalctl -u psipool@de -f       # follow its logs
systemctl restart psipool@de      # restart it manually

Options

Option Description
--no-color Disable ANSI colors
--ascii Use ASCII-only borders
-v Print version and exit
-h Show help and exit
PSIPHON_PREFIX Override the install prefix (default: /opt/psiphon)
PSIPHON_SYSTEMD_DIR Override the systemd unit directory (default: /etc/systemd/system)

Troubleshooting

Symptom Fix
Region list comes up empty The first probe can take up to 20 s to reach the network; the datastore is cached, so later runs are faster
Instance shows inactive journalctl -u psipool@<code> -f — usually a port conflict or no outbound network
Exit IP shows unreachable The tunnel is still establishing — give it 10-30 s, then check the logs

License

MIT. Unofficial wrapper around psiphon-tunnel-core — not affiliated with or endorsed by Psiphon Inc.

About

Multi-region Psiphon proxy pool, managed from your terminal

Topics

Resources

Stars

9 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages