7.3 KiB
7.3 KiB
📁 Структура проекта configure_nginx_manager
Основные скрипты
Python (Рекомендуется)
- letsencrypt_regru_api.py (1,411 строк)
- Полнофункциональный Python скрипт
- Прямая работа с API reg.ru
- Интеграция с Nginx Proxy Manager
- Автоматическая проверка и обновление сертификатов
- Генерация тестовых самоподписанных сертификатов
- Поддержка wildcard доменов
Bash
- letsencrypt_regru_dns.sh
- Bash скрипт с certbot-dns-regru плагином
- Простота использования
- Минимальные зависимости
PowerShell
- letsencrypt_regru.ps1
- Windows версия
- Аналогична Bash скрипту
Тестирование
- test_certificate.sh
- Быстрое создание тестовых сертификатов через OpenSSL
- Автономная работа без Python
- Поддержка wildcard доменов
Автоматизация
Makefile
- Makefile (415 строк)
make install- Полная установка и настройкаmake uninstall- Чистое удалениеmake status- Проверка состоянияmake test-cert- Создание тестового сертификатаmake obtain- Получение Let's Encrypt сертификатаmake renew- Обновление сертификатаmake logs- Просмотр логовmake check-config- Валидация конфигурации
Конфигурация
config.json.example
Пример конфигурации со всеми параметрами:
- Учетные данные reg.ru API
- Настройки домена и email
- Параметры обновления (renewal_days)
- Настройки Nginx Proxy Manager
- Пути к директориям и логам
Документация
README.md (1,420+ строк)
Основная документация:
- Введение и возможности
- Быстрый старт
- Установка через Makefile
- Создание тестовых сертификатов
- Требования и установка зависимостей
- Настройка и использование
- Интеграция с NPM
- Автоматическая проверка и обновление
- Автоматизация через cron/systemd
- Устранение неполадок
TESTING_GUIDE.md (370+ строк)
Руководство по тестированию:
- Зачем нужны тестовые сертификаты
- Обход лимитов Let's Encrypt (5 в неделю)
- Быстрый старт с тестовыми сертификатами
- Сравнение методов создания
- Использование в разработке
- Автоматизация тестирования
- Переход с тестовых на production
- Частые вопросы
- Примеры для CI/CD и Docker
PROJECT_STRUCTURE.md (этот файл)
- Описание всех файлов проекта
- Краткая характеристика каждого компонента
Вспомогательные файлы
Markdown документы
-
Add Let's Encrypt Certificate для провайдера reg.ru.md
- Первоначальные инструкции
-
Создание и продление SSL сертификата.md
- Дополнительная информация о процессе
Возможности
✅ Основные
- Создание Let's Encrypt сертификатов через reg.ru DNS API
- Wildcard сертификаты (*.domain.com)
- Автоматическое обновление сертификатов
- DNS-01 валидация
- Интеграция с Nginx Proxy Manager
- Автоматическая загрузка/обновление в NPM
✅ Продвинутые
- Автоматическая проверка срока действия
- Настраиваемый порог обновления (renewal_days)
- Systemd service + timer
- Cron автоматизация
- Подробное логирование
- Валидация конфигурации
🆕 Тестирование
- Генерация самоподписанных тестовых сертификатов
- Обход лимитов Let's Encrypt (5/неделю)
- Мгновенное создание без DNS
- Интеграция тестовых сертификатов с NPM
- Полная совместимость структуры с Let's Encrypt
Установка
Быстрая установка
sudo make install
sudo nano /etc/letsencrypt/regru_config.json
sudo make test-cert # Для тестирования
sudo make obtain # Для production
Структура после установки
/opt/letsencrypt-regru/
├── letsencrypt_regru_api.py
/etc/letsencrypt/
├── regru_config.json
└── live/
└── example.com/
├── privkey.pem
├── cert.pem
├── fullchain.pem
└── chain.pem
/etc/systemd/system/
├── letsencrypt-regru.service
└── letsencrypt-regru.timer
/var/log/letsencrypt/
└── letsencrypt_regru.log
Использование
Тестирование (без лимитов)
sudo make test-cert # Создать тестовый сертификат
sudo make status # Проверить статус
Production
sudo make obtain # Получить Let's Encrypt сертификат
sudo make renew # Обновить сертификат
sudo make run # Автоматический режим
Мониторинг
sudo make logs # Просмотр логов
sudo make status # Статус служб
sudo make check-config # Проверка конфигурации
Технологии
- Python 3.6+ - Основной язык
- Certbot - Let's Encrypt клиент
- requests - HTTP запросы к API
- cryptography - Генерация тестовых сертификатов
- systemd - Автоматизация запуска
- cron - Альтернативная автоматизация
- Make - Управление установкой
- OpenSSL - Альтернативная генерация сертификатов
Лицензия
Open Source - свободное использование
Автор
GitHub Copilot @ 2025
Поддержка
См. документацию:
- README.md - Основное руководство
- TESTING_GUIDE.md - Руководство по тестированию
Версия: 2.1
Дата: 27 октября 2025
Статус: ✅ Production Ready