Outline Server, developed by Jigsaw. The Outline Server is a proxy server that runs a Shadowsocks instance and provides a REST API for access key management. https://getoutline.org/
Find a file
Sander Bruens 4f59eea8a9
chore(server): update Prometheus to LTS (#1655)
* chore(server): update Prometheus to LTS

* Add arm64 archives.
2025-03-21 11:58:19 -04:00
.github ci(sentry_webhook): pin Ubuntu due to Chromium bug (via Puppeteer) (#1652) 2025-03-04 20:24:13 -05:00
docs chore: update shadowsocks.md (#1592) 2024-09-10 15:01:13 -04:00
scripts build: use Task (#1535) 2024-04-17 19:48:23 -04:00
src chore(server): set Content-Type header (#1651) 2025-03-10 14:25:18 -04:00
third_party chore(server): update Prometheus to LTS (#1655) 2025-03-21 11:58:19 -04:00
.browserslistrc chore(devtools): non-build updates from client (#1103) 2022-06-03 10:08:21 -04:00
.clang-format import code 2018-03-14 17:52:39 -04:00
.dockerignore Add .dockerignore 2018-05-30 23:35:11 -04:00
.editorconfig Fix lint 2022-03-09 23:10:15 +00:00
.eslintignore Add newlines 2022-03-10 17:10:36 +00:00
.eslintrc.json chore: add lint rule to prevent unnecessary public modifiers (#1557) 2024-07-23 14:28:57 -04:00
.gitallowed Fix eslint annotations 2022-03-10 17:19:27 +00:00
.gitignore Remove Makefile (#1540) 2024-04-19 10:50:43 -06:00
.npmrc Refactor 2022-05-13 11:58:52 -04:00
.nvmrc chore: upgrade node to lts/hydrogen (#1365) 2023-10-16 11:47:42 -04:00
.prettierignore Add newline 2022-03-10 17:07:39 +00:00
.prettierrc.json Rename Prettier config 2022-03-09 23:16:11 +00:00
.shellcheckrc Migrate from Yarn to Node lts/gallium (#1004) 2021-11-05 16:40:34 -04:00
commitlint.config.js clean: add missing license headers and add a CI check (#1572) 2024-08-12 10:56:11 -04:00
CONTRIBUTING.md build: use Task (#1535) 2024-04-17 19:48:23 -04:00
go.mod chore: bump golang.org/x/crypto from 0.18.0 to 0.31.0 (#1625) 2025-03-19 13:23:27 -04:00
go.sum chore: bump golang.org/x/crypto from 0.18.0 to 0.31.0 (#1625) 2025-03-19 13:23:27 -04:00
jasmine.json Fix lint 2022-03-09 23:10:15 +00:00
LICENSE import code 2018-03-14 17:52:39 -04:00
package-lock.json chore: bump braces from 3.0.2 to 3.0.3 (#1559) 2025-03-19 14:03:06 -04:00
package.json chore: update outline-ss-server dependency to latest version (#1593) 2024-09-19 11:37:41 -04:00
README.md build: use Task (#1535) 2024-04-17 19:48:23 -04:00
Taskfile.yml clean: add missing license headers and add a CI check (#1572) 2024-08-12 10:56:11 -04:00
tools.go clean: add missing license headers and add a CI check (#1572) 2024-08-12 10:56:11 -04:00
tsconfig.json chore: upgrade webpack to v5 to support lts/hydrogen (#1422) 2023-10-11 10:44:36 -04:00

Outline Server

Build and Test Mattermost Reddit

Outline Server is the component that provides the Shadowsocks service (via outline-ss-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.

Components:

  • Outline Server (src/shadowbox): The core proxy server that runs and manages outline-ss-server, a Shadowsocks backend. It provides a REST API for access key management.

  • Metrics Server (src/metrics_server): A REST service for optional, anonymous metrics sharing.

Join the Outline Community by signing up for the 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.

Installation

Prerequisites

  • Node LTS (lts/hydrogen, version 18.16.0)
  • NPM (version 9.5.1)
  • Go 1.21+
  1. Install dependencies

    npm install
    
  2. Start the server

    ./task shadowbox:start
    

    Exploring further options:

    • Refer to the README: Find additional configuration and usage options in the core server's README.
    • Learn about the build system: For in-depth build system information, consult the contributing guide.
  3. To clean up

    ./task clean