
Платформа нулевого доверия для сетей, которая делает сервисы невидимыми с помощью криптографической идентификации, политик доступа и сквозного шифрования. Заменяет VPN, защищает IoT и соединяет мультиоблачные среды без открытых портов.
OpenZiti — это открытая платформа сетевого взаимодействия с нулевым доверием, которая делает сетевые сервисы невидимыми для неавторизованных пользователей. Каждое соединение, будь то от пользователя, сервиса, устройства или рабочей нагрузки, аутентифицируется с помощью криптографической идентичности, авторизуется политикой и шифруется сквозным образом.
OpenZiti работает как с существующими приложениями (с помощью легковесных туннелизаторов без изменения кода), так и с новыми приложениями (с использованием встроенных SDK для самой сильной модели нулевого доверия). Это делает его практичным как для окружений brownfield, так и для разработки greenfield.
Создано и спонсируется NetFoundry. Лицензировано по Apache 2.0.
OpenZiti позволяет распространять нулевое доверие куда угодно для любых случаев, включая нечеловеческие рабочие нагрузки и рабочие процессы, через несколько сетей и сторонних организаций. Ниже приведены некоторые распространённые варианты использования.
Обеспечьте безопасный доступ к внутренним сервисам без VPN-клиентов, проблем с разделенным туннелированием или узких мест концентратора. Каждый сервис индивидуально авторизован. Никакой проблемы «как только вы внутри, вы можете добраться до всего».
Сделайте API и сервисы невидимыми для интернета. Ноль прослушивающих портов означает нулевую поверхность атаки. Авторизованные клиенты подключаются через OpenZiti; все остальные ничего не видят.
Дайте каждому устройству, датчику и машине уникальную криптографическую идентичность. Модель идентичности OpenZiti подходит для нечеловеческих рабочих нагрузок так же хорошо, как и для людей, обеспечивая надёжную аутентификацию для соединений «машина-машина», составляющих основную часть современного сетевого трафика.
Обеспечьте безопасную связь между рабочими нагрузками через облака и окружения. Сервисы аутентифицируют друг друга с помощью криптографической идентичности, а не сетевого расположения. Никаких общих секретов, IP-белых списков или окружных полномочий.
Обеспечьте безопасную связь агент-сервис и агент-агент с помощью криптографической идентичности для каждого участника ИИ. MCP-серверы, конечные точки инструментов и частные LLM остаются тёмными, без прослушивающих портов или публичных URL. Агенты аутентифицируются с помощью сильных уникальных идентичностей и имеют доступ только к тем ресурсам, которые разрешены политикой, поэтому автономные рабочие процессы получают необходимый доступ без окружных полномочий над всем остальным.
Одна оверлейная сеть через AWS, Azure, GCP, локальные дата-центры и граничные локации. Никаких облачно-специфичных сетевых инструментов, VPN-туннелей между окружениями или сложных пиринговых соглашений.
Получайте доступ к домашним лабораторным или самостоятельно размещённым сервисам, таким как Nextcloud, Home Assistant, медиа-серверы и среды разработки, из любого места. Без открытых портов роутера, без динамического DNS, без зависимости от сторонних туннельных сервисов. Вы контролируете весь путь.
Соединяйте сервисы через кластеры Kubernetes без сложных правил входа, сайдкаров сервисной сетки или VPN-туннелей между кластерами. Работает за пределами Kubernetes, поддерживая соединение k8s-сервисов с виртуальными машинами, голым железом, IoT-устройствами или чем угодно ещё в оверлее.
OpenZiti поддерживает три модели нулевого доверия. Вы можете смешивать их в одной сети и мигрировать между ними со временем.
Разверните периферийный маршрутизатор OpenZiti в доверенной сетевой зоне. Трафик входит в оверлей от аутентифицированных клиентов и выходит в частную сеть, где работают сервисы.
Запустите туннелизатор OpenZiti на том же хосте, что и ваш сервис. Туннелизатор отвечает за идентичность, аутентификацию и шифрование. Сервису нужно только принимать соединения с localhost.
Встраивайте SDK OpenZiti непосредственно в клиентские и/или серверные приложения. Само приложение содержит криптографическую идентичность и шифрует трафик внутри процесса. Прослушивающих портов нет, даже на localhost.
С чего начать: Многие команды начинают с Доступа к хосту (туннелизаторы) для существующих сервисов. Это развертывается за минуты без изменения кода. Для новых разработок или высокозащищённых рабочих нагрузок Доступ к приложению (SDK) обеспечивает наиболее сильную позицию нулевого доверия.
Следующие краткие руководства показывают, как настроить локальную сеть OpenZiti для разработки, тестирования и обучения. Для производственных развертываний смотрите документацию по продукту на https://netfoundry.io/docs/openziti/category/deployments/.
Самый быстрый способ получить локальную сеть OpenZiti:
wget https://get.openziti.io/dock/all-in-one/compose.yml
docker compose up
Это запускает контроллер, периферийный маршрутизатор и консоль Ziti в одном стеке compose. Консоль доступна по адресу https://localhost:1280/zac/. Отсюда вы можете создавать идентичности, определять сервисы и настраивать политики доступа.
Смотрите всё-в-одном Docker quickstart для полных деталей, включая параметры хранения, переменные окружения и использование CLI.
Загрузите последний бинарник ziti из GitHub Releases, затем:
ziti edge quickstart
Это поднимает локальную сеть для разработки: контроллер, маршрутизатор и стандартную административную идентичность. Идеально для тестирования и обучения.
Чтобы добавить Консоль администратора Ziti (ZAC) к работающему контроллеру:
ziti ops console download --location /opt/openziti/console
ziti ops console configure /path/to/controller.yml --all --location /opt/openziti/console
# перезапустите контроллер, затем откройте https://<адрес-контроллера>/zac/
Или запустите ZAC локально без изменения конфигурации контроллера:
ziti run console --version latest
# открывает https://127.0.0.1:8443. укажите в браузере любой контроллер
Оверлейная сеть OpenZiti работает поверх существующей инфраструктуры: любая IP-сеть, любое облако, любая комбинация. Основные компоненты:
Контроллер — это плоскость управления. Он отвечает за:
Периферийные маршрутизаторы образуют плоскость данных — ячеистую ткань, которая передаёт шифрованный трафик между конечными точками.
Маршрутизаторы автоматически находят друг друга, формируют ячеистые соединения и используют умную маршрутизацию для выбора наилучшего пути на основе задержки, пропускной способности и стоимости.
Конечные точки — это то, как приложения и пользователи подключаются к сети OpenZiti:
SDK (Go, C, Python, Node.js, Java, Swift, C#): встраивают нулевое доверие непосредственно в ваше приложение. Само приложение содержит идентичность и обрабатывает шифрование. Никаких сайдкаров, агентов или прослушивающих портов.
Туннелизаторы (Linux, Windows, macOS, iOS, Android): лёгкие приложения, которые предоставляют подключение к OpenZiti для неизменённого ПО. Трафик перехватывается и маршрутизируется через оверлей прозрачно. Изменения кода не требуются.
Каждый участник (например, пользователь, сервис, устройство, рабочая нагрузка) в сети OpenZiti носит уникальную криптографическую идентичность, основанную на сертификатах x509. При попытке соединения OpenZiti проверяет:
Если любая проверка не пройдена, соединение отклоняется. Если доступ позже отзывается, активные соединения немедленно завершаются. Нет неявного доверия на основе сетевого расположения. Нахождение в той же LAN даёт не больше доступа, чем через интернет, если политика явно не разрешает это.
Эта модель обеспечивает сегментацию приложений с нулевым доверием: каждый сервис независимо авторизован. Получение доступа к одному сервису не даёт доступа ни к какому другому.
«Тёмный» сервис не имеет открытых портов. Он не прослушивает ни один сетевой интерфейс для входящих соединений. Вместо этого сервис (или туннелизатор рядом с ним) устанавливает исходящее соединение с периферийным маршрутизатором OpenZiti и регистрируется. Клиенты достигают его только через ткань OpenZiti, после аутентификации и авторизации.
Что это означает на практике:
Периферийные маршрутизаторы также могут быть тёмными. Частные маршрутизаторы устанавливают только исходящие соединения, поэтому входящие правила брандмауэра не нужны в вашей частной сети.
С OpenZiti SDK трафик шифруется от отправляющего приложения до принимающего с использованием libsodium для пути данных и mTLS для аутентификации идентичности. Даже если маршрутизаторы или промежуточные сети скомпрометированы, трафик не может быть расшифрован или изменён.
С туннелизаторами шифрование покрывает путь от туннелизатора до туннелизатора (или туннелизатора до SDK), обеспечивая шифрование «машина-машина» без изменения приложений.
Встраивайте сетевые технологии нулевого доверия непосредственно в свои приложения:
Все SDK перечислены в организации OpenZiti на GitHub.
OpenZiti — это проект, ориентированный на безопасность. Ответственное раскрытие уязвимостей помогает нам поддерживать платформу и её пользователей в безопасности.
Сообщение об уязвимости: Если вы обнаружите проблему безопасности, пожалуйста, ознакомьтесь с нашей Политикой раскрытия уязвимостей для получения полной информации. Чувствительные вопросы следует сообщать на [email protected]. Нечувствительные вопросы можно оформить как Issues на GitHub в соответствующем репозитории. Вы должны получить ответ в течение 7 дней.
Как мы обрабатываем уязвимости: Наш Процесс реагирования на инциденты безопасности продукта описывает, как сообщённые уязвимости обрабатываются, документируются и устраняются — включая координацию выпусков CVE с исправлениями.
Безопасная гавань: OpenZiti и NetFoundry не будут предпринимать юридических действий против тех, кто добросовестно исследует и сообщает об уязвимостях. Мы поощряем исследования безопасности и приписываем сообщённые находки их репортерам в уведомлениях и примечаниях к выпускам.
OpenZiti имеет активное и растущее сообщество:
Проект OpenZiti приветствует вклад, включая код, документацию, сообщения об ошибках и обратную связь.
Смотрите руководство по локальной разработке для инструкций по сборке.
OpenZiti используется в производстве организациями, включая DeltaSecure (управляемый SOC), Resulticks (автоматизация маркетинга), Chirp Wireless (IoT/телеком), GIGO Dev (облачные среды разработки), OSMIT (управляемое ИТ/соответствие GDPR) и проектами с открытым исходным кодом, такими как zrok и BlueBubbles.
Полный список: ADOPTERS.md. Используете OpenZiti? Мы будем рады добавить вас — откройте issue или отправьте PR.
Для сетевого взаимодействия с нулевым доверием без управления собственной инфраструктурой NetFoundry предоставляет полностью управляемую глобально распределённую сеть OpenZiti как услугу, с SLA, корпоративной поддержкой и глобальной тканью периферийных маршрутизаторов.
OpenZiti разрабатывается и публикуется как открытый исходный код компанией NetFoundry, Inc.
| Возможность | Описание |
|---|
| Тёмные сервисы | Сервисы имеют ноль прослушивающих портов. Невидимы для сканеров и неавторизованных пользователей. |
| Идентичность для всего | Криптографическая идентичность для пользователей, сервисов, устройств и нечеловеческих рабочих нагрузок (NHI). Не на основе IP. |
| Операции на основе идентичности | Управление сетями через идентичности и политики вместо IP-адресов и правил брандмауэра. Упрощает эксплуатацию и устраняет ручную настройку сети. |
| Сквозное шифрование | Данные шифруются от источника до назначения с помощью libsodium. mTLS для аутентификации. Нулевое доверие к сетевому пути. |
| Без VPN и открытых портов | Соединения маршрутизируются через оверлей OpenZiti. Никаких VPN-клиентов, входящих правил брандмауэра, открытых портов. |
| Умная маршрутизация | Ячеистая ткань с интеллектуальным выбором пути для производительности и надёжности. |
| Гибкое развертывание | Встраивайте SDK, используйте туннелизаторы или развертывайте на уровне сети. Комбинируйте и сочетайте для каждого сервиса. |
| Доступ на основе политик | Детальные политики на основе идентичности. Доступ может быть отозван в реальном времени, закрывая активные соединения. |
| Программируемые REST API | Полный API управления для автоматизации и интеграции. Включена веб-консоль администратора. |
| Полностью самостоятельное размещение | Запускайте всю платформу на своей инфраструктуре. Никаких зависимостей от вендора. Открытый исходный код, Apache 2.0. |
| Ресурс | Описание |
|---|
| Введение | Основные концепции и как работает OpenZiti |
| Руководства по быстрому старту | Пошаговая настройка для локального, Docker и облачного окружений |
| Модели нулевого доверия | Глубокое погружение в три модели развертывания |
| Справочник по туннелизаторам | Начало работы без изменения кода |
| Язык | Репозиторий | Примечания |
|---|
| Go | sdk-golang | Используется самим проектом OpenZiti |
| C | ziti-sdk-c | Идеально для встраиваемых систем, IoT и высокопроизводительных случаев |
| Java / Kotlin | ziti-sdk-jvm | Включает поддержку Android |
| Swift | ziti-sdk-swift | iOS и macOS |
| Node.js | ziti-sdk-nodejs | |
| C# / .NET | ziti-sdk-csharp | |
| Python | ziti-sdk-py |
| Репозиторий | Описание |
|---|
| openziti/ziti | Основная платформа: контроллер, маршрутизаторы, CLI |
| sdk-golang | Go SDK |
| ziti-sdk-c | C SDK |
| ziti-sdk-jvm | Java / Kotlin / Android SDK |
| ziti-sdk-swift | Swift / iOS SDK |
| ziti-sdk-nodejs | Node.js SDK |
| ziti-sdk-csharp | C# SDK |
| ziti-sdk-py | Python SDK |
| ziti-tunnel-sdk-c | Linux туннелизатор и основной SDK туннелизатора |
| ziti-tunnel-apple | macOS и iOS edge клиенты |
| desktop-edge-win | Windows desktop edge клиент |
| ziti-doc | Сайт документации |