我有一个使用亚马逊的定制Linux安装与内置的Apache的EC2实例。 这个安装也安装了openssl。 话虽如此,似乎没有一个mod_ssl.so加载在httpd.conf中。
所以,我想知道最好的方法来让Apache启用SSL,所以我可以设置我的SSL虚拟主机(注意,我已经设置了证书/签名)。 理想情况下,我想不必重build/重新安装Apache。
试试这个命令:
yum install mod_ssl
在EC2上的apache服务器上启用SSL需要做些什么的总结:
NameVirtualHost *:443 <VirtualHost *:443> serverName www.example.com # other configurations SSLEngine on SSLCertificateFile /etc/httpd/conf/ssl.crt/mydomain.crt SSLCertificateKeyFile /etc/httpd/conf/ssl.key/mydomain.key </VirtualHost>
最后,不要忘记在EC2实例上打开端口443
我设法在我的ec2实例上启用SSL,并从startssl.com安装一个免费的ssl证书。 我犯了一些错误,这是基本的做法:
Web server SSL/TLS Certificate
ssl.encrypted.key
sudo openssl rsa -in ssl.encrypted.key -out ssl.unencrpted.key
sudo yum install mod_ssl
sudo vi /etc/pki/tls/certs/localhost.crt
:%d
根据需要删除现有的证书 [ESC] wq
sudo vi /etc/pki/tls/private/localhost.key
[ESC] wq
apachectl configtest
sudo service httpd restart
sudo kill -9 httpd
您应该安装SSL模块,因为默认情况下,mod SSL不提供大多数实例,但是取决于您在AWS实例中使用的Apache版本。 要检查您正在使用哪一个,您可以在命令行中运行此命令:
httpd -v
对于Apache 2.2
yum install mod_ssl
对于Apache 2.4
yum install mod24_ssl
如果您使用的是Amazon Lightsail,请确保从Lightsail仪表板进入联网,并在防火墙中添加HTTPS / 443: