linux查看服务端证书

2024-11-16 1

查看服务器端的证书时,可以通过导入服务器的公钥证书文件,或者直接从服务器上抓取并查看证书。

常见以下几种方法:

方法 1:直接从服务器上抓取并查看证书

可以通过 keytool 来连接远程服务器的端口,并查看其 SSL/TLS 证书:

1
keytool -printcert -rfc -sslserver <hostname>:<port>
  • <hostname>:服务器的主机名或 IP 地址。

  • <port>:服务器使用 SSL/TLS 的端口号,通常是 443(HTTPS)或其他端口。

假设需要查看 www.test.com 网站的证书:

1
keytool -printcert -rfc -sslserver www.test.com:443

运行此命令后,将看到服务器的证书详细信息,包括证书链中的所有证书、颁发者信息、公钥、有效期等。

方法 2:通过 openssl 抓取并查看证书

如果不想使用 keytool,可以使用 openssl 工具来抓取服务器端的证书,然后通过 keytool 查看:

1.使用 openssl 抓取服务器证书

1
openssl s_client -connect <hostname>:<port> -showcerts

这将输出服务器的证书链,包含服务器证书及其链中其他证书。

2.保存证书

将证书保存到一个文件(例如 server.crt)中。

3.使用 keytool 查看证书

1
keytool -printcert -file server.crt

方法 3:下载并查看证书文件

有时,可能已经从服务器上下载了证书文件(如 .cer 或 .crt 文件),可以直接使用 keytool 查看:

1
2
keytool -printcert -file <cert-file-path>
keytool -printcert -file server.cer

证书信息解析

在输出结果中,你可以看到以下信息:

  • Owner:证书的拥有者信息(通常包括 CN、OU、O、L、ST、C 等)。

  • Issuer:证书的颁发者信息。

  • Serial number:证书的序列号。

  • Valid from / to:证书的有效期。

  • Signature algorithm:签名算法(如 SHA256withRSA)。

  • Public key:公钥的详细信息。

通过这些方法,可以方便地查看服务器的证书信息,并检查证书是否有效,或进一步用于信任链验证等操作。