linux

LNMP环境中SSL证书如何安装

小樊
59
2025-09-18 08:25:38
栏目: 云计算

LNMP环境中SSL证书安装步骤

1. 准备工作

在安装SSL证书前,需确认以下信息:

2. 获取SSL证书

方式一:使用Let’s Encrypt(免费)

通过LNMP一键安装包的工具快速申请:
在终端执行命令:lnmp ssl add,按提示依次输入:

方式二:使用ZeroSSL(付费/免费版)

通过acme.sh工具生成ECC证书(更轻量、安全):
执行命令:/usr/local/acme.sh --server zerossl --issue -d yourdomain.com -d www.yourdomain.com --keylength ec-256 -w /home/wwwroot/yourdomain.com(替换为你的域名和网站根目录)。
等待几分钟,证书会自动生成在/root/.acme.sh/yourdomain.com_ecc/目录下(包含fullchain.cer证书文件和yourdomain.com.key私钥)。

3. 配置Nginx

找到对应网站的Nginx虚拟主机配置文件(通常位于/usr/local/nginx/conf/vhost/yourdomain.com.conf),修改或添加以下内容:

server {
    listen 443 ssl;  # 开启HTTPS监听端口
    server_name yourdomain.com www.yourdomain.com;  # 绑定域名
    
    # 指向证书文件(路径需与生成证书时的路径一致)
    ssl_certificate /usr/local/nginx/conf/ssl/yourdomain.com_ecc/fullchain.cer;  
    ssl_certificate_key /usr/local/nginx/conf/ssl/yourdomain.com_ecc/yourdomain.com.key;
    
    # 其他配置(如root目录、PHP处理等)
    root /home/wwwroot/yourdomain.com;
    index index.php index.html;
    
    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass unix:/tmp/php-cgi.sock;  # 根据PHP版本调整sock路径
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}

注意:若使用Let’s Encrypt自动配置,无需手动修改,工具会自动更新配置文件。

4. 重新加载Nginx

配置完成后,执行以下命令使配置生效:

5. 验证SSL证书

6. 可选:配置HTTP到HTTPS重定向

为强制用户使用HTTPS,避免HTTP明文传输,可在Nginx配置文件的server块(监听80端口)中添加重定向规则:

server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;
    return 301 https://$server_name$request_uri;  # 永久重定向到HTTPS
}

修改后重新加载Nginx即可。

以上步骤覆盖了LNMP环境下SSL证书安装的全流程,具体命令和路径可能因LNMP版本、Linux发行版略有差异,建议参考对应工具的官方文档调整。

0
看了该问题的人还看了