温馨提示×

lnmp如何安装ssl证书

小樊
62
2026-08-31 19:06:57
栏目: 云计算

在 LNMP(Linux + Nginx + MySQL + PHP) 环境下安装 SSL 证书,通常有以下几种常见方式。下面以 Nginx 为例,讲最常用、最实用的做法。


一、使用 Let’s Encrypt 免费证书(推荐)

1. 使用 acme.sh(最常用)

如果你用的是 LNMP 一键包(如 lnmp.org),推荐用 acme.sh。

安装 acme.sh

curl https://get.acme.sh | sh

申请证书

acme.sh --issue -d example.com -d www.example.com -w /home/wwwroot/example.com

-w 是你的网站根目录

安装证书到 Nginx

acme.sh --installcert -d example.com \
--key-file /usr/local/nginx/conf/ssl/example.com.key \
--fullchain-file /usr/local/nginx/conf/ssl/example.com.crt \
--reloadcmd "service nginx reload"

2. 配置 Nginx 启用 HTTPS

编辑站点配置文件(LNMP 一般在):

/usr/local/nginx/conf/vhost/example.com.conf

添加或修改:

server {
    listen 443 ssl http2;
    server_name example.com www.example.com;

    ssl_certificate /usr/local/nginx/conf/ssl/example.com.crt;
    ssl_certificate_key /usr/local/nginx/conf/ssl/example.com.key;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    root /home/wwwroot/example.com;
    index index.php index.html;

    location ~ \.php$ {
        fastcgi_pass unix:/tmp/php-cgi.sock;
        fastcgi_index index.php;
        include fastcgi.conf;
    }
}

强制 HTTP 跳转 HTTPS(可选)

server {
    listen 80;
    server_name example.com www.example.com;
    return 301 https://$host$request_uri;
}

3. 重载 Nginx

nginx -t
service nginx reload

二、使用已有 SSL 证书(商业证书)

如果你已有:

  • example.com.crt
  • example.com.key

直接放到:

/usr/local/nginx/conf/ssl/

然后按上面的 Nginx 配置即可。


三、使用 LNMP 自带工具(最简单)

如果你用的是 lnmp.org 一键包:

lnmp ssl add

按提示输入:

  • 域名
  • 证书路径
  • 私钥路径

它会自动配置好 Nginx。


四、验证 SSL 是否生效

https://example.com

或使用:

openssl s_client -connect example.com:443

五、常见问题

✅ 防火墙放行 443
✅ 云服务器安全组放行 443
✅ 证书路径权限正确
✅ Nginx 配置语法正确


如果你告诉我:

  • 用的是 哪个 LNMP 版本
  • 是 国内服务器 / 海外
  • 是否 已有证书

我可以给你更精准的步骤。

0 踩