/outline-bridge-server

Docker Compose files to run an Outline (proxy) bridge server.

Primary LanguagePython

Outline Bridge Server

This repository contains sample Docker Compose files to run a bridge server for the Outline proxy. It helps Outline to work in highly restricted networks.

Documentation

What is Outline?

Outline is a Shadowsocks-based proxy created by Google. It provides high-quality Shadowsocks servers, clients, and managers.

It usually works as below.

(Outline client) <-> [Outline Upstream Server] <-> (Internet)

What does the bridge server do?

The bridge server will be inserted between clients and a server to connect the clients to the server in networks where this connection is not possible directly. It passes the incoming traffic from clients to the specified Outline server.

The bridge server changes the flow as below.

(Outline client) <-> [Outline Bridge Server] <-> [Outline Upstream Server] <-> (Internet)

Setup the bridge server

First install the Outline server, client, and Manager based on the official documentation. Then follow these steps to run the Outline bridge server.

  1. Install Docker and Docker-compose.
  2. Clone this repository into the bridge server.
  3. Run ./setup.py script. It gets the following inputs:
    1. Server IP/Hostname: The upstream IP or hostname (Outline Manager > Settings > Hostname)
    2. Server Port: The upstream Outline port (Outline Manager > Settings > Port)
    3. Bridge Port: Determine a free port for bridge server.
  4. Run docker-compose up -d.
  5. Run ./convert.py to convert original (upstream) links to bridge links.
    • It gets the following inputs:
      1. Bridge IP: Enter the bridge server IP address or domain.
      2. Original ss:// link: Enter the original link generated by Outline Manager.
    • It prints the following outputs:
      1. New outline link: The new link with bridge IP/Domain and port.
      2. New invitation link: The new invitation link to share with your users.

Docker images

More