你能想到用于保存HTTPS服务器提供的证书的任何linux命令行方法吗? 沿curl / wget / openssl行的东西做一个SSL连接,并保存证书,而不是HTTP响应内容。
相当于我正在寻找的gui将浏览到HTTPS网站,双击浏览器的“安全网站”图标,并导出证书。 除了这里的目标是非交互式的。
谢谢,吉姆
就像是:
openssl s_client -servername remote.server.net -connect remote.server.net:443 </dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' >/path/to/certificate.pem
这就是我与fetchmail一起使用来检索具有SSLfunction的IMAP或POP3服务器的证书(除非显然,我不使用端口443)
(请注意,“冗余” -servername
参数对于使openssl
执行具有SNI支持的请求是必需的。)
从http://www.madboa.com/geek/openssl/#cert-retrieve
#!/bin/sh # # usage: retrieve-cert.sh remote.host.name [port] # REMHOST=$1 REMPORT=${2:-443} echo |\ openssl s_client -connect ${REMHOST}:${REMPORT} 2>&1 |\ sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p'