简介
目前,很多网站都使用了https,证书的过期检查也是运维需要关注的地方,可以通过直接连接域名,获取证书信息,来判断是否已经更新了证书。
![ffbdc023bc1a259b9ac0256c8b539b28.png](https://i-blog.csdnimg.cn/blog_migrate/b2c976f6c13a36694482e15b11e19e1e.jpeg)
代码
package mainimport ( "crypto/tls" "fmt" "net" "os" "time")func main() { args := os.Args usage := os.Args[0] + " [domain|ip]" if len(args) < 2 { fmt.Println(usage) os.Exit(0) } conn, err := tls.DialWithDialer(&net.Dialer{ Timeout: time.Second * 5, Deadline: time.Now().Add(time.Second * 9), }, "tcp", args[1], &tls.Config{ InsecureSkipVerify: true, }) if err != nil { fmt.Println(err) os.Exit(3) } defer conn.Close() stats := conn.ConnectionState() certs := stats.PeerCertificates for i := range certs { fmt.Println(certs[i].DNSNames, certs[i].IPAddresses, certs[i].NotBefore, certs[i].NotAfter, certs[i].IsCA) }}
![c05e3d2863a8b958468266fc37445c1f.png](https://i-blog.csdnimg.cn/blog_migrate/f60b6f54692d72b131c9c8cc1e28d97f.jpeg)
总结
替换证书虽然很简单,当时就怕遗漏,出现故障影响可就大了!
![bb88f450210b9aeaf2b236345bb6c74e.png](https://i-blog.csdnimg.cn/blog_migrate/a3ec40c45d91d34be88e4f4eeb770e89.jpeg)