标签: ssl

如何在 Apache 上安装多个中间 CA 证书文件?

我刚买了一个 SSL 证书,这里是我得到的所有证书文件:

Root CA Certificate - xxCARoot.crt
Intermediate CA Certificate - x1.crt
Intermediate CA Certificate - x2.crt
Intermediate CA Certificate - x3.crt
Your EssentialSSL Wildcard Certificate - mydomain.crt
Run Code Online (Sandbox Code Playgroud)

现在在 apache 上安装我的证书:

  1. 我是否需要公开根 CA 证书?
  2. 由于 apache 只允许 1 个SSLCertificateChainFile指令,我是否应该创建一个中间 CA 的包文件?
  3. 如果是这样的话。捆绑文件中证书的顺序是否会像这样颠倒:

    cat x3.crt x2.crt x1.crt > myca.bundle

  4. 如果确实必须添加根证书,它是在捆绑包中排在最后(在 z1 之后)还是在第一个(在 x3 之前)(假设顺序首先是正确的)?

security ssl ssl-certificate apache-2.2

14
推荐指数
1
解决办法
1万
查看次数

Apache Bench:与并发级别直接相关的 SSL 握手失败

我对 ab 进行了一些测试,当我使用超过 155 的并发级别时,我得到以下信息:

SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
Completed 100 requests
Completed 200 requests
Finished 200 requests
Run Code Online (Sandbox Code Playgroud)

请求仍然成功:

Concurrency Level:      200
Time taken for tests:   14.481 seconds  
Complete requests:      200
Failed requests:        0
Run Code Online (Sandbox Code Playgroud)

我已经对其进行了多次测试,并且只有在并发数超过 155 时 SSL 握手才会失败。有人可以向我解释它们是如何直接相关的吗?

ssl benchmark

14
推荐指数
1
解决办法
2万
查看次数

无法使用 Java 1.7 keytool 实用程序生成具有主题备用名称的证书

我在使用keytoolJava 1.7 中的 Java实用程序生成带有主题备用名称的密钥对时遇到问题。我正在尝试按照此处找到的说明进行操作。

我正在使用的命令示例如下(此示例已经过测试):

keytool -keystore c:\temp\keystore.jks -storepass changeme -keypass changeme -alias spam -genkeypair -keysize 2048 -keyalg RSA -dname "CN=spam.example.com, OU=Spam NA, O=Spam Inc, L=Anywhere, S=State, C=US" -ext san=dns:spam,ip:192.168.0.1
Run Code Online (Sandbox Code Playgroud)

然后我使用以下命令生成 CSR:

keytool -keystore c:\temp\keystore.jks -storepass changeme -alias spam -certreq -file c:\temp\spam.csr
Run Code Online (Sandbox Code Playgroud)

这会生成以下证书请求:

-----BEGIN NEW CERTIFICATE REQUEST-----
MIIC5TCCAc0CAQAwcDELMAkGA1UEBhMCVVMxDjAMBgNVBAgTBVN0YXRlMREwDwYDVQQHEwhBbnl3
aGVyZTERMA8GA1UEChMIU3BhbSBJbmMxEDAOBgNVBAsTB1NwYW0gTkExGTAXBgNVBAMTEHNwYW0u
ZXhhbXBsZS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCExCFepag4KH+j8xgR
BjI58hOEiFuSrkgbL5/1steru3+FwDb98R8XO90kKreq/Qt7s/oHbTpFOwotdkGVxA2x44/R5OYr
Qdfk3v32ypJTxms/8tu0Zi9wbH2ruA/h5AhtZ9TV/xLPFSe5eFvN0pUl90p+9zfd0ZCmPQ69k3Lb
JWlw7eIs7sD1yRqlYZL+HJWrsdtYTHjpqEURcZ5jN0H2YeM/eBWZr7eMKrT4xGRwotFj9AfHCiUj
HH4XTJgkrbBtw96pkPYMj/C7TfUE/slCxafEBIkVKlkHLBb9ra3PVfW/QoDGsf2FjtNKOKFxyy7p
A3A5ufdvrCVZ5EKWGrbbAgMBAAGgMDAuBgkqhkiG9w0BCQ4xITAfMB0GA1UdDgQWBBS1GytnaPx2
SAZCyto2BKh7Yw7bgTANBgkqhkiG9w0BAQsFAAOCAQEAIiwY6RIIJkgUQsdK2XiLJDhBnoxfsKjQ
zkWdZjETNxdD9LSng4AZroKjl05NRdjVkew5QM/gNt8s4jcI8OE0EOaZz6ZmlHK39bPtifJ9xlhy
0Q2Q5VAZ6mUB3BU4QF17MLmtEuI+FsG+S7ZKTK+j1Mcn8E+XvS5EbA0NJJkiIhfikr7nUEgB+qUU
CW0vM53FhVPO/piphNUuE60lMlomnDnCHW9xevAolb3rVCvqTdZ2q3G6BNFG07YEL/jaKKIctrnN
W6W4aGb6ppdXXExkx6EIj7hleoSxZHDVjxiIb3U16WFObtwCpTe9ygHcZtZswRkTzwJZLHipCkcQ
GY3lwA==
-----END NEW CERTIFICATE REQUEST-----
Run Code Online (Sandbox Code Playgroud)

