我有一台服务器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
我已经在 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 操作系统上运行:
我正在尝试使用从 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)
(我已经验证了这里混淆的账号和错误中的一样)
从这里我被困住了。为什么我无法将我的证书应用于此负载均衡器?
等待一段时间并注销并登录后,我能够使用我的 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) 我有一个 IIS 8(win 2012 r2)服务器,我想将同一个网站绑定到 2 个不同的域和 2 个不同的证书。
我不能使用通配符,因为域是不同的 FQDN。
如果我为 https 和端口 443 添加 2 个绑定,我将无法选择 2 个不同的证书(当我更改一个绑定时,它会更改另一个)。
有没有办法在不使用不同端口或拆分到 2 个不同网站的情况下解决这个问题?
谢谢!
我已经为我的域设置了 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) 我相信我已经在我的 Web 服务器 (Windows Server 2003) 上禁用了 SSL 2.0。为确保它现在使用的是 SSL 3.0,我该如何检查?
在 Web 服务器上禁用 2.0 和启用 3.0 的正确方法是什么?
我有带有 mod_ssl 的 Apache 2.2 和一堆 HTTPS 站点,位于与 VirtualHosting 相同的 IP/端口上,因此客户端必须支持 SNI 才能连接到这些虚拟主机。
我想通过以下方式配置我的服务器:
当用户输入 www.dummysite.com 并且他的浏览器支持SNI(服务器名称指示)时,任何 HTTP 请求都会被重定向到https://发送 HSTS 标头的位置。但如果浏览器不支持SNI,则请求由 HTTP 提供。
上面的规则,按原样陈述,实际上是那些仍然运行旧浏览器的人的后备规则,因为 Mozilla 和 Chrome 没有这个问题,只是为了避免让这些用户离开网站。
我想在 Apache 配置级别执行此重定向,可能在用户代理上使用过滤器。我不想触摸正在运行的应用程序,除非确保不存在直接的 http:// 引用(否则它们意味着安全警告)
[编辑](在编辑问题时我忘记了问题):要重定向的启用 SNI 的用户代理列表是什么?
我正在使用 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
最近将 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。
问题很明显:如何解决这个问题?
我有一台服务器,它充当网络中 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 ×10
apache-2.2 ×5
amazon-ec2 ×2
https ×2
sni ×2
virtualhost ×2
bindings ×1
encryption ×1
iis-8 ×1
timeout ×1
web-server ×1