Questions tagged «openssl»

OpenSSL:用于SSL和TLS的开源工具包

2
是否可以在openssl的s_client命令上设置超时?
我有一个脚本,该脚本使用openssl的s_client命令为大量主机提取证书。这些主机中的某些主机将不可避免地由于防火墙而无法访问。是否可以将s_client超时设置为比默认值短得多的时间?我在手册页/帮助文件中看不到任何内容。 该命令或某种包装器命令将在X秒后自动杀死openssl -s_client。 如果可能的话,我宁愿不对主机/端口进行可用性的预测试。


6
使用OpenSSL 1.0.2的Debian Jessie Nginx使用ALPN而不是NPN
我在服务器上运行debian jessie,最近升级到了具有http / 2支持(nginx 1.10)的新Nginx Web服务器。与今天一样,它的工作原理非常好,并且Web服务器正在通过http2协议交付内容。 我已经读到,Chrome正在放弃NPN支持,并且仅允许在2016年5月15日之后使用ALPN。ALPN是扩展程序,需要安装openssl 1.0.2,但在debian jessie上仅是openssl 1.0.1(在debian backports和另一个存储库上,此debian没有openssl 1.0.2版本)。 有一个问题-我已经从SPDY升级到http2,几天之内,我将不得不关闭http2并且不能使用SPDY,因为此版本的nignx只有http2。我还读过,该版本的debian将使用openssl 1.0.1,只有debian Stretch将具有openssl 1.0.2。但是要发布日期将近一年,Chrome将很快放弃支持,因此我不想失去http2协议的好处。 有什么解决方案,如何在此系统上安装openssl 1.0.2,而无需构建自己的构建(不良维护)或等待反向端口存储库拥有它?我也不想在我的系统上使用两个版本的openssl,如果其中一个必须手动链接和维护。 谢谢你的帮助。

2
卷曲:无法获取本地发行者证书。如何调试?
我有一个奇怪的问题。将我的LAMP开发机(Debian)更新为PHP7。之后,我无法再通过Curl连接到特定的TLS加密API。 有问题的SSL证书由thawte签名。 curl https://example.com 给我 curl: (60) SSL certificate problem: unable to get local issuer certificate 而 curl https://thawte.com 当然,这也是Thawte作品签名的。 我可以在其他计算机上通过HTTPS访问API站点,例如通过curl和浏览器在我的桌面上。因此该证书绝对有效。SSL Labs评级为A。 从我的开发机到其他SSL加密站点的任何其他Curl请求都可以工作。我的根证书是最新的。为了验证,我跑了update-ca-certificates。我什至将http://curl.haxx.se/ca/cacert.pem下载到/ etc / ssl / certs并运行c_rehash。 还是一样的错误。 有什么方法可以调试验证过程并查看正在寻找但找不到的本地颁发者证书curl(或openssl),即文件名? 更新 curl -vs https://example.com 告诉我(IP +域名已匿名) * Hostname was NOT found in DNS cache * Trying 192.0.2.1... * Connected to …

1
OCSP响应者不存在?
我正在尝试设置OCSP验证例程,因此想先适应环境。在例如OpenSSL上找到了出色的教程:针对OCSP手动验证证书。 出现多个问题,请耐心等待。 自该教程以来,已经进行了一些更改,但是我认为要点是: 1)截取您要验证的证书,例如 openssl s_client -connect wikipedia.org:443 2>&1 < /dev/null | sed -n '/-----BEGIN/,/-----END/p' > wikipedia.pem 2)建立证书链,例如 openssl s_client -connect wikipedia.org:443 -showcerts 2>&1 < /dev/null > chain.pem 然后进行适当的编辑。我发现上面没有提供自签名CA证书GlobalSignRootCA,因此在其中添加了证书。 3)确定ocsp URI,例如 openssl x509 -noout -ocsp_uri -in wikipedia.pem 哪个返回 http://ocsp2.globalsign.com/gsorganizationvalsha2g2 4)调用openssl ocsp客户端,例如 openssl ocsp -issuer chain.pem -cert wikipedia.pem -url http://ocsp2.globalsign.com/gsorganizationvalsha2g2 哪个返回 …
13 openssl  x509  ocsp 

