概要: 有没有办法强制PHP中的内置SoapClient类通过HTTPS连接到服务器与一个无效的证书? 我为什么要这样做? 我已经在没有DNS入口或证书的服务器上部署了一个新的应用程序。 我想在设置DNS条目和修复证书之前尝试使用SoapClient 进行连接,最合理的方法似乎是在testing期间让客户端忽略证书。 我不知道这是一个巨大的安全风险吗? 这只是为了testing。 当服务投入生产时,会有一个有效的证书到位,客户端将被强制validation。
我在一个分布式应用程序的服务器上工作,该应用程序具有浏览器客户端,并且还参与了与第三方的服务器到服务器的通信。 我的服务器有一个CA签名证书,让我的客户端使用HTTP / S和XMPP(安全)使用TLS(SSL)通信进行连接。 这一切工作正常。 现在我需要通过HTTPS / SSL使用JAX-WS安全地连接到第三方服务器。 在这个通信中,我的服务器充当JAX-WS interation中的客户端,并且我有一个由第三方签名的客户端证书。 我尝试通过标准系统configuration( -Djavax.net.ssl.keyStore=xyz )添加一个新的密钥库,但是我的其他组件明显受此影响。 虽然我的其他组件正在使用专用参数进行SSLconfiguration( my.xmpp.keystore=xxx, my.xmpp.truststore=xxy, … ),但似乎最终使用了全局SSLContext 。 (configuration命名空间my.xmpp.似乎表示分离,但事实并非如此) 我也尝试将我的客户端证书添加到我的原始密钥库中,但是 – 我的其他组件似乎也不喜欢它。 我认为我剩下的唯一select是以编程方式挂接到JAX-WS HTTPSconfiguration,为客户端JAX-WS交互设置密钥库和信任库。 任何想法/指示如何做到这一点? 我find的所有信息都使用javax.net.ssl.keyStore方法,或者是设置全局SSLContext ,我猜 – 最终会在相同的confilc。 最接近我得到的东西有用的是这个旧的错误报告,请求我需要的function: 添加支持将SSLContext传递到JAX-WS客户端运行时 任何需要?
我遵循https安装的官方文档位于: https : //help.ubuntu.com/6.06/ubuntu/serverguide/C/httpd.html#https-configuration 我必须从中删除+CompatEnvVars SSLOptions +FakeBasicAuth +ExportCertData +CompatEnvVars +StrictRequire 因为它说这是一个无效的命令或什么的。 所以删除了,并按照说明指甲它得到的错误: SSL received a record that exceeded the maximum permissible length. (Error code: ssl_error_rx_record_too_long) 我是SSL的新手,有什么问题的意见?
我无法设置SSL。 我谷歌search,我find了一些解决scheme,但没有一个为我工作。 我需要一些帮助,请… 这是我尝试重新启动nginx时得到的错误: root@s17925268:~# service nginx restart Restarting nginx: nginx: [emerg] SSL_CTX_use_PrivateKey_file("/etc/nginx/conf.d/ssl/ssl.key") failed (SSL: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch) nginx: configuration file /etc/nginx/nginx.conf test failed 我的证书来自StartSSL,有效期为1年。 以下是我testing的内容: 证书和私钥没有尾随空格。 我没有使用默认的server.key文件。 我检查了nginx.conf,指令指向正确的私钥和证书。 我也检查了模数,我得到了一个不同的密钥和证书模数。 感谢您的帮助。 🙂
在改进我们正在开发的iOS应用程序的安全性的同时,我们发现需要对服务器的SSL证书进行PIN(全部或部分)以防止中间人(man-in-the-middle)攻击。 即使有不同的方法来做到这一点,当你search这个我只find钉住整个证书的例子。 这种做法会带来一个问题:一旦证书更新,您的应用程序将无法再连接。 如果您select固定公钥而不是整个证书,您将会发现自己(我相信)处于同样安全的状况,同时在服务器中的证书更新更有弹性。 但是,你如何做到这一点?
我坚持一个问题,并试图debugging它。 我们购买了Verisign证书。 当我们使用: openssl> s_client -connect myweb.com:443 -showcerts SSL握手从来没有完成,最后我们看到错误: Verify return code: 19 (self signed certificate in certificate chain) 它显示3 —BEGIN/END CERTIFICATE—标签。 链中的两个证书是Verisign签名的,但一个是自签名的。 如果有人能解释这个自签名证书是如何出现在CA签名证书中的? 这是错误19 (self signed certificate in certificate chain)良性? 如果不是,可能是什么原因造成的? 客户端在可信存储区中拥有CA证书,但自签名证书没有任何内容。 你认为这可能导致问题? 如果是,我如何: 如何摆脱链式证书中的自签名证书,只留下2个CA签名的证书链? 在客户端可信存储上添加这个自签名证书?
我正尝试使用php和curl库下载安全(使用https)网页的内容。 但是,读取失败,我得到错误60:“SSL证书问题,请validationCA证书是否正常。” 也“详细信息:SSL3_GET_SERVER_CERTIFICATE:证书validation失败” 所以…漂亮的自我解释错误消息。 我的问题是:我如何发送一个SSL证书(正确的),并得到这个页面来validation它,让我在? 另外,这里是我的选项数组,如果你想知道: $options = array( CURLOPT_RETURNTRANSFER => true, // return web page CURLOPT_HEADER => false, // don't return headers CURLOPT_FOLLOWLOCATION => true, // follow redirects CURLOPT_ENCODING => "", // handle all encodings CURLOPT_USERAGENT => "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:xxx) Gecko/20041107 Firefox/xx", // who am i CURLOPT_AUTOREFERER => true, […]
使用JVM标志 -Djavax.net.debug=ssl 正在产生巨大的日志logging,服务器上每个SSL事件的细节。 有反正只有它logging错误? 或者可能有一些这些标志的更好的子集产生更整洁的输出 all turn on all debugging ssl turn on ssl debugging The following can be used with ssl: record enable per-record tracing handshake print each handshake message keygen print key generation data session print session activity defaultctx print default SSL initialization sslctx print SSLContext tracing sessioncache print session cache tracing keymanager […]
假设SSL证书的主题备用名称(SAN)属性包含两个DNS名称 domain.tld host.domain.tld 但通用名称(CN)只能设置为以下两种之一: CN=domain.tld 。 这个设置是否具有特殊的含义,或者在设置两个CN时有什么优势? 如果正在请求另一个host.domain.tld ,服务器端会发生什么? 编辑: 就像最近Eugene的回答所了解到的那样,行为因实现而有所不同,我想要更具体一些: OpenSSL 0.9.8b +如何处理给定的场景?
“OpenSSL 1.01 – 受影响的一个生产版本 – 自2012年3月12日起出货” 这是否意味着我们在一个月前订购的Windows 2012 R2服务器(现在在IIS中运行HTTPS站点)容易受到Heartbleed攻击? 我已经阅读了一篇文章,build议使用http://filippo.io/Heartbleed/来检查你的服务器是否易受攻击,但是现在可能需要大量的点击,因为它没有响应。