FRP配置内网穿透52版本以上适用

avatar
作者
筋斗云
阅读量:0

简述

适用frp配置内网穿透来说我们需要进行简单的区分,具有公网IP的服务器我们简称为服务端,内网的服务器我们可以简称为客户端,frp需要针对不同的服务器配置不同的文件

下载安装包

Linux下载地址

https://github.com/fatedier/frp/releases/download/v0.59.0/frp_0.59.0_linux_amd64.tar.gz

Windows下载地址

https://github.com/fatedier/frp/releases/download/v0.59.0/frp_0.59.0_windows_amd64.zip

对于frp来说只根据不同的服务器区分安装包,服务端和客户端如果都是Linux则只需要下载Linux本本就可以,frp内网穿透使用配置文件和启动文件进行区分。

配置客户端Frp

准确的说是配置frpc.toml文件

#服务端公网IP地址(IP地址) serverAddr = "" #服务端公网监听端口(服务端和客户端通讯端口) serverPort = 7000 #鉴权方式(与服务端保持一致) auth.method = "token" #客户端连接的token(与服务端保持一致) auth.token = "password"  #TCP类型(端口对端口需要将客户点的端口暴露在公网场景下使用) [[proxies]] name = "test-tcp" type = "tcp" #客户端IP这里填本机IP就可以或者是127.0.0.1 localIP = "127.0.0.1" # 客户端本地的端口号(根据需要填写) localPort = 22 # 服务端的代理端口号(根据需要填写) remotePort = 6000  #HTTP类型(域名访问某个客户端的服务场景下配置如下) #[[proxies]] #name = "nginx-80" #type = "http" # 客户端本地的端口号(根据需要填写) #localPort = 80 #公网访问地址(域名或子域名) #customDomains = ["域名或子域名"] 

配置服务端Frp

准确的说是配置frps.toml文件

[common] #服务端监听端口 bindPort = 7000 #用于反向代理HTTP主机时使用 vhostHTTPPort = 80 #鉴权方式 auth.method = "token" #客户端连接的token auth.token = "password"  #后台管理面板配置 #后台面板端口号 webServer.port = 7500 #后台管理地址 webServer.addr = "0.0.0.0" #后台管理员账号 webServer.user = "admin" #后台管理员密码 webServer.password = "admin"

启动服务端

frps -c frps.toml & 

 启动服务端之后可以通过[服务器IP]:7500访问frp后台管理面板

启动客户端(服务端不启动成功,客户端启动会异常)

frpc.exe -c frpc.toml

  对于客户端是Windows时我们使用命令行启动frpc,但是窗口不能关闭,关闭后程序会关闭;因此我们可以通过创建vbs程序来解决这个问题

dim objShell  set objShell=wscript.createObject("WScript.Shell")  iReturnCode=objShell.Run(".\frpc.exe -c frpc.toml",0,TRUE)

常见问题一:

error unmarshaling JSON: while decoding JSON: json: cannot unmarshal array into Go value of type v1.ServerConfig

如果启动出现如下问题则是因为新版本.toml配置文件采用的是JSON格式,而你配置的.toml文件格式不正确

常见问题二:

[1;34m2024-07-28 00:25:49.632 [I] [sub/root.go:142] start frpc service for config file [./frpc.toml]
[0m[1;34m2024-07-28 00:25:49.641 [I] [client/service.go:294] try to connect to server...
[0m[1;33m2024-07-28 00:25:59.647 [W] [client/service.go:297] connect to server error: dial tcp 0.0.0.0:7000: i/o timeout
[0m[1;34m2024-07-28 00:25:59.647 [I] [sub/root.go:160] frpc service for config file [./frpc.toml] stopped
[0mlogin to the server failed: dial tcp 123.249.69.0:7000: i/o timeout. With loginFailExit enabled, no additional retries will be attempted

这是因为另一端端口不允许访问导致,只需要开启端口就可以了(华为云服务器需要在控制台修改安全策略)

 常见问题三(SSH):

开启Widows SSH Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!