Ombrac est une solution de tunneling TCP hautes performances basée sur Rust, conçue pour une communication sécurisée entre les clients et les serveurs.
Ombrac est organisé en trois caisses principales
ombrac
: Bibliothèque principale implémentant le protocole tunnelombrac-client
: Implémentation du client Ombracombrac-server
: implémentation du serveur Ombracombrac-macros
: Implémentation des macros Ombracombrac-transport
: Mise en place du transport Ombrac Téléchargez la dernière version à partir de la page des versions.
cargo build --bin ombrac-client --bin ombrac-server --features binary
REMARQUE : Sur les systèmes Linux, aws-lc-rs
sera utilisé pour les opérations cryptographiques. Le compilateur AC et CMake peuvent être requis sur ces systèmes pour l'installation.
ombrac-server --listen " [::]:443 " --tls-cert " ./cert.pem " --tls-key " ./key.pem "
Démarre le serveur Ombrac en écoutant sur le port 443, en utilisant le certificat TLS fourni et la clé pour la communication cryptée.
ombrac-client --socks " 127.0.0.1:1080 " --server-address " example.com:443 "
Will configure un serveur SOCKS5 sur 127.0.0.1:1080, transmettant le trafic vers example.com:443.
Lors de l'utilisation d'un certificat auto-signé, le client requiert que le paramètre --server-name
et le chemin --tls-cert
soient explicitement configurés.
Usage: ombrac-server [OPTIONS] --listen < ADDR > --tls-cert < FILE > --tls-key < FILE >
Options:
-h, --help Print help
-V, --version Print version
Transport QUIC:
--listen < ADDR >
Transport server listening address
--tls-cert < FILE >
Path to the TLS certificate file for secure connections
--tls-key < FILE >
Path to the TLS private key file for secure connections
--congestion-initial-window < NUM >
Initial congestion window in bytes
--max-idle-timeout < TIME >
Connection idle timeout in millisecond
--max-keep-alive-period < TIME >
Connection keep alive period in millisecond
--max-open-bidirectional-streams < NUM >
Connection max open bidirectional streams
Logging:
--tracing-level < TRACE > Logging level e.g., INFO, WARN, ERROR [default: WARN]
Usage: ombrac-client [OPTIONS] --server-address < ADDR >
Options:
-h, --help Print help
-V, --version Print version
Endpoint SOCKS:
--socks < ADDR > Listening address for the SOCKS server [default: 127.0.0.1:1080]
Transport QUIC:
--bind < ADDR >
Bind address
--server-name < STR >
Name of the server to connect
--server-address < ADDR >
Address of the server to connect
--tls-cert < FILE >
Path to the TLS certificate file for secure connections
--congestion-initial-window < NUM >
Initial congestion window in bytes
--max-idle-timeout < TIME >
Connection idle timeout in millisecond
--max-keep-alive-period < TIME >
Connection keep alive period in millisecond
--max-open-bidirectional-streams < NUM >
Connection max open bidirectional streams
Logging:
--tracing-level < TRACE > Logging level e.g., INFO, WARN, ERROR [default: WARN]
Les contributions sont les bienvenues ! N'hésitez pas à créer le référentiel, à soumettre des problèmes ou à envoyer des demandes d'extraction pour aider à améliorer Ombrac.
Ce projet est sous licence Apache-2.0.