标签: certificates

从 SSL 证书获取通用名称 (CN)?

我有一个 PEM 格式的 SSL CRT 文件。有没有办法可以从命令行中的证书中提取通用名称 (CN)?

openssl certificates

81
推荐指数
2
解决办法
15万
查看次数

如何从 Linux 中的证书链中提取根 CA 和从属 CA?

我有一个终端实体/服务器证书,它有一个中间证书和根证书。当我cat在最终实体证书上时,我只看到一个BEGINEND标签。它是唯一的最终实体证书。

有什么办法可以查看中间证书和根证书内容。我只需要BEGINEND标签的内容。

在 Windows 中,我可以从“认证路径”中看到完整的证书链。下面是 Stack Exchange 证书的示例。

在此处输入图片说明

从那里我可以执行查看证书并导出它们。我可以在 Windows 中为 root 和中级用户做到这一点。我正在 Linux 中寻找相同的方法。

在此处输入图片说明

ssl openssl certificates

55
推荐指数
3
解决办法
18万
查看次数

如何在没有包属性的情况下以 PEM 格式从 PFX 导出 CA 证书链

我有一个包含完整证书链和私钥的 PKCS12 文件。我需要将它分成 3 个文件用于应用程序。我需要的3个文件如下(PEM格式):

  • 未加密的密钥文件
  • 客户端证书文件
  • CA 证书文件(根证书和所有中间证书)

这是我必须执行的一项常见任务,因此我正在寻找一种无需手动编辑输出即可完成此任务的方法。

我尝试了以下方法:

openssl pkcs12 -in <filename.pfx> -nocerts -nodes -out <clientcert.key>
openssl pkcs12 -in <filename.pfx> -clcerts -nokeys -out <clientcert.cer>
openssl pkcs12 -in <filename.pfx> -cacerts -nokeys -chain -out <cacerts.cer>
Run Code Online (Sandbox Code Playgroud)

这工作正常,但是,输出包含包属性,应用程序不知道如何处理。

经过一番搜索,我找到了一个建议的解决方案,即通过 x509 传递结果以去除包属性。

openssl x509 -in <clientcert.cer> -out <clientcert.cer>
Run Code Online (Sandbox Code Playgroud)

这有效,但我遇到了 cacert 文件的问题。输出文件仅包含链中的 3 个证书之一。

有没有办法避免在 pkcs12 命令的输出中包含包属性,或者有没有办法让 x509 命令输出包含所有证书?此外,如果通过 x509 运行它是最简单的解决方案,有没有办法将 pkcs12 的输出通过管道传输到 x509 而不是两次写出文件?

openssl certificates

52
推荐指数
2
解决办法
12万
查看次数

如果我更新我的安全证书,是否需要重新启动 Nginx?

所以我正在设置一个启用了 SSL 的 nginx 服务器,服务器定义类似于:

server {
    listen :80;
    listen [::]:80;
    server_name example.org;
    root /foo/bar;

    ssl on;
    ssl_certificate /path/to/public/certificate;
    ssl_certificate_key /path/to/private/key;

    ...
}
Run Code Online (Sandbox Code Playgroud)

你明白了(请原谅任何错别字)。

无论如何,我想知道的是;如果我更新我的证书,有没有办法安装它们而不必重新启动 nginx?

例如,如果我要使用来自/path/to/public/certificate和 的符号链接/path/to/private/key,指向我当前的证书,nginx如果我只是将它们更改为指向新的(更新的)证书,我是否还需要重新启动?有替代品吗?

ssl nginx certificates

51
推荐指数
2
解决办法
5万
查看次数

验证 SSL 证书的指纹?

我正在玩弄一个 Puppet 代理和一个 Puppet 主机,我注意到 Puppet 证书实用程序为我的代理的公钥提供了指纹,因为它要求签名:

$ puppet cert list
  "dockerduck" (SHA256) 1D:72:C5:42:A5:F4:1C:46:35:DB:65:66:B8:B8:06:28:7A:D4:40:FA:D2:D5:05:1A:8F:43:60:6C:CA:D1:FF:79
