mirror of
https://github.com/OutlineFoundation/outline-server.git
synced 2026-05-13 05:52:04 +00:00
57 lines
2.5 KiB
Markdown
57 lines
2.5 KiB
Markdown
# Outline Server
|
|
|
|
 [](https://community.internetfreedomfestival.org/community/channels/outline-community) [](https://www.reddit.com/r/outlinevpn/)
|
|
|
|
Outline Server is the component that provides the Shadowsocks service (via [outline-ss-server](https://github.com/OutlineFoundation/tunnel-server/)) and a service management API. You can deploy this server directly following simple instructions in this repository, or if you prefer a ready-to-use graphical interface you can use the [Outline Manager](https://github.com/OutlineFoundation/outline-apps/).
|
|
|
|
**Components:**
|
|
|
|
- **Outline Server** ([`src/shadowbox`](src/shadowbox)): The core proxy server that runs and manages [outline-ss-server](https://github.com/OutlineFoundation/tunnel-server/), a Shadowsocks backend. It provides a REST API for access key management.
|
|
|
|
- **Metrics Server** ([`src/metrics_server`](src/metrics_server)): A REST service for optional, anonymous metrics sharing.
|
|
|
|
**Join the Outline Community** by signing up for the [IFF Mattermost](https://wiki.digitalrights.community/index.php?title=IFF_Mattermost)!
|
|
|
|
## Shadowsocks and Anti-Censorship
|
|
|
|
Outline's use of Shadowsocks means it benefits from ongoing improvements that strengthen its resistance against detection and blocking.
|
|
|
|
**Key Protections:**
|
|
|
|
- **AEAD ciphers** are mandatory.
|
|
- **Probing resistance** mitigates detection techniques.
|
|
- **Protection against replayed data.**
|
|
- **Variable packet sizes** to hinder identification.
|
|
|
|
See [Shadowsocks resistance against detection and blocking](docs/shadowsocks.md).
|
|
|
|
## Installation
|
|
|
|
**Prerequisites**
|
|
|
|
- [Node](https://nodejs.org/en/download/) LTS (`lts/hydrogen`, version `18.16.0`)
|
|
- [NPM](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) (version `9.5.1`)
|
|
- [Go](https://go.dev/dl/) 1.21+
|
|
|
|
1. **Install dependencies**
|
|
|
|
```sh
|
|
npm install
|
|
```
|
|
|
|
1. **Start the server**
|
|
|
|
```sh
|
|
./task shadowbox:start
|
|
```
|
|
|
|
Exploring further options:
|
|
|
|
- **Refer to the README:** Find additional configuration and usage options in the core server's [`README`](src/shadowbox/README.md).
|
|
- **Learn about the build system:** For in-depth build system information, consult the [contributing guide](CONTRIBUTING.md).
|
|
|
|
1. **To clean up**
|
|
|
|
```sh
|
|
./task clean
|
|
```
|