Ombrac es una solución de túnel TCP basada en Rust de alto rendimiento diseñada para una comunicación segura entre clientes y servidores.
Ombrac está organizado en tres cajas principales.
ombrac
: biblioteca central que implementa el protocolo de túnelombrac-client
: implementación del cliente Ombracombrac-server
: implementación del servidor Ombracombrac-macros
: implementación de macros de Ombracombrac-transport
: Implementación del transporte de Ombrac Descargue la última versión desde la página de lanzamientos.
cargo build --bin ombrac-client --bin ombrac-server --features binary
NOTA : En sistemas Linux, se utilizará aws-lc-rs
para operaciones criptográficas. Es posible que se requiera el compilador AC y CMake en estos sistemas para la instalación.
ombrac-server --listen " [::]:443 " --tls-cert " ./cert.pem " --tls-key " ./key.pem "
Inicia el servidor Ombrac escuchando en el puerto 443, utilizando el certificado TLS y la clave proporcionados para la comunicación cifrada.
ombrac-client --socks " 127.0.0.1:1080 " --server-address " example.com:443 "
Will configura un servidor SOCKS5 en 127.0.0.1:1080 y reenvía el tráfico a example.com:443.
Cuando se utiliza un certificado autofirmado, el cliente requiere que tanto el parámetro --server-name
como la ruta --tls-cert
estén configurados explícitamente.
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]
¡Las contribuciones son bienvenidas! No dudes en bifurcar el repositorio, enviar problemas o enviar solicitudes de extracción para ayudar a mejorar Ombrac.
Este proyecto está bajo la licencia Apache-2.0.