Articles of openssl

随机SSL握手失败

我在客户端看到一些奇怪的SSL握手失败。 我们有自定义的web js应用程序,只能通过浏览器访问较旧的Webkit(如在Epiphany中find)。 来自客户端的所有请求都来自同一浏览器(版本和types)。 这是症状: a。)客户端浏览器显示SSL握手失败: 如果网页重新加载,错误仍然存​​在 如果浏览器会话被终止并且新会话被加载,则错误消失 b。)在nginx错误,syslog或openssl日志中找不到SSL错误 c)在tcp转储我看到一些奇怪的偶尔SSL握手错误: 列出项目错误的证书状态响应 没有证书 内部错误 d。)我们正在使用让我们encryptionSSL证书 e。)nginx.conf: ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #删除SSLv3,ref:POODLE ssl_prefer_server_ciphers; nginx充当代理,将所有httpstream量redirect到https 网站启用: 服务器{ listen 80; server_name srv_name; return 301 https://$host$request_uri; } 服务器{ listen 443; server_name srv_name; proxy_connect_timeout 600; proxy_send_timeout 600; proxy_read_timeout 600; send_timeout 600; ssl on; ssl_certificate fullchain.pem_path; ssl_certificate_key privkey.pem_path; ssl_session_timeout 5m; ssl_protocols TLSv1 […]

为什么我得到一些随机字母数字和特殊字符时,我使用openssl命令显示一个pem文件?

当我使用openssl命令(openssl x509 -in certificate.pem -text -noout)显示一个pem文件时,我看到在“Authority Information Access”和“Signature Algorithm”标题之间显示了一堆字母数字和特殊字符。 我可以知道为什么这些angular色出现,那些angular色是什么?

客户端SSL证书在Nginx中validation错误

我们有一个根CA(ADCS),我们用它来签署一个客户端证书,我们用它在Nginx中进行客户端证书validation。 这是相关的Nginxconfiguration文件: ssl_client_certificate /etc/nginx/ca.crt; ssl_verify_client optional; ssl_crl /etc/nginx/latest.pem; ssl_verify_depth 1; ca.crt是ROOT CA证书,latest.pem是CRL。 然而,无论何时我尝试使用任何证书(Working和Revoked),都会导致Nginx中的400 Bad Request。 错误: – 客户端SSL证书validation错误:(3:无法获得证书CRL)读取客户端请求标头 信息: – 类似的configuration似乎在Apache中完美的工作,但是对于NGINX,它总是会导致错误。 我试图将ssl_verify_depth更改为1和2,但它导致相同的错误。

哪些中间证书是必需的(Apache)?

我在HPUX / Apache服务器上收到以下错误消息: 证书validation:错误(20):无法获取本地发行者证书 当我查看我的根证书时,我在服务器上包含了DoD根CA-2根证书。 我的站点证书具有DoD根CA-2 – > DoD CA-28 – >证书链。 当我做到以下,我收到一个错误: -bash-4.3$ openssl s_client -connect mysite:443 -showcerts CONNECTED(00000003) depth=0 /C=US/O=US Government/OU=DoD/OU=PKI/OU=USN/CN=mysite verify error:num=20:unable to get local issuer certificate verify return:1 depth=0 /C=US/O=US Government/OU=DoD/OU=PKI/OU=USN/CN=mysite verify error:num=27:certificate not trusted verify return:1 depth=0 /C=US/O=US Government/OU=DoD/OU=PKI/OU=USN/CN=mysite verify error:num=21:unable to verify the first certificate verify return:1 20509:error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 […]

为什么在安装根证书之后,ssl证书可能无法validation?

我正在为Intranet构build一个openssl证书颁发机构。 我有root.crt ,由root签名的intermediate.crt和由中间者签名的server.crt 。 我可以根据根来validation中间件 #> openssl verify -CAfile root.crt intermediate.crt && echo ok ok 在Ubuntu上,我可以安装根证书 #> mv root.crt /usr/local/share/ca-certificates/my-root.crt #> update-ca-certificates Updating certificates in /etc/ssl/certs… 0 added, 0 removed; done. Running hooks in /etc/ca-certificates/update.d… done. done. 但是,如果我试图validation服务器对中间,它失败 #> openssl verify -CAfile intermediate.crt server.crt && echo ok error 2 at 1 depth lookup:unable to get […]

Apache正向代理的SSL客户端身份validation

