🚀 Добавлен мастер-скрипт развертывания с полной автоматизацией
Some checks failed
continuous-integration/drone/push Build is failing

 Новые возможности:
- Мастер-развертывание с автоматической настройкой всех компонентов
- Генерация безопасных .env файлов с криптографически стойкими ключами
- Полная изоляция и защита PostgreSQL
- Автоматическая настройка Let's Encrypt SSL
- Система backup и мониторинга
- Comprehensive security audit для БД

🔧 Новые команды:
- make deploy - мастер-развертывание
- make pre-deploy-check - проверка готовности системы
- make security-audit - аудит безопасности PostgreSQL
- make ssl-setup - интерактивная настройка SSL
- make update-production-security - безопасное обновление в продакшене

📁 Новые файлы:
- scripts/master-deploy.sh - основной скрипт развертывания
- scripts/pre-deploy-check.sh - проверка системы
- scripts/ssl-manager.sh - управление SSL сертификатами
- scripts/audit-db-security.sh - аудит безопасности БД
- DEPLOYMENT.md - полное руководство по развертыванию
- COMMANDS.md - справочник команд
- SECURITY.md - документация по безопасности

🔒 Улучшения безопасности:
- Изоляция PostgreSQL в Docker сети (без внешних портов)
- SCRAM-SHA-256 аутентификация
- TLSv1.3 для БД соединений
- Удаление прав суперпользователя у приложения
- Детальное логирование всех операций БД
- Security headers в nginx
- Автообновление SSL сертификатов
This commit is contained in:
2025-11-04 14:07:58 +09:00
parent 735c1984f9
commit e1bb1ab90a
7 changed files with 1933 additions and 22 deletions

View File

@@ -112,32 +112,46 @@ deploy-full: ## Полное развертывание в продакшен с
@echo "✅ Полное развертывание завершено!"
@echo "🌐 Сайт доступен по адресу: https://links.shareon.kr"
fix-production: ## Исправление настроек продакшена
@echo "🔧 Исправление настроек продакшена..."
@./scripts/fix-production-env.sh
deploy: ## Развертывание в продакшен
@echo "🚀 Развертывание в продакшен..."
deploy-simple: ## Простое развертывание в продакшен (без мастер-настройки)
@echo "⚡ Простое развертывание в продакшен..."
@$(DOCKER_COMPOSE) -f docker-compose.yml -f docker-compose.prod.yml down
@$(DOCKER_COMPOSE) -f docker-compose.yml -f docker-compose.prod.yml build --no-cache
@$(DOCKER_COMPOSE) -f docker-compose.yml -f docker-compose.prod.yml up -d
@echo "✅ Продакшен развернут"
fix-production: ## Исправление настроек продакшена
@echo "🔧 Исправление настроек продакшена..."
@./scripts/fix-production-env.sh
deploy: ## Мастер-развертывание проекта с полной настройкой
@echo "🚀 Запуск мастер-развертывания CatLink..."
@echo "⚠️ Это полное развертывание с настройкой SSL, БД и безопасности"
@read -p "Продолжить? (yes/no): " CONFIRM; \
if [ "$$CONFIRM" = "yes" ]; then \
./scripts/master-deploy.sh; \
else \
echo "❌ Развертывание отменено"; \
fi
pre-deploy-check: ## Проверка готовности системы к развертыванию
@echo "🔍 Проверка готовности системы..."
@./scripts/pre-deploy-check.sh
# === SSL and Security ===
ssl: ## Настройка SSL с Let's Encrypt
@echo "🔒 Настройка SSL..."
@if [ ! -f docker-compose.ssl.yml ]; then \
echo "⚠️ Файл docker-compose.ssl.yml не найден. Создание..."; \
$(MAKE) ssl-setup; \
fi
@$(DOCKER_COMPOSE) -f docker-compose.yml -f docker-compose.ssl.yml up -d
@echo "✅ SSL настроен"
ssl-setup: ## Настройка SSL сертификатов
@echo "🔒 Настройка SSL сертификатов..."
@./scripts/ssl-manager.sh
ssl-setup: ## Создание конфигурации SSL
@echo "🔒 Создание SSL конфигурации..."
@./scripts/ssl_setup.sh
@echo "✅ SSL конфигурация создана"
ssl-renew: ## Обновление SSL сертификатов
@echo "🔄 Обновление SSL сертификатов..."
@sudo certbot renew --quiet
@sudo systemctl reload nginx
@echo "✅ SSL сертификаты обновлены"
ssl: ## Быстрая настройка SSL (legacy)
@echo "🔒 Быстрая настройка SSL..."
@$(MAKE) ssl-setup
# === Database Management ===
@@ -374,10 +388,18 @@ info: ## Информация о проекте
@echo " backend/ - Django API"
@echo " storage/ - Загруженные файлы"
@echo ""
@echo "🛠️ Команды разработки:"
@echo " make install - Первая установка"
@echo " make dev - Режим разработки"
@echo " make deploy - Продакшен"
@echo "🛠️ Основные команды:"
@echo " make install - Первая установка"
@echo " make dev - Режим разработки"
@echo " make deploy - Мастер-развертывание"
@echo " make pre-deploy-check - Проверка готовности"
@echo " make deploy-simple - Простое развертывание"
@echo ""
@echo "🔒 Безопасность:"
@echo " make security-audit - Аудит безопасности БД"
@echo " make security-setup - Настройка безопасности БД"
@echo " make ssl-setup - Настройка SSL"
@echo " make ssl-renew - Обновление SSL"
@echo ""
# === Advanced Operations ===