如何在 Ubuntu 10.04 中轻松部署 HTTPS?

如何在 Ubuntu 10.04 中轻松部署 HTTPS?

我有一个在 Ubuntu 10.04 上运行的 Apache 网络服务器,我想将所有内容切换到 HTTPS。

答案1

Apache2 附带了额外的工具,让这一切变得非常简单。如果你安装了 apache2-common 包,你mod_ssl只需一个简单的命令就可以启用该模块(HTTPS 所必需的):

sudo a2enmod ssl

Apache2 还包含一个命令来帮助您轻松生成自签名证书,名为apache2-ssl-certificate。按如下所示为服务器生成证书,或使用通过受信任的根 CA(Verisign、Entrust、Thawte 等)购买的证书。

sudo apache2-ssl-certificate -days 365

请记住,如果您使用自签名证书,用户在查看您的网站时将收到这个臭名昭著的警告:

在此处输入图片描述

/etc/apache2/sites-available/default在 Apache 配置( )或 VirtualHost 指令(如下)中使用以下 4 个语句DocumentRoot来为该特定站点打开 SSL 引擎:

SSLEngine on
SSLOptions +StrictRequire
SSLCertificateFile    /etc/apache2/ssl/certs/apache.crt
SSLCertificateKeyFile /etc/apache2/apache-ssl/apache.pem

强制SSLOptions +StrictRequireSSL 通信仅针对该特定站点。SSLCertificateFileSSLCertificateKeyFile指定 SSL 证书的位置及其相应的密钥。

/etc/apache2/ports.conf通过修改以包含以下指令,确保我们正在监听端口 443 Listen

echo "Listen 443" >> /etc/apache2/ports.conf

最后,您必须重新启动 Apache2 才能使更改生效:

sudo /etc/init.d/apache2 restart 

更多乐趣

配置端口 80 上的 HTTP 请求以重定向到端口 443mod_rewrite

笔记

其中一些数据来自过去使用 Debian/Ubuntu 系统的经验,有关最准确的说明,请参阅 10.04 指南Ubuntu 网站

答案2

我不会告诉你如何在我看来,这样做超出了本论坛的范围(1)我只是说什么我认为你可以做到。

确实没有简单的这样做的方法。你确实需​​要了解一些 Apache 配置,并深入了解配置文件。除此之外,你还需要一个SSL 证书

最简单的方法是告诉你的 Web 服务器停止监听 80 端口(2)并且只监听 443 端口。更好的解决方案是让 apache将所有到端口 80 的连接重定向到端口 443

(1)这超出了我的专业知识范围
(2)或者在防火墙中阻止端口 80

相关内容