侧边栏壁纸
博主昵称
Yi

在Debian上为 Apache2 配置 HTTPS 的操作记录

2025年07月21日 23阅读 0评论 0点赞

ssl.webp

  1. 安装 Apache2 和 SSL 模块

     apt update
     apt install apache2 openssl
     a2enmod ssl
  2. 生成 SSL 证书(自签名)

    mkdir /etc/apache2/ssl
    openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
     -keyout /etc/apache2/ssl/apache.key \
     -out /etc/apache2/ssl/apache.crt

    在生成过程中需要填写一些信息(如国家、组织等),Common Name 填写您的域名或服务器IP。

  3. 配置 Apache2
    创建或编辑 SSL 配置文件:

    vim /etc/apache2/sites-available/default-ssl.conf

添加以下内容(根据您的需求调整):

apache
<IfModule mod_ssl.c>
    <VirtualHost _default_:443>
        ServerAdmin 填写你的邮箱
        ServerName 填写域名或者ip
        DocumentRoot /var/www/html
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
        SSLEngine on
        SSLCertificateFile /etc/apache2/ssl/apache.crt
        SSLCertificateKeyFile /etc/apache2/ssl/apache.key

        <FilesMatch "\.(cgishtmlphtmlphp)$">
            SSLOptions +StdEnvVars
        </FilesMatch>
        <Directory /usr/lib/cgi-bin>
            SSLOptions +StdEnvVars
        </Directory>
    </VirtualHost>
</IfModule>
  1. 启用 SSL 站点并重启 Apache2

    a2ensite default-ssl.conf
    systemctl restart apache2
  2. 防火墙设置(如有需要)

    sudo ufw allow 'Apache Full'
  3. 验证 HTTPS
    在浏览器中访问 https://服务器ip,由于是自签名证书,浏览器会显示安全警告,您可以手动继续访问。

    可选:使用 Let's Encrypt 免费证书
    如果您有域名,推荐使用 Let's Encrypt:

    apt install certbot python3-certbot-apache
    certbot --apache

    交互式(手动同意)

    certbot --apache -d 你的域名

非交互式(自动同意)

certbot --apache -d 你的域名 \
    --email 你的邮箱 \
    --agree-tos \
    --non-interactive

Screenshot_2025-08-08-16-46-08-401_com.termux-edit.jpg

注意事项

  • 自签名证书适合测试环境,生产环境建议使用受信任的CA证书
  • Let's Encrypt证书有效期为90天/3个月,到期后需要重新生成
  • 确保服务器时间正确,否则可能导致SSL验证失败
    自此 Apache2 服务器就启用了 HTTPS 加密连接。
0

—— 评论区 ——

昵称
邮箱
网址
取消
博主栏壁纸
博主头像 Yi

14 文章数
9 标签数
2 评论量