Files
configure_nginx_manager/wiki/Configuration.md
2026-02-25 08:49:21 +03:00

3.0 KiB
Raw Blame History

Конфигурация

Проект использует JSON конфиг (пример: config.json.example).

Важно про мультидоменный режим

Скрипт поддерживает:

  • один домен в поле domain
  • список доменов в поле domains (массив строк)
  • оба поля одновременно (будет объединение без дублей)

Пример:

{
  "regru_username": "your_username",
  "regru_password": "your_password",
  "domain": "example.com",
  "domains": [
    "example.com",
    "pages.gitea.example.com"
  ],
  "wildcard": true,
  "email": "admin@example.com",
  "cert_dir": "/etc/letsencrypt/live",
  "log_file": "/var/log/letsencrypt_regru.log",
  "dns_propagation_wait": 180,
  "dns_check_attempts": 20,
  "dns_check_interval": 15,
  "renewal_days": 30,
  "npm_enabled": true,
  "npm_host": "http://192.0.2.1:81",
  "npm_email": "admin@example.com",
  "npm_password": "changeme"
}

Параметры конфигурации

reg.ru API

  • regru_username, regru_password
    • учётные данные для API reg.ru
    • IP должен быть разрешён в настройках API (см. RegRu_API_Troubleshooting)

Домены

  • domain: основной домен (строка)
  • domains: массив доменов
  • wildcard: если true, скрипт будет запрашивать -d <domain> и -d *.<domain>
    • обратите внимание: этот флаг сейчас общий для всех доменов из массива

Lets Encrypt

  • email: email для регистрации в Lets Encrypt
  • renewal_days: порог автопродления (например, 30)

DNS ожидание/проверки

  • dns_propagation_wait: сколько секунд ждать после добавления TXT
  • dns_check_attempts: сколько попыток проверки через nslookup
  • dns_check_interval: интервал между попытками

Пути

  • cert_dir: базовая папка сертификатов (обычно /etc/letsencrypt/live)
  • log_file: файл логов

Nginx Proxy Manager (опционально)

  • npm_enabled: включить синхронизацию сертификатов в NPM
  • npm_host: URL NPM (пример: http://10.10.10.14:81)
  • npm_email, npm_password: учётные данные

Подробности: Nginx_Proxy_Manager.

Проверка конфига

  • letsencrypt-regru --test-api -v
  • letsencrypt-regru --test-dns -v
  • letsencrypt-regru --check -v

Где хранить конфиг

  • храните конфиг с правами 600
  • владелец: root

Пример:

  • sudo chmod 600 /etc/letsencrypt/regru_config.json
  • sudo chown root:root /etc/letsencrypt/regru_config.json