跳过正文
  1. Posts/

使用随机密码来设置密码及固定字符加密密码

·52 字·1 分钟·
Kubehan
作者
Kubehan
云原生知识栈:深度解析容器技术、Kubernetes、Istio、DevOps 实践、Prometheus 监控、Envoy 代理、Golang 开发及云原生架构与微服务趋势的专业博客

使用随机密码来设置密码及固定字符加密密码

#!/bin/bash
# @Author: HanWei
# @Date:   2020-03-03 16:55:44
# @Last Modified by:   HanWei
# @Last Modified time: 2020-03-03 17:47:43
# @E-mail: han_wei_95@163.com
# #################################################
: '脚本功能说明:
	1.定期修改密码
	2.使用随机密码来设置密码及固定字符加密密码
	3.将密码发送到指定的邮箱账号
	4.邮件发送成功才进行修改密码
	5.sh 【脚本名称】 【用户名】
'
##################################################	
user=$1
function chang ()
{
	date=`date`
	hostname=`hostname`	
	passwd=`openssl rand -base64 16`
	echo $passwd >> passwd.txt
	chattr +a passwd.txt
	echo ${passwd} | passwd --stdin $user
	echo "passwd is ${passwd} for $user" | mail -s "$date $hostname 密码修改通知 " han_wei_95@163.com
}

function reback ()
{
	date=`date`
	ip=`hostname`
	echo `hostname` | openssl base64 | passwd --stdin $user
	echo `hostname` | openssl base64  | mail -s "$date $ip 密码修改通知 " han_wei_95@163.com

}

echo "警告:此脚本运行后将修改用户密码!您要使用随机密码还是默认密码?"
echo "s		随机密码"
echo "g		默认密码"
read -p "随机密码输入[s/g]:" i
case $i in
      [S,s])
	chang
        echo "随机密码已经发送到管理员邮箱"
;;
      [G,g])
	reback
            echo "默认密码已经发送到管理员邮箱"
;;
       *)
            echo "请输入S/s or  G/g"
esac