Initialer Import der Synology Scripts
This commit is contained in:
Executable
+77
@@ -0,0 +1,77 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Exit on error
|
||||
set -e
|
||||
|
||||
# Variablen
|
||||
DOMAIN="iot.heim.lan"
|
||||
REALM="IOT.HEIM.LAN"
|
||||
HOSTNAME="ipa.iot.heim.lan"
|
||||
ADMIN_PASS="AdminPass123" # Anpassen
|
||||
IPA_PASS="IpaPass123" # Anpassen
|
||||
CSR_CONFIG="subca.cfg"
|
||||
CSR_FILE="subca.csr"
|
||||
KEY_FILE="subca.key"
|
||||
SIGNED_CERT="subca.crt"
|
||||
ROOT_CA="rootCA.pem" # Pfad zu Ihrem Root-CA-Zertifikat (XCA exportiert als PEM)
|
||||
ROOT_CA_KEY="rootCA.key" # Pfad zu Ihrem Root-CA-Schlüssel (XCA exportiert als PEM)
|
||||
OPENSSL_CONFIG="/etc/pki/tls/openssl.cnf"
|
||||
|
||||
# Sub-CA Konfigurationsdatei erstellen
|
||||
echo "Erstelle Sub-CA Konfigurationsdatei..."
|
||||
cat > $CSR_CONFIG << EOF
|
||||
[ req ]
|
||||
default_bits = 4096
|
||||
prompt = no
|
||||
default_md = sha256
|
||||
distinguished_name = req_distinguished_name
|
||||
req_extensions = v3_req
|
||||
|
||||
[ req_distinguished_name ]
|
||||
countryName = Country Name (2 letter code)
|
||||
countryName_default = XX
|
||||
stateOrProvinceName = State or Province Name (full name)
|
||||
stateOrProvinceName_default = State
|
||||
localityName = Locality Name (eg, city)
|
||||
localityName_default = City
|
||||
organizationName = Organization Name (eg, company)
|
||||
organizationName_default = Organization
|
||||
commonName = Common Name (eg, your name or your server's hostname)
|
||||
commonName_max = 64
|
||||
|
||||
[ v3_req ]
|
||||
basicConstraints = CA:TRUE,pathlen:0
|
||||
keyUsage = keyCertSign, cRLSign
|
||||
EOF
|
||||
|
||||
# CSR und privaten Schlüssel für die Sub-CA generieren
|
||||
echo "Generiere CSR und privaten Schlüssel für Sub-CA..."
|
||||
openssl req -new -newkey rsa:2048 -nodes -out $CSR_FILE -keyout $KEY_FILE -config $CSR_CONFIG
|
||||
|
||||
# Ausgabe des CSR für Upload in die Root-CA
|
||||
echo "Der CSR für die Sub-CA wurde erstellt: $CSR_FILE"
|
||||
echo "Laden Sie diesen CSR in Ihre Root-CA hoch, signieren Sie ihn dort und speichern Sie das signierte Zertifikat als $SIGNED_CERT"
|
||||
|
||||
# Warten, bis das signierte Zertifikat verfügbar ist
|
||||
read -p "Nachdem Sie das Zertifikat signiert und heruntergeladen haben, drücken Sie [Enter]..."
|
||||
|
||||
# Prüfen, ob das signierte Zertifikat vorhanden ist
|
||||
if [ ! -f "$SIGNED_CERT" ]; then
|
||||
echo "Fehler: Das signierte Zertifikat wurde nicht gefunden: $SIGNED_CERT"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Sub-CA-Zertifikat in FreeIPA importieren
|
||||
echo "Importiere Sub-CA-Zertifikat in FreeIPA..."
|
||||
sudo ipa-cacert-manage install --certificate $SIGNED_CERT --external-cert-file $ROOT_CA
|
||||
|
||||
# FreeIPA-Dienste neu starten
|
||||
echo "Starte FreeIPA-Dienste neu..."
|
||||
sudo ipactl restart
|
||||
|
||||
# Installation der Sub-CA überprüfen
|
||||
echo "Überprüfe Installation der Sub-CA..."
|
||||
sudo ipa-cacert-manage list
|
||||
sudo ipa-cert-show $SIGNED_CERT
|
||||
|
||||
echo "Subordinate CA erfolgreich eingerichtet!"
|
||||
Reference in New Issue
Block a user