Initial commit: DOCX Template Server mit API und Tabellen-Support
- ✅ Node.js/Express Server mit DOCX Template-Verarbeitung - ✅ Automatische Tag-Erkennung und Demo-Daten-Generierung - ✅ Tabellen-Unterstützung mit Schleifen-Tags - ✅ REST-API /api/process-template für externe Integration - ✅ Web-Oberfläche mit vollständiger Dokumentation - ✅ SSL-Unterstützung (HTTPS Port 443 öffentlich) - ✅ Intelligente Spaltenerkennung für Tabellen - ✅ Detaillierte Statusmeldungen für alle Operationen - ✅ Flexible Custom-Daten + Auto-Generierung - ✅ Template- und Dokument-Management APIs
This commit is contained in:
84
setup-ssl.sh
Executable file
84
setup-ssl.sh
Executable file
@@ -0,0 +1,84 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SSL-Setup für DOCX Template Server
|
||||
# Führen Sie dieses Script aus, um SSL-Zertifikate zu erstellen
|
||||
|
||||
echo "🔒 SSL-Setup für DOCX Template Server"
|
||||
echo ""
|
||||
|
||||
# Prüfe ob OpenSSL installiert ist
|
||||
if ! command -v openssl &> /dev/null; then
|
||||
echo "❌ OpenSSL ist nicht installiert. Installiere OpenSSL..."
|
||||
apt-get update && apt-get install -y openssl
|
||||
fi
|
||||
|
||||
cd /home/OfficeServerJS
|
||||
|
||||
echo "📋 Wählen Sie eine Option:"
|
||||
echo "1) Selbstsigniertes Zertifikat erstellen (für Tests)"
|
||||
echo "2) Let's Encrypt Zertifikat verwenden (für Produktion)"
|
||||
echo "3) Bestehendes Zertifikat verwenden"
|
||||
|
||||
read -p "Ihre Wahl (1-3): " choice
|
||||
|
||||
case $choice in
|
||||
1)
|
||||
echo "🔧 Erstelle selbstsigniertes Zertifikat..."
|
||||
openssl req -x509 -newkey rsa:4096 -keyout private-key.pem -out certificate.pem -days 365 -nodes \
|
||||
-subj "/C=DE/ST=Deutschland/L=Stadt/O=Organisation/CN=localhost"
|
||||
echo "✅ Selbstsigniertes Zertifikat erstellt!"
|
||||
;;
|
||||
2)
|
||||
echo "🌐 Let's Encrypt Setup..."
|
||||
if ! command -v certbot &> /dev/null; then
|
||||
echo "📦 Installiere Certbot..."
|
||||
apt-get update && apt-get install -y certbot
|
||||
fi
|
||||
|
||||
read -p "Ihre Domain eingeben: " domain
|
||||
echo "🔧 Erstelle Let's Encrypt Zertifikat für $domain..."
|
||||
certbot certonly --standalone -d $domain
|
||||
|
||||
# Symlinks erstellen
|
||||
ln -sf /etc/letsencrypt/live/$domain/privkey.pem private-key.pem
|
||||
ln -sf /etc/letsencrypt/live/$domain/fullchain.pem certificate.pem
|
||||
echo "✅ Let's Encrypt Zertifikat eingerichtet!"
|
||||
;;
|
||||
3)
|
||||
echo "📁 Bestehendes Zertifikat verwenden..."
|
||||
read -p "Pfad zum privaten Schlüssel: " keypath
|
||||
read -p "Pfad zum Zertifikat: " certpath
|
||||
|
||||
ln -sf $keypath private-key.pem
|
||||
ln -sf $certpath certificate.pem
|
||||
echo "✅ Zertifikate verlinkt!"
|
||||
;;
|
||||
*)
|
||||
echo "❌ Ungültige Auswahl!"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# SSL-Konfiguration in server.js aktivieren
|
||||
echo ""
|
||||
echo "🔧 SSL-Konfiguration wird aktiviert..."
|
||||
|
||||
# Backup der originalen server.js erstellen
|
||||
cp server.js server.js.backup
|
||||
|
||||
# SSL-Sektion aktivieren
|
||||
sed -i 's|^/\*|// /*|g' server.js
|
||||
sed -i 's|^\*/|// */|g' server.js
|
||||
|
||||
echo "✅ SSL-Setup abgeschlossen!"
|
||||
echo ""
|
||||
echo "📋 Nächste Schritte:"
|
||||
echo "1. Starten Sie den Server neu: ./start.sh"
|
||||
echo "2. Der Server läuft dann auf:"
|
||||
echo " - HTTP: http://localhost:80"
|
||||
echo " - HTTPS: https://localhost:443"
|
||||
echo ""
|
||||
echo "⚠️ Für Produktion:"
|
||||
echo " - Ports 80 und 443 in der Firewall öffnen"
|
||||
echo " - DNS auf Ihren Server zeigen lassen"
|
||||
echo " - Let's Encrypt Auto-Renewal einrichten"
|
||||
Reference in New Issue
Block a user