Ombrac — это высокопроизводительное решение TCP-туннелирования на основе Rust, предназначенное для безопасной связи между клиентами и серверами.
Омбрак разделен на три основных ящика.
ombrac
: базовая библиотека, реализующая туннельный протокол.ombrac-client
: реализация клиента Ombracombrac-server
: реализация сервера Ombrac.ombrac-macros
: реализация макросов Ombracombrac-transport
: реализация транспорта Ombrac Загрузите последнюю версию со страницы выпусков.
cargo build --bin ombrac-client --bin ombrac-server --features binary
ПРИМЕЧАНИЕ . В системах Linux для криптографических операций будет использоваться aws-lc-rs
. Для установки в этих системах могут потребоваться компилятор AC и CMake.
ombrac-server --listen " [::]:443 " --tls-cert " ./cert.pem " --tls-key " ./key.pem "
Запускает сервер Ombrac, прослушивающий порт 443, используя предоставленный сертификат TLS и ключ для зашифрованной связи.
ombrac-client --socks " 127.0.0.1:1080 " --server-address " example.com:443 "
Уилл настроит сервер SOCKS5 на адресе 127.0.0.1:1080, перенаправив трафик на example.com:443.
При использовании самозаверяющего сертификата клиент требует, чтобы параметр --server-name
и путь --tls-cert
были явно настроены.
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]
Вклады приветствуются! Не стесняйтесь создавать форки репозитория, сообщать о проблемах или отправлять запросы на включение, чтобы помочь улучшить Ombrac.
Этот проект распространяется по лицензии Apache-2.0.