如何用Apache2部署SSL证书

323
2025/4/12 6:32:13
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

要在Apache2上部署SSL证书,您需要遵循以下步骤:

  1. 获取SSL证书:首先,您需要从证书颁发机构(CA)购买或获取免费的SSL证书。常见的免费证书颁发机构有Let’s Encrypt、ACME.sh等。

  2. 安装Apache2:确保您的系统已安装Apache2。在Debian和Ubuntu上,您可以使用以下命令安装:

sudo apt-get update
sudo apt-get install apache2
  1. 启用SSL模块:要启用SSL模块,请运行以下命令:
sudo a2enmod ssl
  1. 配置Apache2以使用SSL:创建一个新的SSL配置文件或编辑现有的配置文件。通常,您可以在/etc/apache2/sites-available目录下找到这些文件。创建一个名为yourdomain.com-le-ssl.conf的新文件,其中yourdomain.com是您的域名。在此文件中,添加以下内容:
<IfModule mod_ssl.c>
    <VirtualHost *:443>
        ServerName yourdomain.com
        ServerAlias www.yourdomain.com
        DocumentRoot /var/www/yourdomain.com

        SSLEngine on
        SSLCertificateFile /path/to/your/certificate.crt
        SSLCertificateKeyFile /path/to/your/private.key
        SSLCertificateChainFile /path/to/your/ca_bundle.crt

        <Directory /var/www/yourdomain.com>
            Options Indexes FollowSymLinks
            AllowOverride All
            Require all granted
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/yourdomain.com_error.log
        CustomLog ${APACHE_LOG_DIR}/yourdomain.com_access.log combined
    </VirtualHost>
</IfModule>

请将/path/to/your/certificate.crt/path/to/your/private.key/path/to/your/ca_bundle.crt替换为您的证书文件的实际路径。

  1. 启用新的SSL站点配置:运行以下命令以启用新创建的SSL站点配置:
sudo a2ensite yourdomain.com-le-ssl.conf
  1. 禁用HTTP(可选):如果您希望强制使用HTTPS,可以禁用HTTP。编辑000-default.conf文件:
sudo nano /etc/apache2/sites-available/000-default.conf

找到<VirtualHost *:80>部分,并在其中添加以下行:

Redirect permanent / https://yourdomain.com/

保存并关闭文件。

  1. 重启Apache2:运行以下命令以使更改生效:
sudo systemctl restart apache2
  1. 更新防火墙规则:如果您使用的是UFW防火墙,请允许443端口上的流量:
sudo ufw allow 443/tcp
  1. 测试SSL配置:访问您的域名,确保浏览器显示安全连接。您还可以使用SSL检查工具(如SSL Labs)来验证您的SSL配置。

完成以上步骤后,您应该已经成功地在Apache2上部署了SSL证书。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: ubuntu pgadmin更新升级