Amazon Linux EC2 安装 SSL(无连接)

Posted

技术标签:

【中文标题】Amazon Linux EC2 安装 SSL(无连接)【英文标题】:Amazon Linux EC2 installing SSL (no connection) 【发布时间】:2017-09-11 20:35:10 【问题描述】:

我在过去 2 天里试图找到解决问题的方法。

HTTP 可以正常工作 http://jackrus.net,但 HTTPS 不能正常工作。

1.我在 Amazon Linux EC2 上创建了一个实例。 2.将我的域名jackrus.net重定向到我的公共IP 3. 开通监听443、22、80。(安全组) 4. 遵循 here 的 aws 文档中的说明 5.检查所有权限 6. apachectl -t - 表示语法很好。 7. 重新启动服务器。这里也没有问题。

这是我的 ssl.conf

.... …… …… SSLCertificateFile /etc/pki/tls/certs/certificate.crt

SSLCertificateKeyFile /etc/pki/tls/private/private1.key

SSLCACertificateFile /etc/pki/tls/certs/intermediate.crt ... ... ...

我在这里得到的回应: 无法访问此网站

jackrus.net 拒绝连接。 尝试: 检查连接 检查代理和防火墙 ERR_CONNECTION_REFUSED

【问题讨论】:

你能通过 SSH 进入吗?您确定您已正确配置安全组以允许流量吗?尝试ping公网IP 我可以 ssh 并检查安全组。一切顺利。然而,我的一位朋友告诉我,问题可能出在默认 SSL 设置中……但是我再次按照 AWS 的说明进行操作…… 【参考方案1】:

您可能需要将虚拟主机添加到 http/config.d 文件中

您可以像这样检查您运行的虚拟主机:

apachectl -t -D DUMP_VHOSTS

查找您的配置可能在哪里

find /etc/httpd -name *.conf

然后用 vim 或 nano 或任何你喜欢的方式编辑你的配置

vi /etc/httpd/conf/httpd.conf

添加您的虚拟主机(如果在 vim 中,请先输入 i 插入)

#Virtual Host added
<VirtualHost *:80>
    DocumentRoot "/var/www/html"
    ServerName "example.com"
    ServerAlias "example"
RewriteEngine on
RewriteCond %SERVER_NAME =example
RewriteRule ^ https://%SERVER_NAME%REQUEST_URI [END,NE,R=permanent]
</VirtualHost>

保存并退出:

:wq

然后尝试重新启动服务器。

我还建议使用letsencrypt certbot-auto 作为快速解决方案,因为它具有调试功能可以准确地告诉您错误是什么。如果您使用的是 Letsencrypt,那么您应该查找 ACMEv1 到 v2 的升级或 ACMEv1 的生命周期结束

【讨论】:

以上是关于Amazon Linux EC2 安装 SSL(无连接)的主要内容,如果未能解决你的问题,请参考以下文章

在 Amazon ec2 中设置 GoDaddy SSL

如何在 amazon micro ec2 服务器(Amazon Linux)上安装 SVN 客户端

Amazon Linux EC2 实例上的 uWSGI 安装异常

使用 Packer 在 Amazon EC2 Linux 2 AMI 上安装 Jenkins 和 JDK 11 失败

在启动 Amazon EC2 Linux 实例时自动挂载 EBS 卷

sh EC2上的Amazon Linux AMI 2017.09.0(HVM)上的golang,docker和docker-compose的安装脚本