我很难在我的EC2微实例上尝试设置SSL证书(这是从NameCheap追讨的Comodo PositiveSSL)(我使用的是基于CentOS的Amazon Linux AMI 2012.3,如果我没弄错的话)。
这就是我的所作所为:
我安装了mod_ssl& OpenSSL的
我在EC2的实例安全组
I CHMODed * .key& * .crt文件为Comodo建议的777
我确定IP地址&文件路径是正确的(放一堆 示例中为0,但在我的ssl.conf中 正确无误)
我将此VirtualHost条目添加到ssl.conf
<VirtualHost 00.000.000.00:443>
############# I tried both with & without this section ##############
ServerName www.mydomain.com:443
ServerAlias www.mydomain.com
DocumentRoot /var/www
ServerAdmin webmaster@mydomain.com
######################################################################
SSLEngine on
SSLCertificateKeyFile /etc/ssl/mydomain_com.key
SSLCertificateFile /etc/ssl/mydomain_com.crt
SSLCertificateChainFile /etc/ssl/mydomain_com.ca-bundle
</VirtualHost>
然后我重新启动了apache ...但我 stil无法访问 https://www.mydomain.com/ !!!
我查看了ssltool.com,它说
The Common Name on the certificate is: ip-00-00-00-000
The certificate chain consists of:
SomeOrganization, ip-00-00-00-000. Expires on: Apr 10 13:39:41 2013 GMT - that's 363 days from today.
The site tested mydomain.com is NOT the same as the Subject CN ip-00-00-00-000!.
我甚至去了&amp;将VistualHost复制到httpd.conf而不是ssl.conf&amp;重启阿帕奇,都是徒劳。
我几天来一直在撞墙。我很确定我错过了一些可以完成这项工作的小东西,我只是不知道到底是什么。
如果有人可以提出一些建议,我会感激不尽!
答案 0 :(得分:22)
有时这部分
<VirtualHost _default_:443>
阻止使用您的真实SSL证书。如果是这种情况,请注释 VirtualHost 默认 或将SSLCertificate *属性移动到它,即。
<VirtualHost _default_:443>
SSLCertificateKeyFile /etc/ssl/mydomain_com.key
SSLCertificateFile /etc/ssl/mydomain_com.crt
SSLCertificateChainFile /etc/ssl/mydomain_com.ca-bundle
</VirtualHost>
确保在此之后重启apache。
答案 1 :(得分:3)
如果您使用Elastic Beanstalk,这是新的方法: 它是免费的,您可以避免由于配置而导致的错误,并且它是vue性能点的更好选择:
因为ELB支持SSL卸载,所以将证书部署到负载 平衡器(而不是它背后的EC2实例)将减少 实例需要的加密和解密工作量 处理
来自doc:
新的AWS证书管理器(ACM)旨在简化和 自动执行传统上与管理相关的许多任务 SSL / TLS证书。 ACM负责处理周围的复杂性 数字证书的配置,部署和更新! ACM提供的证书由亚马逊证书验证 权威(CA),亚马逊信托服务(ATS)。
更好的是,您无需额外费用即可完成所有这些工作。 SSL / TLS 通过AWS Certificate Manager提供的证书是免费的!
ACM将允许您在几分钟内开始使用SSL。后 您的请求是证书,您可以将其部署到您的Elastic Load 平衡器和您的Amazon CloudFront发行版有几个 点击。之后,ACM可以在没有的情况下处理定期更新 你的任何行动。
doc:
https://aws.amazon.com/fr/blogs/aws/new-aws-certificate-manager-deploy-ssltls-based-apps-on-aws/
答案 2 :(得分:0)
查看列表,您忘记使用虚拟主机启用配置。
sudo a2enmod ssl
sudo a2ensite default-ssl
sudo /etc/init.d/apache2 restart
有关如何在您的EC2上安装SSL证书的完整指南https://medium.com/@adnanxteam/how-to-add-ssl-certificate-to-laravel-on-ec2-aws-18104cc036d1