#!/bin/bash # Name: ldap_rollback-ipa-client-to-nscd.sh # Description: Disables sssd and restores original ldap settings # Last Updated: 03/16/2016 # Recent Changes:-Set authconfig to enable ldap for ident and auth ############################################################################################### #### Functions Here: Main Starts After #### function check_os_type { if [ -f /etc/system-release-cpe ];then distro=$(awk -F: '{printf "%s", $3}' /etc/system-release-cpe) major_version=$(awk -F: '{printf "%d", $5}' /etc/system-release-cpe) elif [ -f /etc/redhat-release ];then distro=$(awk '{printf "%s", $1}' /etc/redhat-release) major_version=$(awk -F. '{print $1}' /etc/redhat-release | awk '{printf "%d", $3}') fi } #### End of Functions #### #================== # Main Starts Here #================== # Pre-checks check_os_type #============================================================== # Confirm running the script #============================================================== echo -e "======================================================" echo -e "####====== LDAP: Rollback IPA Client to NSCD =====####" echo -e "======================================================" echo echo -e "Warning: This script will remove the ipa-client, enable nscd/nslcd, and set LDAP authentication." echo -e "Detected Distro: ${distro} ${major_version}" echo -e "\n=>Continue?[y/n]:\c" read run_script if [[ ${run_script} != "y" ]]; then echo -e "\n>>Will not run the LDAP rollback script. Exiting..." exit 1 fi echo -e "\n>>Uninstalling ipa-client..." ipa-client-install --uninstall echo -e "\n>>Forcing Legacy Services and enabling ldap identification and auth..." case ${major_version} in "7"|"6") authconfig --enableforcelegacy --enableldap --enableldapauth --update ;; "5") authconfig --enableldap --enableldapauth --update ;; esac echo -e "\n>>Starting/enabling nscd/nslcd..." case ${major_version} in "7") systemctl restart nscd nslcd systemctl enable nscd nslcd ;; "6") service nscd restart service nslcd restart chkconfig nscd on chkconfig nslcd on ;; "5") service nscd restart chkconfig nscd on ;; esac echo -e "\n======================================================" echo -e "####==== Rollback IPA Client to NSCD Complete ====####" echo -e "======================================================"