Initialer Import der Synology Scripts
This commit is contained in:
Executable
+78
@@ -0,0 +1,78 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Funktion zur Installation erforderlicher Pakete
|
||||
install_packages() {
|
||||
local DISTRO=$1
|
||||
case $DISTRO in
|
||||
"debian"|"ubuntu")
|
||||
apt-get update
|
||||
apt-get install -y realmd samba-common samba-common-bin krb5-user sssd adcli packagekit
|
||||
;;
|
||||
"rhel"|"centos"|"fedora")
|
||||
yum install -y realmd samba samba-common samba-common-tools krb5-workstation sssd adcli
|
||||
;;
|
||||
"arch")
|
||||
pacman -Syu --noconfirm realmd samba krb5 sssd adcli
|
||||
;;
|
||||
*)
|
||||
echo "Unsupported distribution: $DISTRO"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Funktion zum Joinen der Domäne
|
||||
join_domain() {
|
||||
local DOMAIN=$1
|
||||
local USER=$2
|
||||
local PASSWORD=$3
|
||||
|
||||
echo "Konfiguriere Domain-Join für Domain: $DOMAIN"
|
||||
|
||||
# Realm beitreten
|
||||
echo "$PASSWORD" | realm join --user="$USER" "$DOMAIN" --password
|
||||
|
||||
# Überprüfen, ob der Join erfolgreich war
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "Domain join erfolgreich!"
|
||||
else
|
||||
echo "Fehler beim Domain Join."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Automatische Anmeldung aktivieren
|
||||
if [ -f /etc/pam.d/common-session ]; then
|
||||
sed -i 's/^.*pam_sssd.so/#&/' /etc/pam.d/common-session
|
||||
sed -i 's/^.*pam_sssd.so/#&/' /etc/pam.d/common-session-noninteractive
|
||||
sed -i '/common-session/a session required pam_mkhomedir.so skel=/etc/skel umask=0022' /etc/pam.d/common-session
|
||||
fi
|
||||
}
|
||||
|
||||
# Funktion zur Erkennung der Distribution
|
||||
get_distro() {
|
||||
if [ -f /etc/os-release ]; then
|
||||
. /etc/os-release
|
||||
echo "$ID"
|
||||
else
|
||||
echo "Unknown"
|
||||
fi
|
||||
}
|
||||
|
||||
# Hauptskript
|
||||
main() {
|
||||
if [ "$#" -ne 3 ]; then
|
||||
echo "Usage: $0 <domain> <username> <password>"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
local DOMAIN=$1
|
||||
local USER=$2
|
||||
local PASSWORD=$3
|
||||
|
||||
local DISTRO=$(get_distro)
|
||||
|
||||
install_packages "$DISTRO"
|
||||
join_domain "$DOMAIN" "$USER" "$PASSWORD"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
Reference in New Issue
Block a user