我试图validation一个特定的用户,我已经颁发了一个证书来使用所提到的证书来validation我的Web代理。 我想我已经尝试了几乎20种以下选项的组合,而且没有任何东西可以用于我。 在Apache文档页面中,ssl客户端authentication的所有示例通常基于<Location>指令。 我的情况是从来没有提到,在这一点上,我想知道是否有可能: <VirtualHost *:8080> ProxyRequests On SSLCACertificateFile /etc/apache2/myca/ca.cer <Proxy "*"> SSLVerifyClient Require SSLVerifyDepth 10 SSLOptions +FakeBasicAuth +StrictRequire SSLRequire ( %{SSL_CIPHER} !~ m/^(EXP|NULL)-/ \ and %{SSL_CLIENT_S_DN_O} eq "MyComp" \ and %{SSL_CLIENT_S_DN_OU} eq "IT" \ and %{SSL_CLIENT_S_DN_Email} eq "[email protected]") </Proxy> ErrorLog ${APACHE_LOG_DIR}/proxy_error.log CustomLog ${APACHE_LOG_DIR}/proxy_access.log combined </VirtualHost> 通过上面的configuration代理工作,但不要求authentication,每个人都可以使用它。 我试图把SSLVerifyClient Require放在Proxy指令之外,没有任何改变 我已经删除了SSLRequire ,没有任何改变 我已经删除了SSLOptions ,没有任何改变 我已经在Proxy指令中添加了Require ssl-verify-client […]

我的服务器与TLS 1.2兼容?

我只需要知道这个服务器是否与TLS 1.2兼容,通过这个消息: remote:~ Xserver$ openssl s_client -connect X:443 -tls1_2 CONNECTED(00000003) 140735304528736:error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number:s3_pkt.c:362: — no peer certificate available — No client certificate CA names sent — SSL handshake has read 5 bytes and written 7 bytes — New, (NONE), Cipher is (NONE) Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated […]

openssl – 解密文件与PCKS#7签名不工作在Ubuntu上

我有一个脚本,通过控制台运行这个命令: openssl smime -decrypt -verify -inform DER -in "/var/www/LCO/LCO_2016-12-06_2.XML" -noverify -out "/var/www/LCO/US_LCO_2016-12-06_2.XML" 我们一直在CentOS上使用它,但是现在我正在重构在Ubuntu 14.04 LTS中使用它的相关代码。我得到这个: Error reading S/MIME message 140123614328480:error:07069041:memory buffer routines:BUF_MEM_grow_clean:malloc failure:buffer.c:169: 140123614328480:error:0D06B041:asn1 encoding routines:ASN1_D2I_READ_BIO:malloc failure:a_d2i_fp.c:255: XML是一个441MB的文件,我有2GB的RAM。 我必须在1GB内存的CentOS虚拟机内部完成。

debuggingcurlFTPS连接,使用客户端身份validation证书(OpenSSL)

(从StackOverflow移动)我被要求使用客户端身份validation证书来设置FTPS连接。 我是客户端,连接到服务器。 我在Windows 7工作站上,在防火墙后面,尽pipe这个连接最终将在专用的CentOS虚拟机上使用。 其他一些信息: 仅限TLS 1.2 仅被动模式 我的WAN IP被列入白名单 目前,我正在连接到testingurl 没有出站防火墙(只有入站规则) 密钥应以PEM格式发送 我从Comodo购买了证书,并用IE10生成了证书。 我使用私钥和扩展属性以.pfx格式从IE中导出了完整的证书。 我写了一个batch file,使用OpenSSL从.pfx中提取必要的部分: ::Extract the private key from the PFX openssl pkcs12 -in comodo.pfx -nocerts -out encrypted.key ::Extract unencrypted private key openssl rsa -in encrypted.key -out decrypted.key ::Extract the public cert in Base64 from the PFX openssl pkcs12 -in comodo.pfx -clcerts […]

无法在Windows IIS上安装Apple证书

我一直在努力几个小时,如何在IIS上安装一个有效的证书没有成功。 我想实现的是使用名为dotnet- passbook的github项目,通过自制项目生成.pkpass文件(存折文件)。 我遵循github网站上描述的每一个步骤,作者的链接之一解释了如何使用IIS生成证书,但是一旦我意识到它们,我使用“ 完成证书请求 ”选项添加Apple生成的文件,它将消失从IIS“服务器证书”当我重新加载IIS屏幕。 我search了这个问题( 链接 ),人们说,当我的证书不包含私钥时会发生这种情况。 我明白这一点,但我不知道如何解决这个问题。 我也search了一个替代的解决scheme ,我使用Win32 OpenSSL生成证书,如作者解释,但是当我要将最终文件添加到IIS时,会出现一个错误,称为“ 证书不能用作SSL服务器证书 ”。 所以我search了这个错误,但search结果不多,其中我还没有find任何解决scheme。 所以,基本上这些是我尝试过的。 我也尝试了一些其他的小东西,比如像使用“ certutil ”命令(entrust.net/knowledge-base/technote.cfm?tn=7905),但没有任何东西。 我被困住了,我不知道还有什么要做的。 如果有人知道如何解决这将是很棒的。 谢谢你的回答。