看板 Linux 關於我們 聯絡資訊
因為上面要求所以寫了一個shell script來修改多個主機的密碼 想法是先判斷作業系統類型(目前只有FreeBSD和CentOS兩個) 去下載含有密碼的文件再利用它去改掉密碼 我的寫法大致如下: whichOS (){ VER=`uname` if [ $VER == FreeBSD ]; then return 0 else return 1 fi } getPW (){ if [ $FLAG == 0 ]; then fetch http://xxx,xxx/newpw > /dev/null 2>&1 newPW=`cat newpw` else wget http://xxx.xxx/newpw -O newpw > /dev/null 2>&1 newPW=`cat newpw` fi } changePW (){ if [ $FLAG == 0 ]; then cat newpw | pw mod user $USER -h 0 else cat newpw | passwd --stdin $USER fi } USER=$1 whichOS FLAG=$? getPW changePW rm newpw 直接執行該script後面加上帳號就是改掉它的密碼 例如 ./change.sh xxx 但後來覺得這樣做好像沒有比直接進主機打passwd修改快多少 頂多不用擔心密碼打錯 不知還有哪些地方可以再精進些 而後來還多一個需求是要能夠知道我改了哪些主機密碼改了哪些沒有 還要能夠回報回來 這樣是否也需要多一個database存放所有主機清單並記錄是否已修改密碼的狀態 單用shell script能夠做到嗎?(目前也只會這個還只會皮毛而已…) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 115.43.122.215
kylekai:系統改用 NIS 或是 LDAP 認證, 整個會簡單點... 03/24 11:19
nknudragon:同上所感 為什麼要再去維護N台主機的密碼檔 03/25 07:41
hukhuk:看看鳥哥的nis那章節吧 03/25 15:47
hukhuk:自己也在玩@@a 03/25 15:47