Простой cron-скрипт для автоматического обновления SSL сертификатов Let's Encrypt.
ssl-cron-renewal/
├── README.md # Главная документация
├── README-русский.md # Подробная документация
├── README-minimal.md # Краткая документация
├── cron-job.sh # Основной скрипт
├── crontab.example # Пример настройки cron
├── WARP.md # Документация для разработки
└── .gitignore # Игнорируемые файлы
- 🔒 Умное управление портами - автоматическое открытие/закрытие порта 80
- 🛡️ Надёжность - проверка root прав и обработка ошибок
- 📝 Подробное логирование - все операции записываются в лог
- ⏰ Оптимальное расписание - запуск каждые 3 месяца
- ⚡ Простота установки - всего несколько команд
git clone https://github.com/Fastdust/ssl-cron-renewal.git
cd ssl-cron-renewal
# Создать папку для скриптов
sudo mkdir -p /opt/scripts/
# Копировать и сделать исполняемым
sudo cp cron-job.sh /opt/scripts/
sudo chmod +x /opt/scripts/cron-job.sh
# Проверить скрипт вручную
sudo /opt/scripts/cron-job.sh
# Открыть редактор cron
sudo crontab -e
# Добавить строку для запуска каждые 3 месяца:
0 3 1 */3 * /opt/scripts/cron-job.sh
# Проверить установленные задания
sudo crontab -l
# Посмотреть логи
sudo tail /var/log/ssl-renewal.log
# Просмотр последних записей
sudo tail /var/log/ssl-renewal.log
# Мониторинг в реальном времени
sudo tail -f /var/log/ssl-renewal.log
# Проверить статус cron
sudo systemctl status cron
- Каждые 3 месяца (рекомендуемо):
0 3 1 */3 *
- Каждый месяц:
0 3 1 * *
- Каждые 2 недели:
0 3 */14 * *
- Для тестирования:
*/5 * * * *
(каждые 5 минут)
- Убедитесь, что cron настроен на root:
sudo crontab -e
- При ручном тесте используйте:
sudo /opt/scripts/cron-job.sh
- Проверить nginx:
sudo systemctl status nginx
- Проверить конфигурацию:
sudo nginx -t
- Проверить сертификаты:
sudo certbot certificates
- Проверить доступность домена извне
Если ufw не установлен:
sudo ufw enable # Включить файрвол
Или просто игнорируйте предупреждения.
- ОС: Ubuntu 20.04+ или Debian 10+
- Веб-сервер: nginx
- SSL клиент: certbot + python3-certbot-nginx
- Файрвол: ufw (опционально)
- Сертификаты: Уже существующие Let's Encrypt
- ✅ Понятные сообщения - все ошибки и уведомления понятны
- ✅ Легкая отладка - простое чтение логов
- ✅ Подробная документация - с примерами и решениями
- README-подробно.md - Подробная документация
- README-minimal.md - Краткая версия
Fastdust - разработка минималистичных решений для автоматизации
✨ Совет: Всегда тестируйте скрипт вручную перед добавлением в cron!
🛡️ Безопасность: Регулярно проверяйте логи на предмет ошибок.