#!/bin/bash echo "Setting up template environment" ## Script Location SCRIPTDIR=$(dirname $0) echo $SCRIPTDIR ## Folder Name of Script COMPLETEFOLDERPATH=$(realpath $SCRIPTDIR) echo $COMPLETEFOLDERPATH source $HOME/.bashrc ## Check for whiptail if which whiptail >/dev/null; then : else apt-get install -y whiptail fi ## Check for git if which git >/dev/null; then : else apt-get install -y git fi ## Update echo "Running topgrade" /opt/topgrade/topgrade ## FreeIPA Realm Join if (whiptail --title "FreeIPA Relam Join" --yes-button "yes" --no-button "no" --yesno "Do You want to join a FreeIPA Realm?" 10 80) then echo "Checking if system already contains Membership to FreeIPA Realm" realm_join=0 if [[ ! -f /var/lib/ipa-client/sysrestore/sysrestore.state ]] then echo "$HOSTNAME appears to not be joined to FreeIPA Server Realm" realm_join=1 else echo "$HOSTNAME appears to already be joined to FreeIPA Server Realm" fi if [[ $HOSTNAME == *template* ]]; then echo "Hostname $HOSTNAME contains the word 'template', skipping realm joining" realm_join=0 fi if [ "$realm_join" == 1 ]; then echo "Setting up ipa-client to join FreeIPA Server Realm" freeipa_admin=$(whiptail --passwordbox "Please enter the user authorized to join FreeIPA realm: $freeipa_admin" 8 78 --title "FreeIPA Admin User Prompt" 3>&1 1>&2 2>&3) freeipa_password=$(whiptail --passwordbox "Please enter the password for the FreeIPA admin user: $freeipa_admin" 8 78 --title "FreeIPA Password Prompt" 3>&1 1>&2 2>&3) ipa-client-install --mkhomedir --no-ntp --principal="$freeipa_admin" --password="$freeipa_password" --enable-dns-updates --unattended fi else echo "Skipping realm joining" fi