merino
merino copied to clipboard
:sheep: A SOCKS5 Proxy server written in Rust
_
_ __ ___ ___ _ __(_)_ __ ___
| '_ ` _ \ / _ \ '__| | '_ \ / _ \
| | | | | | __/ | | | | | | (_) |
|_| |_| |_|\___|_| |_|_| |_|\___/
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 .
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
🚥 Roadmap
- [x] IPV6 Support
- [ ]
SOCKS5
Authentication Methods- [x]
NOAUTH
- [x]
USERPASS
- [ ]
GSSAPI
Coming Soon!
- [x]
- [ ] Custom plugin/middleware support
- [ ]
SOCKS5
Commands- [x]
CONNECT
- [ ]
BIND
- [ ]
ASSOCIATE
- [x]
- [ ] Benchmarks & Unit tests
- [ ] Actix based backend
- [ ]
SOCKS4
/SOCKS4a
Support