_
_ __ ___ ___ _ __(_)_ __ ___
| '_ ` _ \ / _ \ '__| | '_ \ / _ \
| | | | | | __/ | | | | | | (_) |
|_| |_| |_|\___|_| |_|_| |_|\___/
A SOCKS5
Proxy server written in Rust
π Features
- Written in 100% Safe Rust
- Multi-threaded connection handler
- Lightweight (Less than 0.6% CPU usage while surfing the web/streaming YouTube)
- Standalone binary (no system dependencies)
1+ Gb/second
connection speeds (On Gigabit LAN network over ethernet. Results may vary!)- Tunable logging (by flags or
RUST_LOG
environmental variable) SOCKS5
Compatible Authentication methods:NoAuth
- Username & Password
GSSAPI
Coming Soon!
π¦ Installation & π Usage
Installation
cargo install merino
OR
git clone https://github.com/ajmwagar/merino
cd merino
cargo install --path .
OR
docker image pull ghcr.io/ajmwagar/merino:latest
Usage
# Start a SOCKS5 Proxy server listening on port 1080 without authentication
merino --no-auth
# Use username/password authentication and read users from users.csv
merino --users users.csv
# Display a help menu
merino --help
OR
docker container run --pull=always --name=merino -p=8001:8001 ghcr.io/ajmwagar/merino:latest --no-auth --port=8001
π₯ Roadmap
- IPV6 Support
-
SOCKS5
Authentication Methods-
NOAUTH
-
USERPASS
-
GSSAPI
Coming Soon!
-
- Custom plugin/middleware support
-
SOCKS5
Commands-
CONNECT
-
BIND
-
ASSOCIATE
-
- Benchmarks & Unit tests
- Actix based backend
-
SOCKS4
/SOCKS4a
Support