Open-source VPN client that deploys and connects to your own self-hosted VPN server over SSH, across desktop and mobile.
OutlineFoundation/outline-server
Outline Server is a Shadowsocks-based proxy server with a REST API for managing access keys, developed by Jigsaw.
- Stars
- 6,254
- Forks
- 877
- Open issues
- 184
- Last commit
- 10 days ago
What is it?
Outline Server runs a Shadowsocks service through the outline-ss-server backend and exposes a REST API for creating and managing access keys. It is the server component of the Outline system, which lets operators deploy a private proxy that users connect to with a shared access key.
The project includes a core server in src/shadowbox that runs and manages the Shadowsocks backend, and an optional metrics server for anonymous usage metrics sharing. Shadowsocks traffic uses AEAD ciphers, with protections against active probing, replayed data, and fingerprinting through variable packet sizes.
Deployment is done from the repository with npm install and a task runner command. For a graphical interface, the separate Outline Manager application can be used instead.
Key features
- 01Runs a Shadowsocks service via the outline-ss-server backend.
- 02Provides a REST API for access key management.
- 03Requires AEAD ciphers for Shadowsocks connections.
- 04Includes probing resistance, replay protection, and variable packet sizes.
- 05Offers an optional metrics server for anonymous metrics sharing.
Use cases
- Self-hosting a private Shadowsocks proxy on a Linux server.
- Issuing individual access keys to users through a REST API.
- Pairing the server with the Outline Manager app for a graphical management experience.
Quick start
- 1
Install Node LTS and NPM, plus Go 1.21+ (prerequisites)
- 2
Install dependencies
npm install - 3
Start the server
./task shadowbox:start
Things to know
- Built from source with Node, NPM and Go, so setup takes some effort.
- Designed for self-hosting a proxy server rather than as a ready-to-use desktop app.
In collections
Topics
FAQ
- What is outline-server?
- Outline Server is a Shadowsocks-based proxy server with a REST API for managing access keys, developed by Jigsaw. Outline Server runs a Shadowsocks service through the outline-ss-server backend and exposes a REST API for creating and managing access keys. It is the server component of the Outline system, which lets operators deploy a private proxy that users connect to with a shared access key.
- Is outline-server free to use? What license does it have?
- outline-server is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is outline-server still maintained?
- Actively maintained. The last commit to outline-server was on Oct 28, 2026.
- What can I use outline-server for?
- Self-hosting a private Shadowsocks proxy on a Linux server. Issuing individual access keys to users through a REST API. Pairing the server with the Outline Manager app for a graphical management experience.
- How do I install outline-server?
- Install Node LTS and NPM, plus Go 1.21+ (prerequisites) Install dependencies: npm install Start the server: ./task shadowbox:start
- Where can I get outline-server?
- The source code and installation instructions are on GitHub: https://github.com/OutlineFoundation/outline-server
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Shell script that installs and manages an OpenVPN road warrior server on Ubuntu, Debian and RHEL-family distros.
A shell script that sets up a WireGuard VPN server on Linux in minutes and manages its clients.
A small, efficient HTTP/HTTPS proxy daemon for POSIX systems, suited to small networks where larger proxies are too heavy.
Docker-based web admin UI for installing and managing a WireGuard VPN server and its client configurations.
Self-hosted home server platform acting as a secure reverse proxy, app manager, and gateway with auth, MFA, SSO, and anti-bot protection.