Initialer Import der Synology Scripts

This commit is contained in:
root
2026-08-05 08:43:57 +02:00
commit 5e32a7c411
404 changed files with 79932 additions and 0 deletions
+92
View File
@@ -0,0 +1,92 @@
#!/bin/bash
# Exit on error
set -e
# Variables
DOMAIN=$(hostname -d) # Holt sich die Domain des Systems
REALM=$(echo $DOMAIN | tr 'a-z' 'A-Z') # Realm ist die Domain in Großbuchstaben
HOSTNAME=$(hostname -f) # Holt den vollständigen Hostnamen (FQDN)
IP_ADDRESS=$(hostname -I | awk '{print $1}') # Holt die primäre IP-Adresse des Systems
DNS_FORWARDER="192.168.1.1" # Externer DNS-Forwarder (Google in diesem Fall)
EXTERNAL_CA="true" # Setzt das Skript auf externe CA
PASSWORD="P@ssw0rd1234" # Admin-Passwort (in der Praxis sicher speichern)
DIRMAN_PASSWORD="P@ssw0rd12345" # Directory Manager Passwort
IPA_PASS="P@ssw0rdIPA" # IPA Password
# Name der Zertifikatsdateien
#ROOT_CERT="CERT_HEIMLAN_RootCA.crt"
SUBCA_CERT="CERT_HEIMLAN_SubCA.crt"
#SERVER_CERT="CERT_${HOST_FQDN}.crt"
SERVER_KEY="KEY_${HOST_FQDN}.pem"
SERVER_FULLCHAIN="fullchain_${HOST_FQDN}.crt"
# Read IP address dynamically from active network interface
IP_ADDRESS=$(nmcli -t -f IP4.ADDRESS device show | awk -F: '{split($2,a,"/"); print a[1]; exit}')
echo "IP Address: $IP_ADDRESS"
# Eintragung in die HOSTS
echo -e "$IP_ADDRESS\t$HOSTNAME\t ipa" | sudo tee -a /etc/hosts
# System aktualisieren
echo "Aktualisiere das System..."
sudo yum update -y
# Erforderliche Pakete installieren
echo "Installiere erforderliche Pakete..."
subscription-manager repos --enable codeready-builder-for-rhel-8-$(arch)-rpms
yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo dnf -y install @idm:DL1
# Erforderliche Pakete installieren
echo "Installiere erforderliche Pakete..."
sudo yum install -y ipa-server ipa-server-dns
# FreeIPA-Server ohne CA installieren
sudo ipa-server-install --no-pki \
--http-cert-file "${TMP_CERT}/${SERVER_FULLCHAIN}" \
--http-cert-file "${TMP_KEY}/${SERVER_KEY}" \
--http-pin "${HTTP_PASS}" \
--dirsrv-cert-file "$(TMP_CERT)/${SERVER_FULLCHAIN}" \
--dirsrv-cert-file "${TMP_KEY}/${SERVER_KEY}" \
--dirsrv-pin $DIRSRV_PASS \
--ca-cert-file $TMP_CERT/$SUBCA_CERT \
--hostname=$HOSTNAME \
--domain=$DOMAIN \
--realm=$REALM \
--ds-password=$ADMIN_PASS \
--admin-password=$IPA_PASS \
--no-ntp
# CSR von der Root CA signieren lassen
#echo "Signiere CSR mit der Root CA..."
#openssl ca -in $CSR_FILE -out $SIGNED_CERT -cert $ROOT_CERT -keyfile $ROOT_CA_KEY -extensions v3_req -config $OPENSSL_CONFIG
hour=0
min=6
sec=0
echo " Sie haben $hour h $min min $sec sek zeit um das Zeit das Zertifikat zu signieren."
while [ $hour -ge 0 ]; do
while [ $min -ge 0 ]; do
while [ $sec -ge 0 ]; do
echo -ne "$hour:$min:$sec\033[0K\r"
let "sec=sec-1"
sleep 1
done
sec=59
let "min=min-1"
done
min=59
let "hour=hour-1"
done
# FreeIPA-Dienste neu starten
echo "Starte FreeIPA-Dienste neu..."
sudo ipactl restart
# FreeIPA-Dienste Status prüfen
sudo ipactl status
echo "Redhat Identity Management erfolgreich Installiert und eingerichtet !!"
echo "Sie können die Admnistration über die WebGui https://${HOST_FQDN} fortsetzen !!"