connecter un utilisateur indésirable
par
popularité : 2%
Voici, un petit programme pour déconnecter un utilisateur indésirable et le dévalider!
Ce dernier a été tester sur un serveur Solaris et Linux. Il fonctionne sous Solaris, HP-UX, Linux. Il suffit de décommenter une ligne...
Pour déconnecter un utilisateur: le script ku nom_de_l'utilisateur
Pour réactiver l'utilisateur: le script ru nom_de_l'utilisateur
Ku et ru sont un même script: il faut faire un lien physique: « ln ku ru »
Voici le script:
#programme pour kill un utilisateur
# ln ku ru
user=$1
rep=/etc/local/gestion_users/
#faite votre choix !!!!
#mdp='*LK*' # pour Solaris
#mdp='*' # pour HP non securise
mdp='\!\!' # pour Solaris
#sauvegarde du MDP
mkdir -p $rep
case $0 in
ku|./ku)
cat /etc/shadow| awk -F: '$1 == user { print $0 }' user=$user >> ${rep}/passwd
#on bloque le compte pour éviter qu'il ne revient trop vite
cat /etc/shadow | awk -F: '$1 == user { OFS=":" ; $2=mdp ; print $0 } $1 != user { OFS=":" ; print $0 }' user=$user mdp=$mdp > /tmp/shadow_
cp /etc/shadow /etc/shadow.$$
mv /tmp/shadow_ /etc/shadow
while who | grep $user > /dev/null 2> /dev/null
do
for PID in ps -t $(who | grep $user |tr -s ' '| cut -d' ' -f 2 | head -1) | sed 's/^ *//'| cut -d ' ' -f 1 | grep -v PID
do
kill -9 $PID
done
done
;;
ru|./ru)
user=$1
cat /etc/shadow | grep -v $user > /tmp/shadow_
grep "${user}:" /etc/local/gestion_users/passwd >> /tmp/shadow_
cp /etc/shadow /etc/shadow.old
mv /tmp/shadow_ /etc/shadow
grep -v "${user}:" /etc/local/gestion_users/passwd > /etc/local/gestion_users/passwd_
mv /etc/local/gestion_users/passwd_ /etc/local/gestion_users/passwd
;;
esac