shoes

shoes is a multi-protocol proxy server written in Rust.

Supported protocols

Features

All supported protocols can be combined with the following features:

Examples

Here's an example of running a WSS vmess and shadowsocks server, with all requests routed through a SOCKS proxy:

```yaml

Listen on all IPv4 interfaces, port 443 (HTTPS)

For other YAML config examples, see the examples directory.

Installation

Precompiled binaries for x86_64 and Apple aarch64 are available on Github Releases.

Else, if you have a fairly recent Rust and cargo installation on your system, shoes can be installed with cargo.

bash cargo install shoes

Usage

``` shoes [OPTIONS] [YAML CONFIG PATH] [..]

OPTIONS:

-t, --threads NUM
    Set the number of worker threads. This usually defaults to the number of CPUs.

-d, --dry-run
    Parse the config and exit.

```

Config format

Sorry, formal documentation for the YAML config format have not yet been written. You can refer to the examples, or open an issue if you need help.

Roadmap