第一种查看ssl证书有效期
你的站点已经部署了ssl证书,用户可正常访问,在这个前提下,我们先打开站点,看到地址栏有一个安全锁的样式如下图所示:
点击后,会向我们展示以下信息:该网站身份已经过某CA验证,身份可信,连接加密可信等数据。
我们点击证书信息,就会有常规数据和详细信息。
就可以看到该SSL证书于何时生效、何时过期。
第二种Linux下使用Openssl查看证书过期时间
用 xshell 或者 putty 工具登录后,进入证书目录,使用 openssl 命令进行查看:
# er /mm/ssl/cert
# openssl x -in signed.crt -noout -dates
上面改成你自己证书的所在目录,证书名称也改成你自己服务端上证书的名称。
第三种使用代码查看证书过期时间
我想一次性查看多个域名的SSL有效期,有什么便捷的方法吗?
可以使用PHP方式查看:
下图仅供参考
/**
* 获取SSL证书有效期
*/
public function getValidity(){
$domain = "xxx.com";
$context = stream_context_create(array("ssl" => array("capture_peer_cert_chain" => true)));
$socket = stream_socket_client("ssl://$domain:", $errno, $errstr, , STREAM_CLIENT_CONNECT, $context);
$context = stream_context_get_params($socket);
foreach ($context["options"]["ssl"]["peer_certificate_chain"] as $value) {
//使用openssl扩展解析证书,这里使用x证书验证函数
$cerInfo = openssl_x_parse($value);
if(strpos($cerInfo[name],$domain)) {
echo "start:".date("Y-m-d",$cerInfo[validFrom_time_t])."<br/>";
echo "end:".date("Y-m-d",$cerInfo[validTo_time_t]);
}
}
}
输出内容:
start:生效时间
end:到期时间