frp最新版本: frp_0.61.1_linux_amd64,,服务端我用的是linux,客户端我用的是windows,保持版本号一致就行。
本文章解决的问题: 如何将一个内网的本地的文件夹映射到公网服务?
服务端(frp_0.61.1_linux_amd64)
服务端配置
frps.toml
bindPort = 7000
[auth]
method = "token"
token = "xxx"
服务端启动: ./frps -c frps.toml
客户端 (frp_0.61.1_windows_amd64):
客户端配置
frpc.toml
serverAddr = "xxx"
serverPort = 7000
[auth]
method = "token"
token = "xxxx"
[[proxies]]
name = "test_static_file"
type = "tcp"
remotePort = 9999
[proxies.plugin]
type = "static_file"
localPath = "D:/tmp/imagetest/"
stripPrefix = "static"
客户端启动: frpc.exe -c frpc.toml
以上配置是将本地的文件发布成一个网页服务
遇到的问题1: frpc.exe老是会被window当病毒杀掉。
解决办法是:
- 如果是被360拦截,将本文件加入到360信任的白名单,https://toponegpt.site/conversationshare/174071132187280138040628717056
- 如果是被windows拦截,打开 Windows 安全中心 -> 病毒和威胁防护 ,历史保护记录,将文件恢复。
- 如果是下载的时候就被拦截,打开windows powershell,执行 wget https://github.com/fatedier/frp/releases/download/v0.61.1/frp_0.61.1_windows_amd64.zip -O frp_0.61.1_windows_amd64.zip 下载。
问题2: 如何将frpc.exe做成一个服务,开机启动
通过NSSM来安装服务,具体查看: https://toponegpt.site/conversationshare/174071077550477138040628717056
步骤
-
下载 NSSM
- 访问 https://nssm.cc/download 下载
nssm.exe
。 - 解压后,将
nssm.exe
放入C:\Windows\System32
目录(或其他路径)。
- 访问 https://nssm.cc/download 下载
-
安装服务
- 打开 管理员 CMD,运行:
nssm install frpc
- 会弹出一个 GUI 界面:
- Path: 选择
frpc.exe
的路径,例如:C:\Users\xwm\frp_0.61.1_windows_amd64\frpc.exe
- Arguments: 填写:
-c C:\Users\xwm\frp_0.61.1_windows_amd64\frpc.toml
- Startup type: 选择
Automatic
(自动启动)。 - 点击 Install service。
- Path: 选择
- 打开 管理员 CMD,运行:
-
启动服务
net start frpc
-
卸载服务
nssm remove frpc confirm