---
title: DNS и Cloudflare
description: Направьте домен на сервер NexCMP, в том числе через Cloudflare, и получите корректный сертификат с правильным режимом SSL.
url: https://nexcmp.com/ru/docs/getting-started/dns-and-cloudflare/
applies_to: NexCMP 1.6.1
updated: 2026-11-02
---

# DNS и Cloudflare {#dns-and-cloudflare}

NexCMP требует одно доменное имя (свой **основной домен**) и поддерживает два режима работы.

## Режим A: DNS указывает напрямую на сервер {#mode-a-dns-points-straight-at-the-server}

1. Создайте запись **A** `cloud.example.com → <server public IPv4>` (а также запись **AAAA**, если у сервера есть IPv6).
2. При необходимости создайте `admin.cloud.example.com` и `partner.cloud.example.com`, указывающие на тот же IP-адрес.
3. Запустите (или перезапустите) [установщик](https://nexcmp.com/ru/docs/getting-started/installation/). Он определит, что имя резолвится в собственный публичный IP-адрес сервера, и получит сертификат Let's Encrypt через проверку HTTP-01 на порту 80.

## Режим B: домен проксируется через Cloudflare {#mode-b-the-domain-is-proxied-by-cloudflare}

Создайте те же записи с оранжевым облаком (**Proxied**). Установщик обнаружит, что имя резолвится только в адреса Cloudflare, и переключится в режим Cloudflare:

- nginx по-прежнему слушает порты 80/443 на вашем сервере;
- реальный IP-адрес посетителя считывается из заголовка `CF-Connecting-IP` — **только** для подключений из опубликованных диапазонов Cloudflare, поэтому подделать его никто не сможет;
- сертификат получается через Let's Encrypt (Cloudflare пересылает проверку challenge на ваш origin-сервер); если это пока невозможно, создается **самоподписанный origin-сертификат**, чтобы работал режим «Full», а повторный запуск установщика позже обновит его до Let's Encrypt.

Вы можете принудительно включить этот режим с помощью `--behind-cloudflare`.

::: important Настройка режима SSL/TLS в Cloudflare
В Cloudflare перейдите в **SSL/TLS › Overview** и выберите **Full (strict)**, как только установщик сообщит о получении сертификата Let's Encrypt. При использовании самоподписанного origin-сертификата выберите **Full**. Режим **Flexible** приведет к циклической переадресации.
:::

::: tip
Если опция «Always Use HTTPS» включена, Cloudflare отправляет запрос валидации на порт 443 вашего origin-сервера. Установщик обрабатывает это, сначала создавая временный самоподписанный сертификат, а затем повторяя попытку получения Let's Encrypt.
:::

## Проверка {#check-it}

```bash
dig +short cloud.example.com        # A record (a Cloudflare address in mode B)
curl -I https://cloud.example.com/healthz
sudo certbot certificates           # certificate name, domains and expiry
```

Сертификаты обновляются автоматически по таймеру certbot. Для обновления используется webroot `/var/www/nexcmp-acme`, поэтому порт 80 должен оставаться доступным (напрямую или через Cloudflare).

## Частые проблемы {#common-problems}

| Симптом | Причина | Решение |
|---|---|---|
| Установщик сообщает «DNS … does not point to … (nor to Cloudflare) — skipping nginx/TLS» | DNS-запись отсутствует, указана неверно или еще не разошлась | Исправьте запись, дождитесь распространения DNS и запустите установщик снова. |
| Браузер показывает `ERR_TOO_MANY_REDIRECTS` за Cloudflare | Режим SSL установлен в **Flexible** | Установите **Full (strict)** (или **Full**). |
| Ошибка Cloudflare 525/526 | Origin-сертификат отклонен | Используйте **Full** с самоподписанным origin-сертификатом или **Full (strict)** с Let's Encrypt. |
| В логах для всех посетителей отображаются IP-адреса Cloudflare | Режим Cloudflare не активен | Запустите установщик повторно с параметром `--behind-cloudflare`. |

Подробнее в разделе [Ошибки при установке](https://nexcmp.com/ru/docs/troubleshooting/installation-errors/).
