繁体   English   中英

在AWS EC2实例上启用SSL

[英]Enabling SSL on an AWS EC2 instance

在通过虚拟主机为多个域提供服务的EC2实例上,我设置了一个负载均衡器,用于将其中一个域的HTTPS通信从端口:443转发到:8443,部分示例如下: http : //elwoodicious.com/一十二分之二千零九/ 23 /使用-ELB到服务-多域-过SSL-ON-EC2换笑声/

我正在使用的httpd.conf虚拟主机如下所示:

NameVirtualHost *:80
<VirtualHost *:80>
    ServerAdmin webmaster@domain.com
    DocumentRoot /var/www/domain.om
    ServerName domain.com
    ServerAlias *.domain.com
    ErrorLog logs/domain.com-error_log
    CustomLog logs/domain.com-access_log common
</VirtualHost>

# more VirtualHosts on *:80 here

现在,只要我为同一个domain.com添加新的虚拟主机,就这样,

<VirtualHost _default_:8443>
    ServerAdmin webmaster@domain.com
    DocumentRoot /var/www/domain.om
    ServerName domain.com
    ServerAlias *.domain.com
    SSLEngine On
    RequestHeader set X_FORWARDED_PROTO 'https'
    ErrorLog logs/domain.com-https-error_log
    CustomLog logs/domain.com-https-access_log common
</VirtualHost>

... Apache无法重新启动。 没有错误通知-只是说[FAILED]

我唯一的线索是:即使我删除了所有*:80虚拟主机,只为端口*:8443留了一个主机,即使设置NameVirtualHost *:8443 ,Apache也会失败...。

这是否意味着它是某种EC2指令,仅在端口80上允许虚拟主机?

谢谢你的帮助!

----------------编辑:添加错误日志

var/log/httpd/error_log包含以下内容:

[Tue Jun 09 16:52:37 2015] [notice] caught SIGTERM, shutting down
[Tue Jun 09 16:52:37 2015] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Tue Jun 09 16:53:13 2015] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Tue Jun 09 16:53:47 2015] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Tue Jun 09 16:53:47 2015] [notice] Digest: generating secret for digest authentication ...
[Tue Jun 09 16:53:47 2015] [notice] Digest: done
[Tue Jun 09 16:53:47 2015] [notice] Apache/2.2.29 (Unix) DAV/2 PHP/5.3.29 mod_ssl/2.2.29 OpenSSL/1.0.1k-fips configured -- resuming normal operations

var/log/httpd/ssl_error_log包含以下内容:

[Tue Jun 09 16:53:47 2015] [warn] RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Tue Jun 09 16:53:47 2015] [warn] RSA server certificate CommonName (CN) `ip-xx-xx-xx-xx' does NOT match server name!?

最后, var/log/httpd/domain.com-https-error_log看起来像这样:

[Tue Jun 09 16:53:13 2015] [error] Server should be SSL-aware but has no certificate configured [Hint: SSLCertificateFile] (/etc/httpd/conf/httpd.conf:1026)

在httpd.conf的1026行上是<VirtualHost _default_:8043> 我已经使用aws cli上传了在本地计算机上创建的自签名OpenSSL证书,并将其附加到负载均衡器以进行HTTPS通信。

域的CNAME记录也指向ELB DNS名称。 不知道我错过了什么。

大。 错误消息有所帮助。 您缺少两行:

SSLCertificateFile /directory/to/file.crt
SSLCertificateKeyFile /directory/to//file.key

这是在Apache上配置SSL的方法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM