歡迎您光臨本站 註冊首頁

在LINUX下實現密碼批量隨機更改

←手機掃碼閱讀     火星人 @ 2014-03-03 , reply:0

在LINUX下實現密碼批量隨機更改

在LINUX下實現密碼批量隨機更改

自動批量修改/etc/password文件中UID大於等於500的用戶的密碼,要求密碼符合以下複雜性要求,
一,達到8位,
二,密碼中需至少帶有數字或字母大小寫。
三、密碼是隨機產生的
四、需把更改后的密碼記錄下來以便發給相應人員



腳本內容:
# more random.sh


cat /etc/passwd |awk -F "[:]" '$3 >= 500{print $1}'|while read line
do


        a=(0 1 2 3 4 5 6 7 8 9 a b c d e A B C D E F @ $ % ^)
        for ((i=0;i<8;i++));do
                echo -n ${a[$RANDOM % ${#a}]}




        done
        echo "  $line"


done



執行腳本:
#more password_change.sh
sh random.sh |awk '{print  "echo",  "'\''"$1"'\''| passwd", $2, "--stdin" }' >password.txt
sh password.txt


密碼會隨機生成后輸出 到password.txt文件中,直接執行這個文件就可以完成密碼的自動更改了

bjnppb01:~/scripts # more password.txt
echo 'b$7C4D1D'| passwd nobody --stdin
echo 'b03eAa%C'| passwd cvsroot --stdin
echo '6a3$361D'| passwd oracle --stdin
echo 'E1c^b0e$'| passwd #test --stdin
echo '$@$1$%EA'| passwd netback --stdin
《解決方案》

樓主用的是什麼linux 我的linux passwd 命令沒有stdin 參數。

這種需求我是用 chpasswd 命令完成的
《解決方案》

:em30::em30:

[火星人 ] 在LINUX下實現密碼批量隨機更改已經有245次圍觀

http://coctec.com/docs/service/show-post-2278.html