如何查看SSL證書到期時間?

最近有很多小伙伴私信snca說不知道在哪里查看ssl證書有效期,想著在臨期的時候換個OV SSL。其實查詢ssl證書是否過期方法很多,在這里給大家分享三個方法。
第一種查看ssl證書有效期
你的站點已經(jīng)部署了ssl證書,用戶可正常訪問,在這個前提下,我們先打開站點,看到地址欄有一個安全鎖的樣式如下圖所示:

點擊后,會向我們展示以下信息:該網(wǎng)站身份已經(jīng)過某CA驗證,身份可信,連接加密可信等數(shù)據(jù)。

我們點擊證書信息,就會有常規(guī)數(shù)據(jù)和詳細信息。
就可以看到該SSL證書于何時生效、何時過期。
第二種Linux下使用Openssl查看證書過期時間
用 xshell 或者 putty 工具登錄后,進入證書目錄,使用 openssl 命令進行查看:
# er /mm/ssl/cert
# openssl x509 -in signed.crt -noout -dates
上面改成你自己證書的所在目錄,證書名稱也改成你自己服務端上證書的名稱。
第三種使用代碼查看證書過期時間
我想一次性查看多個域名的SSL有效期,有什么便捷的方法嗎?
可以使用PHP方式查看:
下圖僅供參考
/**
* 獲取SSL證書有效期
*/
public function getValidity(){
$domain = "http://xxx.com";
$context = stream_context_create(array("ssl" => array("capture_peer_cert_chain" => true)));
$socket = stream_socket_client("ssl://$domain:443", $errno, $errstr, 30, STREAM_CLIENT_CONNECT, $context);
$context = stream_context_get_params($socket);
foreach ($context["options"]["ssl"]["peer_certificate_chain"] as $value) {
//使用openssl擴展解析證書,這里使用x509證書驗證函數(shù)
$cerInfo = openssl_x509_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:到期時間