我已经使用openssl生成了一个自签名证书 – 它完全是自签名的,而不是由自签名的CA签名。 我已经成功地将它导入到nss数据库供浏览器使用。 我现在想要在全球范围内信任它,所以wget,curl等工具不要唠叨。
按照别处的说明,我将我的证书复制到/ etc / pki / ca-trust / source / anchors /,然后运行“update-ca-trust extract”。 不幸的是,这似乎只适用于CA证书,而不是单一的证书。 我怎样才能达到我所追求的目标? 我知道我可以生成一个自签名的CA,并签署我的证书,但我有理由不这样做。
我生成这样的证书:
openssl genrsa -out server.key 4096 openssl req -new -key server.key -out server.crt openssl x509 -sha256 -req -extensions v3_req -days 3650 -in server.csr -signkey server.key -out server.crt -extfile /etc/pki/tls/openssl.cnf
任何帮助将不胜感激!
您希望信任一个单独的自签名证书来标识其使用的服务器,而不将其信任为CA来签署其他证书,或者启动您自己的CA根目录。
对于RedHat 6,您需要将服务器证书放入/etc/pki/tls/certs/
,其名称是证书的哈希编号,附加.0
。
首先将证书放入一个临时文件,比如/tmp/selfie.crt
。 用openssl x509 -noout -hash -in /tmp/selfie.crt
查找散列openssl x509 -noout -hash -in /tmp/selfie.crt
; 我们假设为了争辩是1234abcd
。 使用cp /tmp/selfie.crt /etc/pki/tls/certs/1234abcd.0
将证书放入RH6的可信存储cp /tmp/selfie.crt /etc/pki/tls/certs/1234abcd.0
。
感谢Nick Burch关于这个主题的指导 ,让我更加清楚地了解细节。
虽然现在你可以拿到一年9美元的证书,如果不是更less的话,开始比这样做更麻烦了。
CA证书是证书。 因此,在目录中添加您的证书应该工作。 我只是尝试在/ etc / ca-certificates / trust-source / anchors /中添加一个我信任的firefox证书,将其从ff中的可信证书中删除。 我重新加载页面,它促使我的证书不被信任。 我重新启动Firefox,现在我可以访问该页面。
我必须更新CA信任,使其与wget工作。
我的格式是.pem,BEGIN / END文件。 你用什么发行版? 你有没有尝试重新启动你的工具?
证书颁发机构需要颁发证书。 查询互联网上的组织。 证书花钱,但也有组织免费颁发证书。 请注意,如果证书不受信任的组织的信任,则浏览器将显示安全警告,例如: the certificate is not trusted because the issuer certificate is unknown
。 另请注意,证书名称需要与网站的fqdn相同。