debian

Debian Apache SSL证书配置方法

小樊
57
2025-08-25 03:42:17
栏目: 云计算

以下是在Debian系统上配置Apache SSL证书的步骤:

  1. 安装Apache和SSL模块

    sudo apt update  
    sudo apt install apache2  
    sudo a2enmod ssl  # 启用SSL模块  
    
  2. 获取SSL证书

    • Let’s Encrypt免费证书(推荐):
      sudo apt install certbot python3-certbot-apache  
      sudo certbot --apache -d yourdomain.com -d www.yourdomain.com  
      
      按提示完成证书申请,Certbot会自动配置Apache。
    • 自签名证书(仅测试用):
      sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \  
      -keyout /etc/ssl/private/apache-selfsigned.key \  
      -out /etc/ssl/certs/apache-selfsigned.crt  
      
  3. 配置Apache虚拟主机
    编辑配置文件(如/etc/apache2/sites-available/yourdomain.com.conf):

    <VirtualHost *:443>  
        ServerName yourdomain.com  
        DocumentRoot /var/www/yourdomain.com  
        SSLEngine on  
        SSLCertificateFile /etc/letsencrypt/live/yourdomain.com/fullchain.pem  # Let’s Encrypt证书路径  
        SSLCertificateKeyFile /etc/letsencrypt/live/yourdomain.com/privkey.pem  
        # 可选:启用HTTP/2、安全头等  
        # SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1  
        # Header always set Strict-Transport-Security "max-age=63072000"  
    </VirtualHost>  
    

    若使用自签名证书,需将SSLCertificateFileSSLCertificateKeyFile指向生成的.crt.key文件。

  4. 启用站点并重启服务

    sudo a2ensite yourdomain.com.conf  # 启用配置文件  
    sudo systemctl restart apache2     # 重启Apache  
    
  5. 验证配置

    • 浏览器访问https://yourdomain.com,检查是否显示安全锁图标。
    • 使用命令sudo apache2ctl configtest测试配置语法是否正确。
  6. 可选:强制HTTP跳转HTTPS
    编辑HTTP虚拟主机配置文件(如/etc/apache2/sites-available/000-default.conf),添加重定向规则:

    <VirtualHost *:80>  
        ServerName yourdomain.com  
        Redirect permanent / https://yourdomain.com/  
    </VirtualHost>  
    

    重启Apache后生效。

说明

0
看了该问题的人还看了