当我使用SSL Shopper 上CSR 解码器检查 CSR,它没有显示它包含指定的 …

ssl certificate keytool

14
推荐指数
1
解决办法
3万
查看次数

Outlook 安全警报 - 安全证书上的名称无效或与站点名称不匹配

运行 Exchange 2007 和 IIS6.0 的 SBS 2008

A公司还有另外两家在同一屋檐下运营的公司。为了容纳电子邮件,我们为每位用户设置了 3 个 Exchange 帐户来进行管理。所有用户都使用他们的 CompanyA 帐户登录域。

  • CORP\user user@companyA.com
  • CORP\user-companyb user@companyB.com <-- 仅用于电子邮件
  • CORP\user-companyc user@companyC.com <-- 仅用于电子邮件

电子邮件在内部和通过 OWA 工作正常。为需要访问companyB和companyC邮件的远程用户设置Outlook时存在问题,Outlook弹出证书错误。

SSL 证书 SAN 具有以下 DNS 名称:

  • webmail.companyA.com
  • www.webmail.companyA.com
  • 公司-SBS
  • CORP-SBS.local
  • autdiscover.companyA.com

远程访问 companyC 电子邮件地址的用户告诉我,以前从未发生过这种情况。这始于 CEO 自己更改了 DNS 提供商,在此过程中原始 DNS 设置丢失了。他提到了有关正在创建的 SRV 记录的一些内容,该记录纠正了这个问题,但仅此而已。

寻求有关如何正确解决此问题的指导。

exchange ssl certificate outlook

14
推荐指数
1
解决办法
8万
查看次数

通过 HTTP 标头将 SSL 协议信息传递给后端

在最近发现 Poodle 漏洞后,我们的团队决定从 SSLv3 继续前进。但彻底清除之前,他们要提醒日常用户,他们的浏览器使用过时的SSLv3。于是,我们萌生了这样的想法

  • 从前端 SSL 卸载(我们使用 nginx)检测协议(SSLv3、TLS1 等...)
  • 通过 HTTP 标头将该信息(SSL 协议)传递到 Apache 后端。

然后我们的后端代码将处理该标头并在客户端使用 SSLv3 时发出警告。

我知道 nginx 有功能proxy_set_header。所以这个很简单

proxy_set_header X-HTTPS-Protocol $something;
Run Code Online (Sandbox Code Playgroud)

现在,问题是:显然 nginx 知道客户端使用的协议,但是如何通过 HTTP 标头将该信息传递给后端?

谢谢


正如类似线程Apache redirect user 如果他们使用 SSLv3所指出的那样,这个想法可能变得非常非常糟糕。

原因是 TLS 握手发生在 HTTP 流量通过 TLS 隧道发送之前。当我们的后端检测到 SSL 协议时,客户端可能已经在他的第一个请求中发送了私有数据。对于永久和长期解决方案,我们应该考虑禁用 SSLv3。

ssl nginx poodle

14
推荐指数
1
解决办法
1万
查看次数

取消 SSL 证书后会发生什么?

我们目前正在为一个域使用标准 SSL 证书,例如 example.com,托管在 300 个服务器上。当有人请求时https://example.com,其中一台服务器为请求提供服务。

现在,我们想要将我们的 SSL 证书从标准升级到一个可以保护多个子域的证书。我们的注册商 GoDaddy 通知我们,我们需要取消当前的证书,而将颁发新的证书。

现在,一旦新的发给我们,我们需要大约 10 天的时间来替换 300 台服务器上的旧的。在这 10 天里,如果我们的用户请求https://example.com并且仍然有旧证书的服务器为请求提供服务,那么用户的浏览器上会显示什么?

用户会看到无效证书错误吗?

注意:为了平息所有的反对,更新 300 多台服务器需要 10 天的时间是因为我的服务器部署在私人巴士、火车和飞机上,它们通过离线热点提供请求。他们可能会在几天内不连接互联网的情况下处理多个请求。因此,根据我们上次的更新率,我需要大约 10 天的时间来更新所有这些。