Run Code Online (Sandbox Code Playgroud)

我如何验证这是正确的密钥?

在 Puppet 代理上,使用 asha256sum给了我截然不同的东西:

$ sha256sum /var/lib/puppet/ssl/public_keys/dockerduck.pem
f1f1d198073c420af466ec05d3204752aaa59ebe3a2f593114da711a8897efa3
Run Code Online (Sandbox Code Playgroud)

如果我没记错的话,证书会在实际的密钥文件中提供其公钥的校验和。我怎样才能访问钥匙指纹?

openssl certificates puppet

36
推荐指数
2
解决办法
5万
查看次数

创建结束日期为过去的自签名证书

我想动态创建具有任意开始和结束日期的自签名证书,包括过去的结束日期。我更喜欢使用标准工具,例如 OpenSSL,但任何能完成工作的东西都会很棒。

Stack Overflow 问题如何生成不到一天到期的 openssl 证书?问了一个类似的问题,但我希望我的证书是自签名的。

如果您想知道,自动化测试需要证书。

openssl certificates

30
推荐指数
3
解决办法
2万
查看次数

无法在本地验证发行人的权限

我无法使用 wget 或 curl 打开任何 https URL:

$ wget https://www.python.org
--2015-04-27 17:17:33--  https://www.python.org/
Resolving www.python.org (www.python.org)... 103.245.222.223
Connecting to www.python.org (www.python.org)|103.245.222.223|:443... connected.
ERROR: cannot verify www.python.org's certificate, issued by "/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert SHA2 Extended Validation Server CA":
  Unable to locally verify the issuer's authority.
To connect to www.python.org insecurely, use '--no-check-certificate'.

$ curl https://www.python.org
curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: http://curl.haxx.se/docs/sslcerts.html

curl performs SSL certificate verification by default, using a "bundle"
 of Certificate …
Run Code Online (Sandbox Code Playgroud)

centos ssl certificates

26
推荐指数
3
解决办法
8万
查看次数

如何为本地主机制作自签名证书?

我使用密码和以下字段作为 root

openssl req -x509 -days 365 -newkey rsa:2048 -keyout /etc/ssl/apache.key \
    -out /etc/ssl/apache.crt
Run Code Online (Sandbox Code Playgroud)

字段

Country: FI
State: Pirkanmaa
Locality: Tampere
Organization: masi
Organizational Unit Name: SSL Certificate Test
CommonName: 192.168.1.107/owncloud
EmailAddress: masi@gmail.com
Run Code Online (Sandbox Code Playgroud)

输出:HTTPS 中的 SSL 握手错误。预期输出:HTTPS 连接。HTTP 有效。

CommonName 应该包括你想去的 URL,owncloud's thread here。我在 commonname 中尝试失败

  • 192.168.1.107/owncloud
  • 192.168.1.107/

服务器的测试操作系统:Debian 8.5。
服务器:树莓派 3b。自己的云服务器:8.2.5。自己的云客户端:2.1.1。系统客户端:Debian 8.5。

openssl certificates

26
推荐指数
2
解决办法
5万
查看次数

使用 `openssl` 显示 PEM 文件的所有证书

我可以使用以下命令来显示 PEM 文件中的证书:

openssl x509 -in cert.pem -noout -text
Run Code Online (Sandbox Code Playgroud)

但它只会显示第一个证书的信息。PEM 文件还可能包含证书链。如何显示所有包含的证书?

openssl certificates

24
推荐指数
2
解决办法
7万
查看次数

Chrome 从哪里获取其证书颁发机构列表?

在 Fedora 上,我指的是当您转到设置 > 管理证书 > 权限选项卡时显示的列表。

我读过它应该在 NSS 共享数据库中,但此命令返回一个空列表:

[laurent@localhost nssdb]$ certutil -d sql:$HOME/.pki/nssdb -L
Run Code Online (Sandbox Code Playgroud)

fedora chrome certificates

23
推荐指数
2
解决办法
3万
查看次数

标签 统计

certificates ×10

openssl ×7

ssl ×3

centos ×1

chrome ×1

fedora ×1

nginx ×1

puppet ×1