既然你已经在用 0.66 版本的 frpc 了,最稳妥、最专业的做法是直接把 frpc.exe 变成 Windows 服务。
这样做不仅能实现开机不登录即运行,还能在 frpc 崩溃时自动重启。你可以彻底抛弃那个容易被杀毒软件盯着的 .vbs 脚本。
推荐使用 NSSM (Non-Sucking Service Manager),它是目前公认最简单好用的工具。
第一步:下载 NSSM
- 访问 NSSM 官网下载页面。
- 下载并解压。根据你的系统进入
win64文件夹。 - 为了方便,你可以把
nssm.exe复制到你的frpc.exe所在的文件夹里。
第二步:安装为服务
- 点击“开始”菜单,输入
cmd,右键选择“以管理员身份运行”。 - 在命令行中进入你的 frp 目录。例如:DOS
cd /d C:\frp - 输入以下命令并回车:DOS
nssm install frpc - 在弹出的窗口中进行如下设置:
- Path (程序路径): 选择你的
frpc.exe。 - Startup directory (启动目录): 会自动填充,通常就是 frpc 所在文件夹。
- Arguments (参数): 输入
-c frpc.toml(注意:这里一定要填入配置文件名)。
- Path (程序路径): 选择你的
- 点击 Install service。
第三步:验证并启动
- 按下
Win + R,输入services.msc。 - 找到名为 frpc 的服务。
- 右键点击它,选择**“启动”**。
- 检查: 确保“启动类型”是“自动”。现在,即使你重启电脑且不登录用户,frpc 也会在后台默默运行。
⚠️ 特别提醒(避坑指南)
- 路径权限: 既然是系统服务运行,确保你的
frpc文件夹不要放在某个用户的“桌面”或“下载”文件夹里(因为权限受限)。建议放在C:\frp或D:\frp。 - 配置文件中的路径: 在你的
frpc.toml中,如果有log.to = "./frpc.log"这种相对路径,建议改为绝对路径,例如log.to = "C:/frp/frpc.log",防止服务找不到地方写日志。 - 防火墙: 记得在 Windows 防火墙里给
frpc.exe放行,否则虽然服务运行了,流量可能进不来。
如果以后你想删除这个服务,只需要管理员运行 CMD 执行: nssm remove frpc confirm
居然很多年前的东西还很好用,赞一个