首页主机资讯centos nginx如何做SSL证书

centos nginx如何做SSL证书

时间2026-01-14 17:57:03发布访客分类主机资讯浏览758
导读:在CentOS上为Nginx配置SSL证书,通常需要以下几个步骤: 获取SSL证书: 你可以从Let’s Encrypt免费获取SSL证书。 或者从其他证书颁发机构(CA)购买。 安装Certbot(如果你选择使用Let’s E...

在CentOS上为Nginx配置SSL证书,通常需要以下几个步骤:

  1. 获取SSL证书

    • 你可以从Let’s Encrypt免费获取SSL证书。
    • 或者从其他证书颁发机构(CA)购买。
  2. 安装Certbot(如果你选择使用Let’s Encrypt): Certbot是一个自动化的工具,可以帮助你获取和续订Let’s Encrypt证书。

    sudo yum install epel-release
    sudo yum install certbot python2-certbot-nginx
    
  3. 获取并安装证书: 使用Certbot获取证书。以下命令会自动配置Nginx并启用HTTPS。

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

    运行上述命令后,Certbot会提示你输入电子邮件地址、同意服务条款,并选择一个目录来存储证书文件。Certbot会自动修改Nginx配置文件以启用SSL。

  4. 手动配置Nginx(如果你不使用Certbot): 如果你选择手动配置SSL证书,你需要将证书文件和私钥文件放置在合适的位置,并在Nginx配置文件中引用它们。

    假设你的证书文件是/etc/ssl/certs/yourdomain.com.crt,私钥文件是/etc/ssl/private/yourdomain.com.key,你可以按照以下步骤操作:

    • 将证书和私钥文件复制到Nginx可以访问的目录,例如/etc/nginx/ssl/

      sudo cp /path/to/your/fullchain.pem /etc/nginx/ssl/yourdomain.com.crt
      sudo cp /path/to/your/privkey.pem /etc/nginx/ssl/yourdomain.com.key
      
    • 编辑Nginx配置文件(通常位于/etc/nginx/nginx.conf/etc/nginx/conf.d/default.conf),添加或修改以下内容:

      server {
          
          listen 443 ssl;
          
          server_name yourdomain.com www.yourdomain.com;
          
      
          ssl_certificate /etc/nginx/ssl/yourdomain.com.crt;
          
          ssl_certificate_key /etc/nginx/ssl/yourdomain.com.key;
          
      
          ssl_protocols TLSv1.2 TLSv1.3;
          
          ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384';
          
          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;
      
      
          location / {
          
              return 301 https://$host$request_uri;
      
          }
      
      
          # 其他配置...
      }
          
      
  5. 重启Nginx: 无论你是使用Certbot还是手动配置,最后都需要重启Nginx以应用更改。

    sudo systemctl restart nginx
    
  6. 验证SSL配置: 你可以使用以下命令来验证Nginx的SSL配置是否正确:

    sudo nginx -t
    

    如果配置正确,你会看到类似以下的输出:

    nginx: configuration file /etc/nginx/nginx.conf test is successful
    
  7. 设置自动续期(如果你使用Let’s Encrypt): Certbot会自动为你设置一个cron任务或systemd定时器来定期续期证书。你可以手动测试续期过程:

    sudo certbot renew --dry-run
    

    如果一切正常,Certbot会尝试续期证书并输出相关信息。

通过以上步骤,你应该能够在CentOS上成功为Nginx配置SSL证书。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: centos nginx如何做SSL证书
本文地址: https://pptw.com/jishu/778827.html
centos nginx如何查看状态 CentOS中如何限制Tomcat的访问权限

游客 回复需填写必要信息