This commit is contained in:
user 2025-07-25 17:01:43 +03:00
parent 1661dea57c
commit 62fdd16eed
1 changed files with 24 additions and 8 deletions

View File

@ -1254,7 +1254,19 @@ install_ssl_certificates() {
fi
fi
# Проверка и остановка запущенных процессов certbot
log_info "Проверка запущенных процессов certbot..."
if pgrep -f certbot > /dev/null; then
log_warn "Обнаружен запущенный процесс certbot, завершаем..."
pkill -f certbot 2>/dev/null || true
sleep 5
fi
# Очистка временных файлов certbot
rm -rf /tmp/tmp*/log 2>/dev/null || true
# Получение сертификата через certbot
log_info "Запуск certbot для получения SSL сертификата..."
if certbot --nginx -d "$DOMAIN" --email "$EMAIL" --agree-tos --non-interactive --redirect; then
log_success "SSL сертификат установлен для $DOMAIN"
@ -1267,22 +1279,26 @@ install_ssl_certificates() {
# Обновление firewall для HTTPS
case $OS_ID in
ubuntu|debian)
ufw allow 443/tcp
ufw allow 443/tcp 2>/dev/null || true
;;
centos|rhel|fedora)
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
firewall-cmd --permanent --add-service=https 2>/dev/null || true
firewall-cmd --reload 2>/dev/null || true
;;
esac
log_success "HTTPS порт открыт в firewall"
else
log_error "Ошибка установки SSL сертификата"
log_info "Проверьте:"
log_info "1. DNS запись $DOMAIN указывает на этот сервер"
log_info "2. Порт 80 доступен из интернета"
log_info "3. Nginx запущен и доступен"
return 1
log_warn "Возможные причины:"
log_warn "1. DNS запись $DOMAIN не указывает на этот сервер"
log_warn "2. Порт 80 заблокирован или недоступен из интернета"
log_warn "3. Nginx не запущен или неправильно настроен"
log_warn "4. Достигнут лимит запросов Let's Encrypt"
log_warn "5. Другой процесс certbot уже запущен"
log_info "Система продолжит работу без SSL. SSL можно настроить позже вручную:"
log_info "certbot --nginx -d $DOMAIN --email $EMAIL --agree-tos --non-interactive --redirect"
# НЕ завершаем скрипт, SSL не критичен для работы системы
fi
}