先祝看到的同學中秋快樂,身體健康,在身體健康的基礎上盡量暴富。
進入正題,現在大部分網站都默認支持 HTTPS,我們申請的證書一般是3個月或者1年,很容易隨著時間的流逝SSL證書過期了我們卻沒有第一時間發現,或者在過期之前沒有及時更新證書。
今天這篇文章介紹如果使用 hertzbeat 監控系統來檢測我們網站的SSL證書有效期,當證書過期時或證書快過期前幾天,給我們發告警消息。
HertzBeat是什么
HertzBeat 一個擁有強大自定義監控能力,無需Agent的實時監控系統。網站監測,PING連通性,端口可用性,數據庫,操作系統,中間件,API監控,閾值告警,告警通知(郵件微信釘釘飛書)。
官網: hertzbeat.com | tancloud.cn
github: github.com/dromara/her…
gitee: gitee.com/dromara/her…
安裝 HertzBeat
1.如果不想安裝可以直接使用云服務 TanCloud探云 console.tancloud.cn
- Docker 環境僅需一條命令即可安裝
docker run -d -p 1157:1157 --name hertzbeat tancloud/hertzbeat
- 安裝成功瀏覽器訪問 localhost:1157 即可開始,默認賬號密碼 admin/hertzbeat
- 點擊新增SSL證書監控
系統頁面 -> 監控菜單 -> SSL證書 -> 新增SSL證書
- 配置監控網站
我們這里舉例監控百度網站, 配置監控host域名,名稱,采集間隔等。 點擊確定 注意??新增前默認會先去測試網站連接性,連接成功才會新增,當然也可以把是否測試按鈕置灰。
- 查看檢測指標數據
在監控列表可以查看監控狀態,進監控詳情可以查看指標數據圖表等。
- 設置閾值(證書過期時觸發)
系統頁面 -> 告警 -> 告警閾值 -> 新增閾值
配置閾值,選擇SSL證書指標對象,配置告警表達式-當指標expired為true觸發,即equals(expired,"true") , 設置告警級別通知模版信息等。
關聯閾值與監控, 在閾值列表設置此閾值應用于哪些監控。
- 設置閾值(證書過期前一周觸發)
同理如上,新增配置閾值,配置告警表達式-當指標有效期時間戳 end_timestamp,now()函數為當前時間戳,若配置提前一周觸發告警即:end_timestamp <= (now() + 604800000) , 其中 604800000 為7天總時間差毫秒值。
最終可以在告警中心看到已觸發的告警。
- 告警通知(通過釘釘微信飛書等及時通知)
監控系統 -> 告警通知 -> 新增接收人
釘釘微信飛書等token配置可以參考幫助文檔
https://link.juejin.cn/?target=https%3A%2F%2Fhertzbeat.com%2Fdocs%2Fhelp%2Falert_dingtalk
https://link.juejin.cn/?target=https%3A%2F%2Ftancloud.cn%2Fdocs%2Fhelp%2Falert_dingtalk
告警通知 -> 新增告警通知策略 -> 將剛才配置的接收人啟用通知
- OK 當閾值觸發后我們就可以收到對應告警消息啦,如果沒有配通知,也可以在告警中心查看告警信息。
監控SSL證書的實踐就到這里,當然對heartbeat來說這個功能只是冰山一角,如果您覺得heartbeat這個開源項目不錯的話歡迎給我們在GitHub Gitee star哦,灰常感謝。感謝老鐵們的支持。筆芯!
github: https://link.juejin.cn/?target=https%3A%2F%2Fgithub.com%2Fdromara%2Fhertzbeat
gitee: https://link.juejin.cn/?target=https%3A%2F%2Fgitee.com%2Fdromara%2Fhertzbeat