标签: ssl

为什么我的通配符 SSL 证书会导致二级子域出现域不匹配错误?

我有一台服务器https://www.groups.example.com- 在 FireFox 中,我收到“ This Connection is Untrusted”消息和“技术细节”说

www.groups.example.com uses an invalid security certificate. 
The certificate is only valid for the following names: 
*.example.com, example.com (Error code: ssl_error_bad_cert_domain)
Run Code Online (Sandbox Code Playgroud)

为了解决这个问题,我还需要提供哪些其他信息?刚刚获得安装确认,但我 99% 确定它是 Linux 并使用 VHOSTS。确认后将更新问题。

www.groups.example.com 是否被视为具有 2 个级别的子域?

发行人是 DigiCert

ssl https ssl-certificate

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

如何安装中间证书(在 AWS 中)?

我已经在 Amazon Load Balancer 上安装了私钥(pem 编码)和公钥证书(pem 编码)。但是,当我使用site test tool检查 SSL 时,出现以下错误:

检查 SSL 证书时出错!!无法获取证书的本地颁发者。找不到本地查找证书的颁发者。通常这表示并非所有中间证书都安装在服务器上。

我使用本教程中的这些命令将 crt 文件转换为 pem :

openssl x509 -in input.crt -out input.der -outform DER
openssl x509 -in input.der -inform DER -out output.pem -outform PEM
Run Code Online (Sandbox Code Playgroud)

在设置 Amazon Load Balancer 期间,我遗漏的唯一选项是证书链。(pem 编码)但是,这是可选的。这可能是我的问题的原因吗?如果是这样; 如何创建证书链?

更新

如果您向 VeriSign 提出请求,他们会给您一个证书链。该链包括公共crt、中间crt和根crt。在将公共 crt 添加到您的 Amazon Load Balancer 的认证链框之前,请确保从您的证书链(这是最顶部的证书)中删除公共 crt。

如果您从 Android 应用程序发出 HTTPS 请求,则上述说明可能不适用于较旧的 Android 操作系统,例如 2.1 和 2.2。要使其在较旧的 Android 操作系统上运行:

  • 到这里
  • 单击“retail ssl”选项卡,然后单击“secure site”>“CA Bundle for Apache Server”
  • 将这些中间证书复制并粘贴到证书链框中。以防万一,如果您还没有找到, …

ssl load-balancing amazon-ec2

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

无法添加 SSL 侦听器,找不到密钥的服务器证书

我正在尝试使用从 GoDaddy 购买的证书在我的负载均衡器上设置 SSL。

尝试在控制台中上传证书时出现错误

无法创建负载均衡器:找不到密钥的服务器证书:arn:aws:iam::************:server-certificate/mycert

在添加 SSL 证书之前,我从未遇到过此错误。我不确定为什么iam在这里使用。

在谷歌搜索之后,我能够iam使用 aws cli上传我的证书(同样,不知道为什么我必须这样做)。

现在,在修改侦听器时,我可以将上传的证书视为现有的 SSL 证书。但是,当我尝试将更改保存到负载均衡器时,我遇到了同样的错误。我已验证证书存在:

