shell 账户批量管理脚本

  1 [root@CHN-BJ-01-DR720-VPN script]# cat account_auto.sh 
  2 #!/bin/bash
  3 #Date:2013-08-29
  4 #Author:ZhangLuYa
  5 #Version 1.5
  6 
  7 Port="51022"
  8 Work="/work/script" 
  9 ip_list="${Work}/test.txt"
 10 Password=$(cat /dev/urandom|head -1|md5sum|head -c 10)
 11 
 12 Public(){
 13    echo -e "\033[32;49;1m--------------------------------------------------------------------------------\033[39;49;0m"
 14 }
 15 
 16 UserAdd(){
 17    Public
 18    echo -n "Please input username:" 
 19    read User
 20    for IP in `cat ${ip_list}`
 21        do
 22             Add_User="useradd -g develop $User;echo "${Password}"|passwd --stdin $User && history -c;sed -i 's#AllowUsers#AllowUsers '''$User'''#g' /etc/ssh/sshd_config;/etc/init.d/sshd restart"
 23             Cur_u=`/usr/bin/whoami`
 24             ssh -p ${Port} ${Cur_u}@${IP} ${Add_User} > /dev/null 2>&1
 25             echo ${IP} ${Port} ${User} ${Password} is ok!
 26        done
 27 }
 28 
 29 UPDATE(){
 30    Public
 31    echo -n "Change Password For User:" 
 32    read User
 33    for IP in `cat ${ip_list}`
 34        do
 35             Update_User="echo "${Password}"|passwd --stdin $User"
 36             Cur_u=`/usr/bin/whoami`
 37             ssh -p ${Port} ${Cur_u}@${IP} ${Update_User} >> /dev/null 2>&1
 38             echo ${IP} ${Password} OK!
 39        done
 40 }
 41 
 42 DELETE(){
 43    Public
 44    echo -n "Delete Old Server User:" 
 45    read User
 46    for IP in `cat ${ip_list}`
 47        do
 48             Delete_User="userdel -r $User;sed -i 's#'''$User'''##g' /etc/ssh/sshd_config;/etc/init.d/sshd restart"
 49             Cur_u=`/usr/bin/whoami`
 50             ssh -p ${Port} ${Cur_u}@${IP} ${Delete_User} >> /dev/null 2>&1
 51             echo $IP ${User}: Delete OK!
 52        done
 53 }
 54 QUERY(){
 55    Public
 56    echo -n "Query Server User:" 
 57    read User
 58    for IP in `cat ${ip_list}`
 59        do
 60             Query_User="ls /home|grep ${User}&&echo $IP"
 61             Cur_u=`/usr/bin/whoami`
 62             ssh -p ${Port} ${Cur_u}@${IP} ${Query_User}
 63        done
 64 }
 65 
 66 CMD(){
 67    Public
 68    echo -n "Input cmd:" 
 69    read CMD
 70    for IP in `cat ${ip_list}`
 71        do
 72             Cur_u=`/usr/bin/whoami`
 73             ssh -p ${Port} ${Cur_u}@${IP} ${CMD}
 74    Public
 75        done
 76 }
 77 
 78 MAIN(){
 79    echo -n "Please select number:
 80    1:Create New Server User;
 81    2:Delete Old Server User;
 82    3:Change Password For User;
 83    4:Query User:
 84    5:Linux Cmd:
 85 Enter Number:"
 86 read Num
 87 
 88 case $Num in
 89      1)
 90      UserAdd
 91      ;;
 92      2)
 93      DELETE
 94      ;;
 95      3)
 96      UPDATE
 97      ;;
 98      4)
 99      QUERY
100      ;;
101      5)
102      CMD
103      ;;
104      *)
105      ;;
106 esac
107 }
108 while [ 1 ]
109       do
110       MAIN
111       done

 

posted @ 2013-09-23 12:10  study-notes  阅读(155)  评论(0编辑  收藏  举报