首页 > 系统相关 >shell脚本检测ssl证书有效时间

shell脚本检测ssl证书有效时间

时间:2023-12-18 17:55:35浏览次数:37  
标签:DOMAIN shell END 证书 TIMESTAMP echo ssl DATE

 

[ytx@work shell]$ cat ssl_check.sh 
#!/bin/bash

# 设置要检查的域名和端口
DOMAIN="www.xxx.com"  #域名
PORT=443              #端口

# 获取SSL证书信息
CERT_INFO=$(openssl s_client -connect ${DOMAIN}:${PORT} -servername ${DOMAIN} -showcerts </dev/null 2>/dev/null | openssl x509 -dates -noout)

# 提取证书过期日期信息
START_DATE=$(echo "${CERT_INFO}" | grep "notBefore" | cut -d'=' -f 2)
END_DATE=$(echo "${CERT_INFO}" | grep "notAfter" | cut -d'=' -f 2)

# 将日期转换为Unix时间戳
START_TIMESTAMP=$(date -d "${START_DATE}" +%s)
END_TIMESTAMP=$(date -d "${END_DATE}" +%s)
CURRENT_TIMESTAMP=$(date +%s)

# 计算剩余天数
DAYS_REMAINING=$(( (${END_TIMESTAMP} - ${CURRENT_TIMESTAMP}) / 86400 ))

# 输出结果
echo "SSL证书信息:"
echo " - 域名: ${DOMAIN}"
echo " - 证书开始日期: ${START_DATE}"
echo " - 证书过期日期: ${END_DATE}"
echo " - 剩余天数: ${DAYS_REMAINING} 天"

# 检查是否过期
if [ ${CURRENT_TIMESTAMP} -gt ${END_TIMESTAMP} ]; then
  echo "证书已过期!"
else
  echo "证书在有效期内。"
fi

 

执行结果:

 

标签:DOMAIN,shell,END,证书,TIMESTAMP,echo,ssl,DATE
From: https://www.cnblogs.com/Leonardo-li/p/17911818.html

相关文章

  • wgcloud运维部署 - 配置使用https证书
    https://www.wgstart.com/help/docs137.html......
  • SslSugar导航查询与EF Core导航查询
    SqlSugar:当我们在SQLSugar中定义了两个实体类之间的关联关系时,可以使用导航属性进行关联查询。导航属性是表示一个实体对象与其他实体对象之间关联的属性。通过导航属性,我们可以方便地在查询中访问和检索相关联的实体数据。在SQLSugar中,导航属性需要满足以下条件:导航属性必须......
  • 使用 Power Shell 修改 Hyper-V 虚拟机 UUID 的解决方案
    前言在研究了一下午k8s文档的时候,正准备开干,万万没想到一个uuid的问题卡了我几个小时,一直想在系统中解决,没想到最后在外部使用PowerSheel解决了,分享记录一二问题描述与尝试解决根据官方文档使用kubeadm创建k8s集群的准备,所以准备在之前文章中使用Hyper-V安装的Cen......
  • springboot连接mysql出现的SSL问题
    1、连接配置spring:datasource:username:rootpassword:rooturl:jdbc:mysql://192.168.0.1:3307/admin?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghaidriver-class-name:com.mysql.cj.jdbc.Driver出现SSL连接问题2、解......
  • Windows2008R2 IIS配置证书 ERR_SSL_VERSION_OR_CIPHER_MISMATCH 错误解决方法
    IISCrypto 用这个工具很方便,也可以手动修改注册表工具内置最佳实践,点击 BestPractices再Apply,然后重启服务器即可,设置前记得备份注册表。参考:https://blog.csdn.net/a873744779/article/details/103635882https://blog.csdn.net/jackbon8/article/details/82702563 ......
  • 谁简历上没有个四六级证书啊!
    本文首发自公粽hao「林行学长」,欢迎来撩,免费领取20个求职工具资源包。了解校招、分享校招知识的学长来了!不少同学肯定心烦自己在校期间没有啥证书,但是,你可以永远相信你有很多证书可以考!比如今天虐哭不少人的四六级。是的,那个曾经被认为没有四六级证书毕不了业的考试。虽然现在不少......
  • PowerShell配置文件只Profile.ps1
    PowerShell执行的时候,首先会执行Profile.ps1的内容,如果我们想要执行PowerShell的时候,会获得某些功能,可以将想要的内容放到Profile.ps1中。这个文件默认存放在C:\Windows\system32\WindowsPowerShell\v1.0\Examples\下。该文件默认添加所有的别名,还有部分Function。内容如下:#Copyr......
  • 【Power Shell】启动时自动配置http代理
    背景有时候我们经常需要在WindowsTerminal,powershell内使用http代理来拉去GitHub代码、软件包等等,每次都需要手动配置很麻烦。其实我们可以使用.ps1脚本来启动。https://learn.microsoft.com/zh-cn/powershell/module/microsoft.powershell.core/about/about_scripts?view=pow......
  • shell实战正则三贱客——awk
    shell实战正则三贱客——awk特点及应用场景awk一门语言类似于c语言过滤,统计,计算过滤,统计,日志执行过程awk-F,'BEGIN{print"name"}{print$2}END{print"endoffile"}'oldboy.txt执行过程说明awk读取文件之前命令复制或命令行参数......
  • shell实战正则三贱客—grep
    三剑客三剑客特点,及应用场景命令特点场景grep过滤grep过滤速度是最快的sed替换,修改文件内容,取行如果要进行替换/修改文件内容,取出某个范围的内容(从早上10:00到11:00)awk取列,统计结算取列对比,比较统计,计算(awk数组)shell实战正则三贱客—grep选项含......