#!/bin/bash # Generate self-signed SSL certificates for Nginx # Usage: ./generate_nginx_certs.sh [domain] [days] DOMAIN=${1:-localhost} DAYS=${2:-365} CERT_DIR="./data/nginx-ssl" echo "🔐 Generating self-signed SSL certificate for Nginx" echo "Domain: $DOMAIN" echo "Valid for: $DAYS days" echo "Certificate directory: $CERT_DIR" # Create directory if it doesnt exist mkdir -p "$CERT_DIR" # Generate private key and certificate openssl req -x509 -nodes -days "$DAYS" \ -newkey rsa:2048 \ -keyout "$CERT_DIR/key.pem" \ -out "$CERT_DIR/cert.pem" \ -subj "/CN=$DOMAIN/O=DigiServer/C=US" # Set proper permissions chmod 644 "$CERT_DIR/cert.pem" chmod 600 "$CERT_DIR/key.pem" echo "✅ Certificates generated successfully!" echo "Certificate: $CERT_DIR/cert.pem" echo "Key: $CERT_DIR/key.pem"