# Конфигурация Проект использует JSON конфиг (пример: `config.json.example`). ## Важно про мультидоменный режим Скрипт поддерживает: - один домен в поле `domain` - список доменов в поле `domains` (массив строк) - оба поля одновременно (будет объединение без дублей) Пример: ```json { "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](RegRu_API_Troubleshooting.md)) ### Домены - `domain`: основной домен (строка) - `domains`: массив доменов - `wildcard`: если `true`, скрипт будет запрашивать `-d ` и `-d *.` - обратите внимание: этот флаг сейчас общий для всех доменов из массива ### Let’s Encrypt - `email`: email для регистрации в Let’s 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](Nginx_Proxy_Manager.md). ## Проверка конфига - `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`