centos

centos nginx如何启用ssl加密

小樊
85
2025-02-13 06:36:47
栏目: 云计算

在CentOS上启用Nginx的SSL加密,你需要按照以下步骤操作:

  1. 获取SSL证书

    • 你可以从Let’s Encrypt免费获取SSL证书。
    • 使用Certbot工具可以自动化这个过程。
  2. 安装Certbot: 如果你的系统还没有安装Certbot,可以使用以下命令安装:

    sudo yum install epel-release
    sudo yum install certbot python2-certbot-nginx
    
  3. 获取并安装SSL证书: 使用Certbot获取SSL证书。运行以下命令并按照提示操作:

    sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
    

    yourdomain.comwww.yourdomain.com替换为你的域名。Certbot会自动配置Nginx并重启服务以应用更改。

  4. 测试配置: Certbot在安装证书后会提供一个测试URL(通常是https://yourdomain.com/letsencrypt-status),你可以通过访问这个URL来测试SSL配置是否正确。

  5. 自动续期: Let’s Encrypt的证书有效期为90天,Certbot可以设置自动续期。确保你的系统时间和时区设置正确,以便Certbot能够按时续期证书。

  6. 手动配置Nginx(可选): 如果你想手动配置Nginx来使用SSL,可以编辑Nginx的配置文件(通常位于/etc/nginx/nginx.conf/etc/nginx/conf.d/目录下的某个文件)。添加或修改以下内容:

    server {
        listen 443 ssl;
        server_name yourdomain.com www.yourdomain.com;
    
        ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:!DSS';
        ssl_prefer_server_ciphers on;
    
        # 其他配置...
    
        location / {
            root /var/www/html;
            index index.html index.htm;
        }
    }
    
    server {
        listen 80;
        server_name yourdomain.com www.yourdomain.com;
        return 301 https://$host$request_uri;
    }
    

    确保将yourdomain.comwww.yourdomain.com替换为你的域名,并根据需要调整其他配置。

  7. 重启Nginx: 保存配置文件后,重启Nginx以应用更改:

    sudo systemctl restart nginx
    

完成以上步骤后,你的Nginx服务器应该已经成功启用了SSL加密。

0
看了该问题的人还看了