码迷,mamicode.com
首页 > 其他好文 > 详细

跳板机定期改密码脚本

时间:2014-05-07 22:26:08      阅读:951      评论:0      收藏:0      [点我收藏+]

标签:改密码   跳板机   

很早写的,最近别人问过一次,贴出来吧。




#!/bin/bash
#
source /etc/profile &>/dev/null
basedir=$(cd `dirname $0`;pwd)
nowmonth=`date +%m`
nowday=`date +%d`
email="$basedir/email/sendemail.sh"
function GaiMiMa() {
        user="$1"
        passwd=$(/usr/bin/mkpasswd -l 20 -d 5 -c 2 -C 4 -s 0) #mkpasswd 可以yum装下
        echo $passwd |  passwd --stdin $user
        if [ $? -eq 0 ];then
                sh $email "$user@*.com" "跳板机密码更改提示" "您的跳板机密码已经更改为: $passwd 请注意下次登录时替换此密码。【注意】不要复制空白字符;如有问题请及时找**。"
        echo "$user ::::: $passwd" >> $basedir/modify.log
        fi
}
grep "/bin/bash" /etc/passwd |grep -v "root"|awk -F: ‘{print $1}‘ > $basedir/userlist
#user=‘yanzong.chen‘
for user in `cat $basedir/userlist`
do
        month=$(chage -l $user | grep "Last password change"|awk -F: ‘{print $2}‘|awk ‘{print $1}‘)
        day=$(chage -l $user | grep "Last password change"|awk -F: ‘{print $2}‘|awk ‘{print $2}‘|tr -d ,)
        month=$(grep $month $basedir/month|awk -F‘=‘ ‘{print $2}‘)
        if [ $nowmonth -ge $month ];then
                D=$(expr $nowmonth \* 30 + $nowday - $day  - `expr $month \* 30`)
                if [ $D -gt 85 ];then
                        GaiMiMa $user
                fi
        else
                X=$(expr $nowmonth \* 30 + $nowday - `expr $month \* 30` - $day + 360 )
                if [ $X -gt 85 ];then
                        GaiMiMa $user
                fi
        fi
done
echo `date +%F` >> $basedir/modify.log


配套month文件

Jan=01
Feb=02
Mar=03
Apr=04
May=05
Jun=06
Jul=07
Aug=08
Sep=09
Oct=10
Nov=11
Dec=12


本文出自 “豆包的博客” 博客,请务必保留此出处http://407711169.blog.51cto.com/6616996/1407814

跳板机定期改密码脚本,布布扣,bubuko.com

跳板机定期改密码脚本

标签:改密码   跳板机   

原文地址:http://407711169.blog.51cto.com/6616996/1407814

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!