# Secrets for Deployment and Configuration This document provides a detailed description of the secrets required for deploying and configuring the `configure_nginx_manager` project. Each secret is listed with its purpose, example value, and any default behavior if applicable. ## Deployment Secrets ### DEPLOY_PORT - **Description**: The SSH port used to connect to the deployment server. - **Example**: `22` ### DEPLOY_USER - **Description**: The SSH user for deployment. - **Example**: `deploy` ### DEPLOY_SSH_PRIVATE_KEY - **Description**: The private SSH key used for authentication. - **Example**: Full PEM/OpenSSH block. ### DEPLOY_PATH - **Description**: The path on the server where the project will be deployed. - **Example**: `/opt/configure_nginx_manager` ### DEPLOY_SERVICE - **Description**: The name of the systemd unit to manage the service. - **Example**: `letsencrypt-regru.service` ### DEPLOY_SSH_KNOWN_HOSTS - **Description**: The `known_hosts` entry for the deployment server. - **Example**: `192.168.10.14 ssh-ed25519 AAAAC3...` ## Configuration Secrets ### CFG_REGRU_USERNAME - **Description**: The username for the reg.ru API. - **Example**: `my_reg_ru_login` ### CFG_REGRU_PASSWORD - **Description**: The password for the reg.ru API. - **Example**: `StrongPass123!` ### CFG_EMAIL - **Description**: The email address used for Let’s Encrypt notifications. - **Example**: `admin@dfv24.com` ### CFG_DOMAINS - **Description**: Certificate groups (SAN). Each array element = one certificate. Comma-separated domains within one element form a single multi-SAN certificate. - **Format**: JSON array — `["*.dfv24.com,dfv24.com", "github.dfv24.com"]` - **Result**: 2 certificates: 1. `*.dfv24.com` + `dfv24.com` (one cert, two SANs) 2. `github.dfv24.com` (separate cert) ### CFG_DOMAIN - **Description**: The primary domain. If empty, the first domain from the first group in `CFG_DOMAINS` is used. - **Example**: `dfv24.com` ### CFG_WILDCARD - **Description**: Whether to use wildcard certificates. - **Example**: `true` ### CFG_CERT_DIR - **Description**: The directory where certificates are stored. - **Default**: `/etc/letsencrypt/live` ### CFG_LOG_FILE - **Description**: The log file for the Let’s Encrypt process. - **Default**: `/var/log/letsencrypt_regru.log` ### CFG_DNS_PROPAGATION_WAIT - **Description**: The wait time for DNS propagation (in seconds). - **Default**: `60` ### CFG_DNS_CHECK_ATTEMPTS - **Description**: The number of attempts to check DNS propagation. - **Default**: `10` ### CFG_DNS_CHECK_INTERVAL - **Description**: The interval between DNS propagation checks (in seconds). - **Default**: `10` ### CFG_RENEWAL_DAYS - **Description**: The number of days before certificate renewal. - **Default**: `30` ### CFG_NPM_ENABLED - **Description**: Whether Nginx Proxy Manager (NPM) integration is enabled. - **Default**: `true` ### CFG_NPM_HOST - **Description**: The host URL for Nginx Proxy Manager. - **Example**: `http://192.168.10.14:81` ### CFG_NPM_EMAIL - **Description**: The email address for Nginx Proxy Manager. - **Example**: `admin@example.com` ### CFG_NPM_PASSWORD - **Description**: The password for Nginx Proxy Manager. - **Example**: `changeme`