Centos下取随机密码修改并发送至邮箱

Posted 安全365

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos下取随机密码修改并发送至邮箱相关的知识,希望对你有一定的参考价值。

【新朋友点击标题下面蓝字「 安全365」关注

老朋友点击右上角,分享或收藏本页精彩内容


大家好,我是sean,为了服务器的安全性,大家都定时修改密码来增强安全性,如果是几台机器手动改就行了,但是如果是几十台上百台机器,每周修改一次,而且要求数字大小写字母加各种特殊符号,这样的话手动修改会产生两个后果,①改完以后手就废掉了,②手抖密码输错了,再次登录发现不上去,这两点是个人深有体会......,然后个人写的一个小脚本就诞生了。

这次实验是在centos6.x的环境下测试的,首先安装一个发邮件的工具

 yum -y install mail

 

然后将我们的脚本放在指定的路径

 

Centos下取随机密码修改并发送至邮箱

解释下脚本的内容

#!/bin/bash

ip=`ip add|grep -o -e 'inet [0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}'|grep -v "127.0.0"|awk '{print $2}'|head -1 `            #这一行是提取本机IP的,不需要改

tr -dc _A-Z-a-z#$%^*-0-9 </dev/urandom |head -c20 >/home/1.txt  #这一行是生成随机密码的

cat /home/1.txt |passwd root --stdin#这一行是将生成的密码本机的密码

SendStatus=`mail -v -s "CDN node $ip Latest password" 70921508@qq.com< /home/1.txt  | grep -c "Mail Delivery Status Report will be mailed to <root>"`  #这一行是将密码发送到指定邮箱,这里你们设置自己的邮箱

if [ "$SendStatus" == "1" ] ; then

echo "Sender mail ok"

rm -rf /home/1.txt

else

echo "Sender mail fail!"

sleep 50

sh /home/psd.sh         #这一行要注意,你的脚本路径和脚本名字一定要和这里相同

fi #这个循环是将密码发送到指定邮箱,发送成功则删除生成的密码文件,发送失败则延迟50,在执行一次脚本

 

我把脚本放在了/home/psd.sh 

 

Centos下取随机密码修改并发送至邮箱

执行一下sh  psd.sh

 Centos下取随机密码修改并发送至邮箱

执行完毕后密码已经过来了


 Centos下取随机密码修改并发送至邮箱

测试登录没有问题

 

然后设置计划任务(每天晚上一点执行一次) vi /etc/crontab

 

教程到此结束,自己折腾吧


文章出处:华盟论坛

--------------------------------------

要闻、干货、原创、专业

关注“安全365” 
安全365我们坚持,自由,免费,共享


以上是关于Centos下取随机密码修改并发送至邮箱的主要内容,如果未能解决你的问题,请参考以下文章

WordPress忘记密码且邮箱无法发送找回密码链接时的解决办法

centos 7 mailx邮件发送

使用PHP发送email进行账号激活或者密码修改操作

简述邮箱找回密码功能

python 随机远程主机修改密码

创建用户并随机生成密码,并修改用户密码