35 lines
1.2 KiB
Bash
35 lines
1.2 KiB
Bash
#!/bin/sh
|
|
# Script para generar certificados SSL autofirmados para desarrollo
|
|
|
|
SSL_DIR="/etc/nginx/ssl"
|
|
|
|
# Crear directorio si no existe
|
|
mkdir -p "$SSL_DIR"
|
|
|
|
# Verificar si ya existen los certificados
|
|
if [ -f "$SSL_DIR/server.crt" ] && [ -f "$SSL_DIR/server.key" ]; then
|
|
echo "✅ Certificados SSL ya existen en $SSL_DIR"
|
|
exit 0
|
|
fi
|
|
|
|
echo "🔐 Generando certificados SSL autofirmados para desarrollo..."
|
|
|
|
# Generar clave privada y certificado autofirmado
|
|
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
|
|
-keyout "$SSL_DIR/server.key" \
|
|
-out "$SSL_DIR/server.crt" \
|
|
-subj "/C=CO/ST=Cundinamarca/L=Bogota/O=WhatsApp Bot Dev/OU=Development/CN=localhost" \
|
|
-addext "subjectAltName=DNS:localhost,DNS:*.localhost,IP:127.0.0.1"
|
|
|
|
# Establecer permisos correctos
|
|
chmod 600 "$SSL_DIR/server.key"
|
|
chmod 644 "$SSL_DIR/server.crt"
|
|
|
|
echo "✅ Certificados SSL generados exitosamente:"
|
|
echo " - Certificado: $SSL_DIR/server.crt"
|
|
echo " - Clave: $SSL_DIR/server.key"
|
|
echo ""
|
|
echo "⚠️ NOTA: Estos son certificados autofirmados para DESARROLLO."
|
|
echo " Los navegadores mostrarán advertencias de seguridad."
|
|
echo " Para producción, usa certificados de Let's Encrypt u otra CA."
|