2
OpenSSL返回与Chrome显示的SSL证书不同的SSL证书
使用OpenSSL通过以下命令查询Sparkfun的CDN URL时: openssl s_client -showcerts -connect dlnmh9ip6v2uc.cloudfront.net:443 证书中返回的通用名称为*.sparkfun.com,无法验证,但是如果您在Chrome中加载主机,则显示的通用名称为*.cloudfront.net 这里发生了什么? 这引起了一个问题,因为我的环境是通过Squid SSL_Bump代理SSL,该环境生成了由我的本地信任CA为该域签名的证书。这适用于除上述以外的所有域,因为CN不匹配,因为使用OpenSSL生成了新证书。 编辑 -我已经验证了在远程数据中心的服务器上的OpenSSL也会发生同样的情况,该服务器可以直接连接到Internet,而无需代理或筛选。 编辑 -问题是由于SNI被接受,但要填写有关为何导致Squid和SSL_Bump问题的信息: 该项目将不支持将SSL服务器名称指示(SNI)信息转发到原始服务器,并且使这种支持更加困难。但是,SNI转发有其自身的严峻挑战(超出了本文档的范围),远远超过了增加的转发难度。 摘自:http : //wiki.squid-cache.org/Features/BumpSslServerFirst

3
如何手动创建Puppet CA和证书?
我想知道如何手动(使用openssl代替puppet ca命令)创建可供Puppet使用的CA?目标是对此类CA进行脚本创建,以将其部署到多个puppetmasters上,而不是通过puppet cert命令在其上创建证书。 关于如何做的任何想法?我只能找到类似的内容:https : //wiki.mozilla.org/ReleaseEngineering/PuppetAgain/HowTo/Set_up_a_standalone_puppetmaster,但是它无法正常工作-在创建CA和客户端证书并将它们应用于puppetmaster之后,它抱怨: Feb 16 09:35:20 test puppet-master[81728]: Could not prepare for execution: The certificate retrieved from the master does not match the agent's private key. Feb 16 09:35:20 test puppet-master[81728]: Certificate fingerprint: 4F:08:AE:01:B9:14:AC:A4:EA:A7:92:D7:02:E9:34:39:1C:5F:0D:93:A0:85:1C:CF:68:E4:52:B8:25:D1:11:64 Feb 16 09:35:20 test puppet-master[81728]: To fix this, remove the certificate from both …


10
加载共享库时出错:libcrypto.so.1.1
当我运行“ openssl”时,出现如下错误: openssl:加载共享库时出错:libcrypto.so.1.1:无法打开共享库文件:没有这样的文件或目录” 根据本文尝试更新OpenSSL之后发生了这种情况 有没有什么办法解决这一问题? 操作系统:CentOS 6.8 Web服务器:nginx / 1.10.2 更新#1: [root@host ~]# yum info openssl Installed Packages Name : openssl Arch : x86_64 Version : 1.0.1e Release : 48.el6_8.3 Size : 4.0 M Repo : installed From repo : system-updates Summary : A general purpose cryptography library with TLS …
13 openssl 

3
如何在Apache中禁用TLS 1.1和1.2?
我有一台运行Apache 2.2.22和mod_ssl和OpenSSL v1.0.1的Ubuntu 12.04.2 LTS服务器。 在我的vhosts配置中(其中所有其他行为均与我期望的一样),我有SSLProtocol一行-all +SSLv3。 使用该配置,启用了TLS 1.1和1.2并可以正常工作-这与我的直觉相反,因为我希望在该配置下仅启用S​​SLv3。 我可以通过启用/禁用TLSv1 -/+TSLv1,它可以按预期工作。但是+/-TLSv1.1,+/-TLSv1.2它们也不是有效的配置选项-所以我不能那样禁用它们。 至于我为什么要这样做-我正在处理一个第三方应用程序(我无法控制),该应用程序在启用TLS的服务器上有一些错误行为,因此我需要完全禁用它以继续前进。

