kube-apiserver
似乎没有提供使用证书撤销列表(CRL)的选项。
如果客户端证书丢失或不再使用,有没有办法撤销它?
我在与 AppleWallet 开展业务时遇到问题。\n他们为我提供了三个证书:
\n\n我的问题:如何使用 RSA 算法验证和编码数据?
\n\nPS\xef\xbc\x9a该文档明确指出公钥是由叶证书提供的。并且这三个证书是连锁的。叶证书由子证书签名,子证书由 AppleRootCA-G3.cer 签名。
\n\n我需要做两件事:
\n\n我不知道该怎么做。
\n我们有一个内部 CA 服务器。
我们有一个 Android 应用程序,应该通过 https 与我们的网络服务器进行通信,并已生成所需的证书。当我们通过应用程序连接到服务器时,它会失败并显示当前的堆栈跟踪:
Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
Run Code Online (Sandbox Code Playgroud)
但是当我们通过 Android Chrome 浏览服务器时,它可以工作,并且我们会得到一个绿色的钥匙锁。我们已在 Android 设备的设置下上传了证书。因此它列在用户证书下。
我的问题是:我需要按代码做任何事情吗?我认为该应用程序会查看手机上的证书并使用它。Chrome 似乎就是这么做的。但一些指南告诉我,我手动创建了一个密钥库并将其提供给 SSLFactory(链接到指南)。但在其他页面上,这似乎应该是开箱即用的......
有人能指出我正确的方向吗?
我正在研究Hyperledger Fabric并运行示例代码。我仍在尝试正确了解事物的工作原理,特别是在用户/管理员注册和使用证书和加密材料的注册方面。
我想知道以下是如何工作的。
1)注册
2)招生
3)用户和管理上下文。
我感到困惑的另一件事是证书或 CA。要使用区块链网络,如何使用我自己的/第三方 x509 类型证书。有可能吗??
在 hyperledger Fabric 文档中的 BYFN 示例中,证书是使用 cryptogen 工具生成的,并用于与 MSP 验证区块链参与情况。
它在现实世界或业务应用场景中是如何工作的。
谢谢
ca x509certificate blockchain hyperledger hyperledger-fabric
我在 haproxy 上面临 TLS 双重身份验证的问题,我的根 CA 和中间 CA 一次连接在一起,我的客户端证书正常,并且 openssl 验证返回 OK(根据 CA 验证客户端证书)
openssl verify -CAfile ca_cert.pem clientcert.crt
OK
Run Code Online (Sandbox Code Playgroud)
我在 haproxy 上的配置:
frontend myfront_77
bind myip:myport ssl crt /etc/haproxy/ssl/servercert.pem ca-file /etc/haproxy/ssl/ca_cert.pem force-tlsv12 ciphers AES256+EECDH:AES256+EDH:AES256-GCM-SHA384:AES128-GCM-SHA256:AES128-SHA256:AES256-SHA verify required
Run Code Online (Sandbox Code Playgroud)
但是当发送请求时我遇到了这个 ssl 错误:
SSL_connect:error in SSLv3 read finished A SSL3 alert read:fatal:unknown CA SSL_connect:failed in SSLv3 read finished A 140080046843792:error:14094418:SSL routines:ssl3_read_bytes:tlsv1 alert unknown ca:s3_pkt.c:1493:SSL alert number 48
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮忙吗,我几天来一直被这个问题搞得心烦意乱?
我在我的木偶架构中使用 SRV 解决方案。当尝试设置新的 puppet master 和 CA 并查看我的证书时,我收到此错误:
puppetserver ca list --all
Fatal error when running action 'list'
Error: Failed connecting to https://puppet:8140/puppet-ca/v1/certificate_statuses/any_key
Root cause: Failed to open TCP connection to puppet:8140 (getaddrinfo: No address associated with hostname)
Run Code Online (Sandbox Code Playgroud)
我的 puppet.conf 文件具有以下配置:
use_srv_records = true
srv_domain = mypuppetrecord.com
Run Code Online (Sandbox Code Playgroud)
我缺少什么?
在 C# 中,使用 HttpClient 时,如何连接到使用自签名证书(用于测试)或不属于计算机信任存储的自定义 CA 的 https 服务器?请注意,我不需要客户端证书,只需要 HttpClient 来验证未由计算机上受信任的根 CA 之一签名的服务器证书。我知道我可以将自签名证书或 CA 添加到计算机上的本地信任存储中,但假设我想避免这样做。我需要的基本上是为正在运行的应用程序提供额外的根 CA。
据我所知,在其他语言中有很简单的方法可以做到这一点:
在java中,使用“javax.net.ssl.trustStore”系统属性。
在 Node.js 中,使用 NODE_EXTRA_CA_CERT 环境变量。
但到目前为止,我在 .Net 上找不到类似的东西。有没有像上面这样简单的方法呢?
我正在尝试连接 mongodb 服务器,要连接我必须提供 CA 证书文件和 tls 证书文件。
当我使用以下命令时,我没有问题
$ mongo --host customhost:port DB --authenticationDatabase=DB -u ACCOUNT -p PWD --tls --tlsCAFile /etc/ca-files/new-mongo.ca.crt --tlsCertificateKeyFile /etc/ca-files/new-mongo-client.pem
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试与 mongo 连接(并且仅使用 tls 客户端进行测试)时,出现以下错误:
failed to connect: x509: certificate relies on legacy Common Name field, use SANs or temporarily enable Common Name matching with GODEBUG=x509ignoreCN=0
Run Code Online (Sandbox Code Playgroud)
如果我使用 env 变量一切正常,但我想知道如何修复它而不必使用它。
$ mongo --host customhost:port DB --authenticationDatabase=DB -u ACCOUNT -p PWD --tls --tlsCAFile /etc/ca-files/new-mongo.ca.crt --tlsCertificateKeyFile /etc/ca-files/new-mongo-client.pem
Run Code Online (Sandbox Code Playgroud)
证书:
failed to connect: x509: certificate relies on legacy Common Name field, use …
Run Code Online (Sandbox Code Playgroud) 我按照Jamie的指示建立了自己的 CA ,并在一年前愉快地颁发了我的第一个证书。它们现在已经过期了,但我正在费尽心思地尝试更新它们。
我首先尝试了用于创建证书的代码,为其指定了不同的输出名称,但出现错误。
openssl ca -config intermediate/openssl.cnf -extensions usr_cert -days 375 -notext -md sha256 -in intermediate/csr/blahapi2.csr.pem -out intermediate/certs/blahapi2.cert.pem
Using configuration from intermediate/openssl.cnf
Enter pass phrase for /root/ca/intermediate/private/intermediate.key.pem:
Check that the request matches the signature
Signature ok
ERROR:There is already a certificate for /C=AU/ST=Victoria/O=MD/CN=blahapi.there.com.au/emailAddress=pnunn@example.com
The matching entry has the following details
Type :Valid
Expires on :220501022116Z
Serial Number :1000
File name :unknown
Subject Name :/C=AU/ST=Victoria/O=MD/CN=blahapi.there.com.au/emailAddress=pnunn@example.com
Run Code Online (Sandbox Code Playgroud)
我想还有另一种方法可以使用相同的凭据更新证书,但我在任何地方都找不到它。
线索?
我阅读了很多有关该问题的博客,但没有一个解决方法/解决方案对我有用。
我正在使用如下的curl命令
curl -v https://golang.org/dl/?mode=json
* Trying 142.250.80.113:443...
* Connected to golang.org (142.250.80.113) port 443 (#0)
* schannel: disabled automatic use of client certificate
* ALPN: offers http/1.1
* schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate.
* Closing connection 0
curl: (35) schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate.
Run Code Online (Sandbox Code Playgroud)
我使用以下命令更改了 gitbash (windows) 中的设置以使用 openssl
git config …
ca ×10
ssl ×6
certificate ×2
.net-core ×1
android ×1
blockchain ×1
buildpack ×1
c# ×1
curl ×1
go ×1
handshake ×1
haproxy ×1
hyperledger ×1
java ×1
kubernetes ×1
mongodb ×1
openssl ×1
puppet ×1
renewal ×1
srv ×1