InterServer Web Hosting and VPS

Brynn_nmp1.0发布

18次阅读

# 自建 Brynn NMP:告别投毒 lnmp 一键包,从官方源搭建干净的 LNMP 环境

Brynn_nmp1.0 发布

自从前几年 lnmp.org 的一键包被曝出投毒事件,不少站长的服务器因此沦陷。这件事让我下决心写一套自己的 LNMP 管理脚本——**Brynn NMP**,所有组件全部来自官方软件源,不走任何第三方渠道。

顺带加了一个浏览器直接操作的 Web 文件管理器,比 FTP 方便太多了。

---

## 为什么不用 lnmp.org / 宝塔?

主要是信任问题。

lnmp.org 的脚本是闭源的一键包,你不知道里面在干什么。宝塔面板功能很全,但争议也不少,强制绑定账号、上传服务器信息的问题时有爆出。对于跑业务的服务器,这种不确定性我不能接受。

Brynn NMP 的逻辑很简单:

- **Nginx** 来自 nginx.org 官方源
- **MySQL** 来自 Debian/Ubuntu 系统源(Debian 12 自带的就是 MySQL 8.0,不需要 MySQL 官方源那个 GPG key 一直过期的问题)
- **PHP** 来自 ondrej/php,这是 PHP 社区公认的多版本 PPA

所有安装过程透明可查,没有黑盒。

---

## 功能概览

安装完之后菜单长这样:

```
╔══════════════════════════════════════╗
║ Brynn NMP v1.0.0 ║
║ Nginx + MySQL + PHP 多版本管理 ║
╚══════════════════════════════════════╝

系统状态:
Nginx: 运行中 MySQL: 运行中 PHP: 8.2
文件管理器: http://1.2.3.4:3389

1. 安装 Brynn NMP 环境
2. PHP 版本管理
3. 网站 / 域名管理
4. 数据库管理
5. 服务管理
6. SSL 证书管理
7. 文件管理器 (部署 / 端口 / 账号)
```

主要功能:

**PHP 多版本共存 **,7.4、8.0、8.1、8.2、8.3 可以同时装,每个网站独立选用哪个版本。PHP 扩展也是菜单化管理,redis、imagick、ioncube、swoole 一键装卸。exec 这类危险函数也可以单独开关。

**SSL 证书 ** 走 acme.sh,支持 Let's Encrypt、ZeroSSL、Buypass 三个 CA。验证方式支持 HTTP 文件验证、DNS 手动验证、DNS API 自动验证(Cloudflare、DNSPod、阿里云等)。如果是买的证书,直接粘贴内容或者填文件路径就能导入,自动验证证书和私钥是否匹配。

** 数据库管理 ** 创建库时会自动生成一个同名独立用户,密码随机生成并保存到 `/etc/brynn_nmp/databases/` 下,不用自己记。

---

## 文件管理器

这个是我觉得最实用的功能。

装好之后访问 `http:// 服务器 IP:3389`,用账号密码登录,就可以在浏览器里直接操作服务器文件:

Brynn_nmp1.0 发布

支持的操作:拖放上传、打包下载、在线编辑代码文件、图片预览、压缩 / 解压、可视化 chmod、文件搜索、移动复制重命名删除……基本上 FTP 客户端能干的它都能干,而且不需要在本地装任何软件。

编辑器支持 Tab 缩进,改个配置文件不用再 `vim` 了,直接在浏览器里改完保存。

端口和账号都可以在主菜单第 7 项里管理,不用的时候可以直接关掉端口,安全性有保证。

---

## 安装方法

需要 root 权限,支持 Debian 10/11/12 和 Ubuntu 20.04/22.04/24.04。

```bash
wget https://c1ke.net/brynn_nmp.tar.gz
tar xzf brynn_nmp.tar.gz
bash brynn_nmp/brynn_nmp.sh
```

进入菜单后选 **1 → 1**(一键安装完整 LNMP),等待安装完成即可。

安装完后文件管理器会自动部署,初始密码在菜单 **7 → 5** 查看,建议第一时间改掉。

---

## 一些细节

** 为什么不用 MySQL 官方源?**

MySQL 官方 APT 源的 GPG key 在 2026 年已经过期,apt update 会报 EXPKEYSIG 错误。Debian 12 系统源里自带的就是 MySQL 8.0,功能完全一样,没有这个问题,所以直接用系统源。

** 网站根目录 **

统一放在 `/www/` 下,比如 `example.com` 的文件就放在 `/www/example.com/`。

**SSL 证书路径 **

证书统一保存在 `/etc/brynn_nmp/ssl/ 域名 /` 下,fullchain.pem 和 key.pem,方便其他工具引用。

** 文件管理器安全 **

auth 文件权限是 `640 root:www-data`,PHP-FPM 以 www-data 身份运行可以读取,但普通用户读不了。session 存在 `/tmp/brynn_nmp_sessions/` 下,不依赖系统 PHP session 配置。

---

## 开源地址

代码在 GitHub 上:

```
https://github.com/c1ke/brynn_nmp
```

MIT 协议,随便用随便改。如果遇到问题或者有想加的功能,欢迎开 issue。

正文完
 0
InterServer Web Hosting and VPS