1
如何将Chrome的CRL集(或某些主CRL列表)用作CRL文件?
我正在寻找CRL主清单。我发现的最接近的东西是Chromium项目的CRLSets。我使用crlset-tools来获取crlset(crlset fetch > crl-set),然后转储序列号(crlset dump crl-set),所以我看到了以下内容: f24196ae94078667348f02e8e37458a3a6e6aad1e0b0dc610118cce721427bfc 03fb3b4d35074e 03fbf94a0e6c39 04097214d6c97c 0442c6b3face55 .... 我希望能够将包含所有不良序列的主列表的CRL文件传递给openssl或curl(使用openssl)。例如,我不仅希望传递verisign的crl,还希望传递所有内容。我以为我可以使用crlset做到这一点,但我认为格式不兼容。我试过了openssl crl -inform DER -text -in crl-set但是它说: unable to load CRL 5532:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c: 1319: 5532:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:ta sn_dec.c:381:Type=X509_CRL 如果有人对我要说的事情有任何想法或执行此操作的任何创造性方法,请告诉我。谢谢

5
CentOS openLDAP证书信任问题
# LDAPTLS_CACERTDIR=/etc/ssl/certs/ ldapwhoami -x -ZZ -H ldaps://ldap.domain.tld ldap_start_tls: Can't contact LDAP server (-1) additional info: TLS error -8172:Peer's certificate issuer has been marked as not trusted by the user. # openssl s_client -connect ldap.domain.tld:636 -CApath /etc/ssl/certs <... successful tls negotiation stuff ...> Compression: 1 (zlib compression) Start Time: 1349994779 Timeout …
12 centos  openldap  openssl  tls 

1
重新颁发自签名根CA,而不会使它签名的证书无效
我为公司的一些内部服务创建了一个自签名的根证书颁发机构,该服务由我自己配置​​(主要通过HTTPS提供)。然后,我为此证书创建了证书,并与此CA签署了证书。 现在,我想向根CA添加一个x509扩展名(CRL分发点),而不会使从该CA颁发的现有服务器证书无效。这可能吗? 我的直觉是“是”,因为据我了解,对证书身份的“完全授权” ,访问相应的私钥是必要和充分的。也就是说,除非在生成证书时(可能)将某种随机数与公钥一起合并到证书中。 我对SSL证书管理仍然相当陌生,但是我(我认为)了解标准信任链的基础。我对其他PKI加密的基本用法也很满意:我管理SSH密钥,并使用GPG进行签名和加密。我只是学习过计算机科学,尽管我只是密码学的自学入门者。 我从未为原始IIRC制作过CSR(我认为这是的直接输出openssl req -new -x509)。当然,我仍然拥有原始CA的私钥,并且使用它,我能够将原始证书“反向”为证书签名请求: openssl x509 -x509toreq -in MyCA.pem -out MyCA.csr -signkey private/MyCA.key 我希望这可以有效地“提取”上述随机数,并允许我重新创建证书,但是这次使用一个crlDistributionPoints字段,因此,与原始CA签署的所有证书仍将针对该新CA进行验证,但例外客户端将从字段中指定的HTTP URL检索我的CRL文件(当前为空)。 所以我做了一个扩展配置文件ext.conf: [ cert_ext ] subjectKeyIdentifier=hash crlDistributionPoints=URI:http://security.mycompany.co.za/root.crl 我从CSR生成了根CA的新版本: openssl x509 -extfile ./ext.conf -extensions cert_ext -req -signkey private/MyCA.key -in MyCA.csr -out MyNewCA.pem 现在,当我使用 openssl x509 -text -in MyNewCA.pem | less 我可以看到CRL扩展部分: X509v3 …

1
“ tlsv1警报未知ca”是什么意思?
我正在尝试使用客户端证书进行卷曲请求,如下所示: curl -E my.pem https://some.site 我收到以下错误消息: curl: (35) error:14094418:SSL routines:SSL3_READ_BYTES:tlsv1 alert unknown ca 这是什么意思? 该投诉是来自我所连接的服务器还是我的curl客户端? (如何确定)在这种情况下,ca是什么? 如何使ca成为已知的?

1
OpenSSL:genrsa与genpkey?
为什么OpenSSL提供两个重叠太多的实用程序 genpkey: OpenSSL> genpkey - Usage: genpkey [options] where options may be -out file output file -outform X output format (DER or PEM) -pass arg output file pass phrase source -<cipher> use cipher <cipher> to encrypt the key -engine e use engine e, possibly a hardware device. -paramfile file parameters …
12 openssl 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.