#!/bin/bash

# Simple script to permanently remove a list of clients from kerberos
# Copyright (C) 2005-2024 FUSS Project <info@fuss.bz.it>
# Authors: Claudio Cavalli <ccavalli@fuss.bz.it>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or (at
# your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

usage () {
    echo "Usage: ./forget_clients file"
}

CLIENT_LIST=$1

if [ ! -e "$CLIENT_LIST" ]; then
    usage
    exit 1
fi


systemctl stop octofussd
for HOSTNAME in $(cat $CLIENT_LIST)
do
        echo $HOSTNAME
        DOMAINNAME=$(dnsdomainname)
        FQDN="$HOSTNAME.$DOMAINNAME"
        sed -r -i "s/ +$HOSTNAME( +|$)/\1/g" /etc/clusters
        kadmin.local ktremove nfs/$FQDN all
        kadmin.local delprinc nfs/$FQDN
done
systemctl start octofussd
