在Linux系统中配置LNMP(Linux, Nginx, MySQL, PHP)的SSL证书,通常需要以下几个步骤:
-
获取SSL证书: 你可以从证书颁发机构(CA)购买SSL证书,或者使用免费的Let’s Encrypt证书。以下是使用Certbot(一个自动化的Let’s Encrypt客户端)获取证书的示例:
sudo apt-get update sudo apt-get install certbot python3-certbot-nginx sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
在执行上述命令时,Certbot会自动配置Nginx以使用SSL证书,并创建一个名为
/etc/letsencrypt
的目录来存储证书和相关文件。 -
配置Nginx: Certbot会自动修改Nginx配置文件以启用SSL。你可以在
/etc/nginx/sites-available
目录下找到你的站点配置文件。确保以下配置项已正确设置:server { listen 80; server_name yourdomain.com www.yourdomain.com; return 301 https://$host$request_uri; } 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-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; # 其他配置项... }
请确保将
yourdomain.com
和www.yourdomain.com
替换为你的实际域名。 -
重启Nginx: 在修改配置文件后,重启Nginx以使更改生效:
sudo systemctl restart nginx
-
测试SSL配置: 使用SSL实验室的SSL服务器测试工具(https://www.ssllabs.com/ssltest/)检查你的SSL配置是否正确。这个工具会提供一个详细的报告,指出任何潜在的问题。
完成以上步骤后,你的Linux LNMP环境应该已经成功配置了SSL证书。现在,当用户访问你的网站时,浏览器将显示一个安全的连接(HTTPS)。