现在域名上面很多证书,需要一个强有力的工具去查看并且了解到期时间的状况然后告知你。 检测脚本下载地址: sslooker.kernel3.10.0.x8664.rar 使用方法: #!/bin/bash dir=/tmp/yuming data=`date +%Y-%m-%d` script=/usr/bin/sslo ..

使用 python 发送邮件告知 SSL 证书到期时间

现在域名上面很多证书,需要一个强有力的工具去查看并且了解到期时间的状况然后告知你。
检测脚本下载地址:
sslooker.kernel3.10.0.x8664.rar

使用方法:

#!/bin/bash

dir=/tmp/yuming
data=`date +%Y-%m-%d`
script=/usr/bin/sslooker
yuming=`cat /tmp/yuming`

for i in ${yuming[*]}
do
   hours=`echo -e "$( $script $i 443 )"`
   days=`echo "$hours/24"|bc`

   if [ "$days" -lt  "3" ];
   then
   cat > /tmp/sendmail.py << ccc

#!/usr/bin/env python3
import os
import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr

my_sender = '598941324@qq.com'
my_pass = 'mypwlwbkojrqbdcc'
my_user = '598941324@qq.com'

body = '''
时间:$data :
Your SSL certificate on {name} to expire  {hours} hours
<请检查相关域名SSL证书, $days 天后到期,请注意!>。
'''.format(name="$i",hours="$hours")

def mail():
    ret = True
    msg = MIMEText(body, 'html', 'utf-8')
    msg['From'] = formataddr(["Cuijianzhe", my_sender])
    msg['To'] = formataddr(["Cuijianzhe", my_user])
    msg['Subject'] = 'SSL check on cjzshilong.cn'
    server = smtplib.SMTP_SSL("smtp.qq.com", 465)
    server.login(my_sender, my_pass)
    server.sendmail(my_sender, [my_user, ], msg.as_string())
    server.quit()
    ret=False

    return ret
    ret = mail()
    if ret:
        print("邮件发送成功")
    else:
        print("邮件发送失败")
mail()
ccc
/usr/bin/python3 /tmp/sendmail.py

    fi
done

使用方法:

如果用的是 QQ 邮箱需要生成第三方邮箱授权码:
shouquanma.png

然后运行脚本

# root @ blog in ~ [14:22:46] $ ./SSL_check.sh

结果:

SSL.png

  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    307 引用 • 435 回帖 • 673 关注
回帖   
请输入回帖内容...