DNSBox — SSL сертификат для IP-адреса

Используйте *.dnsbox.io для мгновенного получения SSL сертификата и DNS для любого IP. Без настройки домена. Без конфигурации.

🔒 SSL сертификаты для IP адресов

🔧 Как это работает

Получить SSL-сертификат для IP-адреса напрямую невозможно: удостоверяющие центры (включая Let's Encrypt) не выдают сертификаты на голые IP. Сервис DNSBox решает эту проблему — вы получаете бесплатный SSL-сертификат для любого публичного IP за секунды, без необходимости настраивать домен или собственный DNS.


Мы автоматически подменяем DNS и выполняем ACME-валидацию, выдавая сертификат от Let's Encrypt через поддомен вида 123.123.123.123.dnsbox.io. Поддерживаются как IPv4, так и IPv6. Всё работает сразу — достаточно перейти по HTTPS на нужный IP через DNSBox.


DNSBox автоматически сопоставляет IP-адреса с доменными именами. Просто закодируйте IP в поддомене:

🎯 Сценарии использования

DNSBox — это универсальный инструмент для быстрого доступа к IP-адресам через DNS и HTTPS, без сложных настроек:

🌍 Почему стоит использовать DNSBox для получения SSL по IP?

Часто задаваемые вопросы

🧪 Хотите развернуть самостоятельно?

DNSBox позволяет вам получить SSL-сертификат для IP-адреса без необходимости покупать домен или настраивать DNS — вы можете использовать поддомены вида IP.dnsbox.io, и всё заработает «из коробки».

Но если вы хотите полностью независимый инстанс, управляющий своими DNS-записями и сертификатами, потребуется настроить инфраструктуру вручную:

Что нужно для собственного развёртывания:

1. ✅ Купите домен (например, example.com).
2. 🖥 Арендуйте минимум два сервера с публичными статическими IP-адресами — они будут работать как NS-серверы.
3. 🛠 Создайте NS-записи у регистратора, указывающие на эти IP. Например:


ns1.example.com → 167.172.5.205
ns2.example.com → 134.199.248.116
  

4. 🚀 Установите DNSBox на каждый сервер, указав корректные параметры:

bash <(curl -sSL https://install.dnsbox.io) \
  --ip=167.172.5.205 \
  --domain=example.com \
  --ns=ns1
  

Расшифровка параметров:

--ip — публичный IP-адрес текущего сервера (тот же, что в NS-записи).
--domain — корневой домен, например example.com.
--ns — имя текущего NS-сервера (ns1, ns2 и т.д.).

Дополнительно:

--force-resolv — отключает systemd-resolved (если порт 53 занят).
--debug — включает подробное логирование (DNSBOX_DEBUG=true).

📌 После настройки ваш собственный DNSBox:

💡 Это решение идеально подходит, если вы:

🔗 Ознакомьтесь с исходниками и документацией:
github.com/crypto-chiefs/dnsbox

✅ Как проверить, что всё заработало

После настройки DNSBox важно убедиться, что ваш SSL-сертификат для IP-адреса успешно выпущен и доступен по HTTPS. Ниже — инструкция для двух сценариев: использование поддоменов IP.dnsbox.io и самостоятельное развёртывание.

1. Если вы используете IP.dnsbox.io

DNSBox автоматически поднимает DNS и HTTPS-прокси для вашего IP, поэтому всё работает без дополнительной настройки.

Проверка DNS-записи:

dig +short 167.172.5.205.dnsbox.io

Ожидаемый ответ — IP одного из NS-серверов DNSBox (например, 167.172.5.205, если он указывался при установке).

Проверка HTTPS в браузере:

https://167.172.5.205.dnsbox.io

🔒 Браузер должен показать защищённое соединение с валидным сертификатом от Let's Encrypt.


2. Если вы развернули DNSBox самостоятельно

В этом случае вы управляете собственной инфраструктурой: доменом, NS-записями и DNSBox-серверами. Проверьте, что всё работает корректно:

Проверка NS-записей домена:

dig NS example.com

Убедитесь, что возвращаются ns1.example.com., ns2.example.com. и т.д.

Проверка IP-адресов NS-серверов:

dig A ns1.example.com
dig A ns2.example.com

Ответ должен содержать реальные IP ваших VPS-серверов.

Проверка зоны через конкретный NS-сервер:

dig @167.172.5.205 A example.com

Убедитесь, что домен резолвится в ожидаемый IP-адрес.

📌 Если возникают ошибки — убедитесь, что DNS работает, NS-записи корректны, и DNSBox запущен на всех NS-серверах.

⚙️ Технические детали

Базовая реализация

DNS и маршрутизация

Парсинг IP из домена:

  • 1.2.3.4.dnsbox.io1.2.3.4
  • 2a01-4f8-c17-b8f--1.dnsbox.io2a01:4f8:c17:b8f::1 (где -- → ::, - → :)

Поддерживаемые типы DNS-запросов:

  • A, AAAA: IP-адреса из доменного имени
  • TXT: Хранение и репликация ACME challenge
  • NS, SOA, SRV: Динамически сгенерированы (включая peer discovery)
  • CNAME, MX, TXT: Могут быть заданы вручную через custom_domains.txt

Модуль customdns

TLS и HTTPS

WebSocket

Безопасность и ограничения

Развёртывание и конфигурация

Как получить SSL-сертификат для IP-адреса

Обычные CA (сертификационные центры) не выдают сертификаты на IP-адреса напрямую. DNSBox — это уникальный сервис, который позволяет обойти это ограничение с помощью динамической подстановки DNS. Используйте поддомен формата IP.dnsbox.io, и мы выполним валидацию через Let's Encrypt, выдав рабочий HTTPS-сертификат.

Это идеальное решение, если вам нужен SSL для сервера по IP, HTTPS для API без домена, или вы работаете с IoT, тестовыми средами, туннелями, где нет возможности зарегистрировать доменное имя.

Посмотреть на GitHub