ssl ssl-certificate

14
推荐指数
1
解决办法
1772
查看次数

SSL 如何在端口 110 上?

我针对DROWN 攻击修补了Postfix + Dovecot服务器(我禁用了 sslv2 和 sslv3)。

https://test.drownattack.com

Shows :25
vulnerable to CVE-2016-0703
:110
vulnerable to CVE-2016-0703
...
Run Code Online (Sandbox Code Playgroud)

之后,如果我的命令行连接的OpenSSLs_client使用-ssl2开关那么协议不被支持。我可以将此视为他们的扫描仪误检测吗?

security ssl

14
推荐指数
1
解决办法
2608
查看次数

421 错误的请求

我偶尔会收到以下 421 错误:

错误的请求

客户端需要为此请求建立新连接,因为请求的主机名与用于此连接的服务器名称指示 (SNI) 不匹配。

但是,刷新浏览器会清除错误并且页面正常加载。下一次加载页面不会产生和错误,因此模式看起来很随机。我能看到的唯一模式是当我使用 header("Location: " . $url); 重定向页面时可能会发生这种情况。

我有 Comodo 的 PositiveSSL 多域证书。我的服务器是共享网络托管服务上的 Apache,所以我无权访问配置。

我从一个域加载页面,页面内是指向证书上第二个域的链接。

我读到的有关此错误的所有内容似乎都指向此问题与这是一个多域证书有关。

我想知道的是,网页 (php) 编码方面是否有任何可能导致此问题(并且可以修复)的内容,或者是否是配置错误或服务器错误,并且只有我的托管服务可以修理它。

到目前为止,我的托管服务无法提供任何内容,并要求在接下来发生的确切时间回电,以便他们进行研究。任何帮助将不胜感激,因为我并不过分相信他们可以解决这个问题。

更新 好吧,差不多几年后,决定是时候处理它了。通过删除提供图像和 javascript 的静态域,我能够解决大部分问题。但是,我仍在为某些内容使用第二个域,尤其是 Safari 仍然给我带来问题。

我做了更多的研究,并在这里找到了另一篇讨论它的文章。正是@Kevin 所描述的。文章证实它发生在 Safari 中。因此,根据建议,我着手为每个域获取单独的证书。我在共享主机 (Webhostinghub) 上,发现他们现在提供自动续订的免费 SSL (AutoSSL)。这听起来不错。他们为我设置了 5 个免费证书。到现在为止还挺好。我什至可能会尝试重新启用静态域进行测试。如果一切顺利,我将节省 $ 以启动作为奖励,并让我的 Comodo 证书在 7 月到期。

ssl https apache-2.4

14
推荐指数
1
解决办法
3万
查看次数

IIS 7.0 - SSL 证书 - 续订还是新的?

我的一个 SSL 证书(仅限简单域验证)即将在 Windows 2003 IIS 7.0 服务器上过期。

我从另一家供应商那里得到了更好的报价,最初颁发我证书的人不想谈判更低的价格。

无论如何 - 通过 IIS 中的证书向导,我可以选择“更新”或“卸载”,然后安装新证书。

那么 - 我可以使用“更新”选项来创建证书请求并将其传递给新供应商,还是需要从“新”请求开始?对于新供应商来说,以前的证书是由另一个签名者颁发的,这是否重要?

问题是,我不想因为删除旧证书和创建新 CSR 而停止服务器(至少是安全部分),并等待新证书安装。

或者,是否可以选择在不删除旧证书的情况下准备新的 CSR?

iis ssl certificate renew

13
推荐指数
2
解决办法
2万
查看次数

如何为 SSH 和 SSL (https) 使用相同的密钥

我正在尝试为一个小团队安装开发工具,但我无法正确进行身份验证。

由于我们是一个分布式团队,服务器在互联网上。我想要 SSO+零客户端配置。

所以基本上 git over https+webdav 是不切实际的,因为 git 客户端只能使用基本身份验证但不保存密码,一些 IDE 插件甚至不转发他们 UI 中的密码问题。

那么我必须通过 ssh 使用 git。我安装了 gitosis,它基本上可以使用非对称密钥,好的。我将不得不要求每个开发人员安装他们的密钥,我可以做到,忘记零配置。

然后我希望开发人员访问 https 上的网络工具(wiki、票证等),但这次我必须给他们一个登录名/密码或另一个私钥,因为格式在 SSH 之间不兼容而 SSL 和 OS 上存储它的地方是不一样的。现在,我必须忘记 SSO 吗?

我错了吗?

ssl certificate ssh

13
推荐指数
3
解决办法
3万
查看次数