$ aws iam list-server-certificates
{
    "ServerCertificateMetadataList": [
        {
            "ServerCertificateId": "*********************", 
            "ServerCertificateName": "mycert", 
            "Expiration": "2018-11-19T18:47:38Z", 
            "Path": "/", 
            "Arn": "arn:aws:iam::************:server-certificate/mycert", 
            "UploadDate": "2015-11-19T19:23:32Z"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

(我已经验证了这里混淆的账号和错误中的一样)

从这里我被困住了。为什么我无法将我的证书应用于此负载均衡器?


编辑 2015 年 11 月 19 日星期四 11:47:18 PST

等待一段时间并注销并登录后,我能够使用我的 SSL 证书更新侦听器。但是,它似乎无法正常工作。尝试通过HTTPS请求加载我的域时超时。好像无法加载证书

$ echo | openssl s_client -connect www.example.com:443 2>/dev/null | openssl x509 -noout -subject
unable to load certificate
69457:error:0906D06C:PEM routines:PEM_read_bio:no start line:/SourceCache/OpenSSL098/OpenSSL098-52.30.1/src/crypto/pem/pem_lib.c:648:Expecting: TRUSTED …
Run Code Online (Sandbox Code Playgroud)

ssl amazon-web-services

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

多个 ssl 证书具有一个 ip 和相同的端口但不同的主机标头 (IIS 8)

我有一个 IIS 8(win 2012 r2)服务器,我想将同一个网站绑定到 2 个不同的域和 2 个不同的证书。

我不能使用通配符,因为域是不同的 FQDN。

如果我为 https 和端口 443 添加 2 个绑定,我将无法选择 2 个不同的证书(当我更改一个绑定时,它会更改另一个)。

有没有办法在不使用不同端口或拆分到 2 个不同网站的情况下解决这个问题?

谢谢!

ssl ssl-certificate bindings iis-8

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

http 工作时 https 超时

我已经为我的域设置了 SSL,它从 Apache 的角度工作。

问题是通过 HTTPS 访问我的域有时会导致超时。当它不起作用时,通过 HTTP 访问我的网站需要一些时间,但它永远不会超时。

为什么 HTTPS 会发生这种情况,有没有办法控制 HTTPS 的超时时间?

我的配置:CentOS 5 上的 Apache 2.2.11

NameVirtualHost *:443
<VirtualHost *:443>
    SuexecUserGroup foo
    DocumentRoot /home/mydomain/www/
    ServerName example.com

    SSLEngine on
    SSLProtocol -all +TLSv1 +SSLv3
    SSLCipherSuite HIGH:MEDIUM:!aNULL:+SHA1:+MD5:+HIGH:+MEDIUM
    SSLCertificateFile /path/example.com.com.crt
    SSLCertificateKeyFile /path/example.com.key
    SSLVerifyClient none
    SSLProxyVerify none
    SSLVerifyDepth 0
    SSLProxyVerifyDepth 0
    SSLProxyEngine off
    SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
    <Directory "/home/mydomain/www">
            SSLRequireSSL
            AllowOverride all
            Options +FollowSymLinks +ExecCGI -Indexes
            AddHandler php5-fastcgi .php
            Action php5-fastcgi /cgi-bin/a.fcgi
            Order allow,deny
            Allow from all
    </Directory>
    <Directory …
Run Code Online (Sandbox Code Playgroud)

ssl https timeout apache-2.2

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

如何查看 Web 服务器当前使用的 SSL 版本?

我相信我已经在我的 Web 服务器 (Windows Server 2003) 上禁用了 SSL 2.0。为确保它现在使用的是 SSL 3.0,我该如何检查?

在 Web 服务器上禁用 2.0 和启用 3.0 的正确方法是什么?

windows-server-2003 ssl encryption web-server

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

仅当浏览器支持 SNI 时才重定向到 SSL

我有带有 mod_ssl 的 Apache 2.2 和一堆 HTTPS 站点,位于与 VirtualHosting 相同的 IP/端口上,因此客户端必须支持 SNI 才能连接到这些虚拟主机。

我想通过以下方式配置我的服务器:

当用户输入 www.dummysite.com 并且他的浏览器支持SNI(服务器名称指示)时,任何 HTTP 请求都会被重定向到https://发送 HSTS 标头的位置。但如果浏览器不支持SNI,则请求由 HTTP 提供。

上面的规则,按原样陈述,实际上是那些仍然运行旧浏览器的人的后备规则,因为 Mozilla 和 Chrome 没有这个问题,只是为了避免让这些用户离开网站。

我想在 Apache 配置级别执行此重定向,可能在用户代理上使用过滤器。我不想触摸正在运行的应用程序,除非确保不存在直接的 http:// 引用(否则它们意味着安全警告)

[编辑](在编辑问题时我忘记问题):要重定向的启用 SNI 的用户代理列表是什么?

ssl virtualhost sni apache-2.2

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

糟糕,找不到“server.host.name:0”的 RSA 或 DSA 服务器证书?

我正在使用 Apache 2.2.22 设置一个新的 Web 服务器,该服务器在 Ubuntu 12.4 上托管十几个虚拟主机,每个站点一个配置文件。我一次创建了所有配置文件,然后运行a2ensite *以一次启用它们。当我重新加载配置时,它失败了,重新启动 apache 后,我在我的 error.log 中发现了以下错误消息:

糟糕,找不到“server.host.name:0”的 RSA 或 DSA 服务器证书?!

此错误消息的大多数结果都是多年未解决的问题或已修复的错误https://issues.apache.org/bugzilla/show_bug.cgi?id=31709

ssl apache-2.2

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

“服务器应该是 SSL-aware 但没有配置证书 [提示:SSLCertificateFile]”错误

最近将 Apache2 升级到 2.2.31 版后,我发现 SSL VirtualHost 设置中有一个奇怪的行为。

即使客户端Server Name Identification知道,我托管的一些网站也会显示默认主机的证书,而这仅发生在其中一些网站上。这显示为常见的 Firefox/Chrome 的护照警告,如果您正在浏览您的家庭银行,您可能会被骗,但事实并非如此。

需要明确的是,如果服务器host.hostingdomain.org有自己的 SSL,则尝试访问 的https://www.hostedsite.org报告证书host.hostingdomain.org,但少数https://www.hostedsite.me报告了正确的证书。

所有站点都托管在相同的 IP 地址上,在端口 443 上。事实上,VirtualHosting 在 HTTP 端工作并自动将支持 SNI 的客户端重定向到 SSL,因此它向后兼容不支持 SNI 的客户端。

检查违规 VirtualHosts 的错误日志显示以下文本

[Tue Dec 25 16:02:45 2012] [error] Server should be SSL-aware but has no certificate configured [Hint: SSLCertificateFile] (/path/to/www.site.org.conf:20)
Run Code Online (Sandbox Code Playgroud)

事实上,虚拟主机已正确配置了 SSLCertificateFile。

问题很明显:如何解决这个问题?

ssl virtualhost sni apache-2.2

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

代理:错误 AH00898:与远程服务器的 SSL 握手期间出错

我有一台服务器,它充当网络中 cPanel 邮件服务器的前端。前端服务器上的 apache 代理运行了 152 天没有故障然后突然我现在在使用它访问邮件服务器的 web 邮件客户端时出现 500/502 错误。

前端服务器使用签名 SSL 证书,cPanel 服务器使用自签名证书。这是前端服务器第一次开始发生时的错误日志输出:

[Tue Sep 10 18:22:52.959291 2013] [proxy:error] [pid 19531] (502)Unknown error 502: [client 173.xx.xx.xx:9558] AH01084: pass request body failed to 184.xx.xx.xx:2096 (184.xx.xx.xx), referer: https://domain.com:2096/cpsess12385596/3rdparty/roundcube/?_task=mail&_refresh=1&_mbox=INBOX

[Tue Sep 10 18:22:52.959469 2013] [proxy:error] [pid 19531] [client 173.xx.xx.xx:9558] AH00898: Error during SSL Handshake with remote server returned by /cpsess12385596/3rdparty/roundcube/, referer: https://domain.com:2096/cpsess12385596/3rdparty/roundcube/?_task=mail&_refresh=1&_mbox=INBOX

前端服务器是运行Apache/2.4.6 (Amazon) My VirtualHost的 EC2 实例,此服务器上的代理设置如下:

< VirtualHost *:2096> ServerName domain.com

SSLEngine on
SSLProxyEngine on
SSLProxyVerify none
SSLProxyCheckPeerCN …
Run Code Online (Sandbox Code Playgroud)

ssl reverse-proxy amazon-ec2 apache-2.2

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