温馨提示×

nginx在centos上如何做SSL

小樊
31
2025-12-01 18:27:24
栏目: 云计算

在CentOS上为Nginx配置SSL,你需要遵循以下步骤:

  1. 安装Certbot: Certbot是一个自动化的工具,用于获取、安装和更新Let’s Encrypt SSL证书。首先,确保你的系统已经安装了EPEL仓库,然后运行以下命令来安装Certbot和Nginx插件:
sudo yum install epel-release
sudo yum install certbot python-certbot-nginx
  1. 获取SSL证书: 运行以下命令来获取SSL证书。Certbot会自动配置Nginx并重启服务。请确保将yourdomain.com替换为你的实际域名。
sudo certbot --nginx -d yourdomain.com

在获取证书的过程中,Certbot会提示你输入电子邮件地址、同意服务条款以及选择证书的有效期。完成这些步骤后,Certbot会自动创建一个名为/etc/letsencrypt的目录,其中包含证书文件。

  1. 配置Nginx: Certbot会自动修改Nginx配置文件(通常位于/etc/nginx/nginx.conf/etc/nginx/conf.d/default.conf),以使用SSL证书。你可以根据需要自定义配置文件,例如更改监听端口或添加重定向。

以下是一个基本的Nginx SSL配置示例:

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 HIGH:!aNULL:!MD5;

    location / {
        root /var/www/html;
        index index.html index.htm;
    }

    # 其他配置...
}
  1. 重启Nginx: 保存配置文件后,运行以下命令重启Nginx以应用更改:
sudo systemctl restart nginx
  1. 设置自动更新证书: Let’s Encrypt证书有效期为90天。为了确保证书始终有效,你可以设置Certbot自动更新证书。运行以下命令:
sudo certbot renew --dry-run

如果没有错误,你可以设置一个cron任务或systemd定时器来自动执行证书更新。

通过以上步骤,你应该已经在CentOS上成功为Nginx配置了SSL。现在,你的网站应该可以通过HTTPS访问了。

0