Linux is widely used on developer workstations, homelab servers, and cloud VMs. You can connect to our infrastructure with a graphical client (recommended on desktops) or with a headless sing-box core under systemd (recommended on servers).
We strongly recommend v2rayN as your primary Linux client. For headless setups, we recommend sing-box with a JSON profile from your Product Details Page. Always confirm filenames and versions on official release pages; projects update frequently.
Below are recommended graphical clients. Prefer assets from each project’s official GitHub Releases page.
1. v2rayN Primary Recommendation
v2rayN is a cross-platform GUI client that bundles multiple cores (including Xray, sing-box, and mihomo) and supports advanced routing. On Linux it ships as .deb, .rpm, and portable .zip for x64 and arm64. Upstream documents support for Debian 12+, Ubuntu 22.04+, Fedora 36+, and RHEL 9+.
- License: Open-Source / Free
- Official GitHub Repository: 2dust/v2rayN
- Release files (names and meanings): v2rayN Wiki — Release files introduction
- Download Instructions:
- Debian / Ubuntu (x64): download
v2rayN-linux-64.deb, thensudo apt install -y ./v2rayN-linux-64.deb - Fedora / RHEL-style (x64): download
v2rayN-linux-rhel-x64.rpm, thensudo dnf install -y ./v2rayN-linux-rhel-x64.rpm - Portable .zip (x64): extract
v2rayN-linux-64.zip, runchmod +x v2rayN, then./v2rayN - arm64: use
v2rayN-linux-arm64.deb,v2rayN-linux-rhel-arm64.rpm, orv2rayN-linux-arm64.zipinstead of the x64 filenames - Download the Latest Release from GitHub
- Debian / Ubuntu (x64): download
2. Clash Verge Rev User-Friendly Alternative
Clash Verge Rev is a Tauri-based client with a modern UI. Upstream publishes .deb, .rpm, and .AppImage builds. For AppImage downloads, run chmod +x on the file before launching it.
- License: Open-Source / Free
- Official GitHub Repository: clash-verge-rev/clash-verge-rev
- Documentation: Clash Verge Rev Docs
- Download the Latest Release from GitHub
3. Hiddify Modern Multi-Platform Alternative
Hiddify (formerly Hiddify-Next) provides a streamlined experience on top of sing-box. Linux builds commonly ship as Hiddify-Linux-x64.AppImage or similar; check the release page for the exact filename.
- License: Open-Source / Free
- Official GitHub Repository: hiddify/hiddify-next
- Download the Latest Release from GitHub
4. Flclash Lightweight Client
Flclash is a Flutter-based client for Clash-compatible subscriptions. Linux assets may appear as Flclash-linux-amd64.deb or .AppImage, depending on the release.
- License: Open-Source / Free
- Official GitHub Repository: chen08209/Flclash
- Download the Latest Release from GitHub
Finalizing Your Setup (Graphical Clients)
To connect with v2rayN, Clash Verge Rev, Hiddify, or Flclash:
- Log into your Client Area and open your Product Details Page.
- Copy your Subscription URL (or use a QR code if the client supports it).
- Open your client, add or import the subscription, and refresh the node list.
- Select a node and enable system proxy or TUN mode as needed.
For Advanced Users: sing-box (headless CLI)
For servers or environments without a desktop, run sing-box as a systemd service. Use a sing-box .json profile from your Product Details Page.
- Official manual: https://sing-box.sagernet.org
- Package manager & install script: Package Manager
- Manual tarballs: SagerNet/sing-box Releases
The stable release line is currently in the v1.13.x series (for example v1.13.3). Always substitute the version in URLs with the tag shown on the releases page.
Install (repository, script, or tarball)
Debian / Ubuntu: follow the “Debian / APT” block on the Package Manager page, then sudo apt-get install sing-box. Fedora / RHEL: use the DNF instructions on the same page, then sudo dnf install sing-box. Alternatively, curl -fsSL https://sing-box.app/install.sh | sh installs the release the script resolves.
Package installs usually use the unit name sing-box and config path /etc/sing-box/config.json. If unsure, run systemctl cat sing-box after installation.
Manual binary (example, x86-64 v1.13.3):
mkdir -p /tmp/sing-box-install && cd /tmp/sing-box-install
curl -fL -o sing-box.tar.gz \
https://github.com/SagerNet/sing-box/releases/download/v1.13.3/sing-box-1.13.3-linux-amd64.tar.gz
tar -xvf sing-box.tar.gz
sudo install -m 0755 sing-box-1.13.3-linux-amd64/sing-box /usr/local/bin/sing-box
sing-box version
On Alpine or other musl-based systems, download the -linux-amd64-musl.tar.gz (or matching arch) asset instead of the default glibc build.
Configuration and check
Place your JSON profile at /etc/sing-box/config.json (typical for packages) or /usr/local/etc/sing-box/config.json (typical for a manual /usr/local/bin install). Restrict permissions (for example chmod 600).
sudo sing-box check -c /etc/sing-box/config.json
systemd (manual install under /usr/local)
sudo nano /etc/systemd/system/sing-box.service
Example unit:
[Unit]
Description=sing-box service
Documentation=https://sing-box.sagernet.org
After=network-online.target
Wants=network-online.target
[Service]
CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_NET_RAW
AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_NET_RAW
ExecStart=/usr/local/bin/sing-box run -c /usr/local/etc/sing-box/config.json
Restart=on-failure
RestartSec=10s
LimitNOFILE=infinity
[Install]
WantedBy=multi-user.target
If your distribution already ships a sing-box.service unit, use systemctl edit sing-box to adjust ExecStart instead of replacing the packaged file.
Start the service and logs
sudo systemctl daemon-reload
sudo systemctl enable sing-box
sudo systemctl start sing-box
sudo systemctl status sing-box
sudo journalctl -u sing-box --output cat -f
Proxy environment (optional)
If your config exposes a local HTTP/SOCKS port (adjust the port to match your inbound):
export http_proxy="http://127.0.0.1:7890"
export https_proxy="http://127.0.0.1:7890"
export all_proxy="socks5://127.0.0.1:7890"
curl -fsS https://1.1.1.1/cdn-cgi/trace
To persist exports, add them to ~/.bashrc or ~/.zshrc.