frp内网穿透

在内网环境下搭建好服务器之后,后台和服务都只能在内网环境下访问,不是很方便,于是使用frp来搭建一个内网穿透服务,实现在外网环境下也能访问内网服务。

首先需要准备好一台有公网ip的服务器,我这里使用的是阿里云的云服务器,规格2核2GB内存,带宽3Mbps。

到frp的github页面下载本地压缩包

Releases · fatedier/frp

根据系统架构选择对应的压缩包,我这里使用的是Linux_amd64。

下载后之后我们上传到服务器,上传之前建议先创建一个自定义目录来存放,方便后期维护。

然后我们进入自定义目录,在当前目录解压frp本地包

cd /home/frp

sudo tar -xf frp_0.60.0_linux_amd64.tar.gz

解压完成后我们进入frp文件夹,修改里面的服务端配置文件frps.toml

cd /frp frp_0.60.0_linux_amd64

sudo vim frps.toml

按如下配置修改内容

bindAddr = "服务端IP"

bindport = "服务端监听端口"

webServer.addr = "服务端IP"

webServer.port = "服务端dashboard端口"

webServer.user = "dashboard用户名"

webServer.password = "dashboard密码"

enablePrometheus = true

auth.method = "token"

auth.token = "token密钥"

log.to = "自定义日志目录"

log.level = "info"

log.maxDays = 3

wq保存并退出,然后启动frp服务端

sudo ./frps -c ./frps.toml

打开浏览器在地址栏输入服务端ip:dashboard端口号,测试frp服务是否正常运行

输入配置文件中配置的用户名和密码,即可进入 dashboard页面,在这里可以看到连接情况和流量统计

服务端配置完成之后我们开始配置客户端,和服务端一样,将刚才下载好的本地压缩包上传到客户端。

客户端我们配置的是frpc.toml

serverAddr = "服务端IP"

serverport = "服务端frp监听端口"

auth.method = "token"

auth.token = "token密钥"

webServer.addr = "服务端IP"

webServer.port = "dashboard端口"

webServer.user = "用户名"

webServer.password = "后台密码"

webServer.pprofEnable = false

[[proxies]]

name = "自定义别名"

type = "tcp"

localPort = 客户端端口

remotePort = 服务端映射端口

wq保存配置后启动frp客户端

sudo ./frpc -c ./frpc.toml

我这里穿透的端口是22口,也就是默认的ssh端口,使用远程工具通过服务端ip:映射端口连接ssh,成功访问。

后续如果想要将其他服务穿透到公网上,只要在客户端的配置文件里继续增加配置就行,这样可以方便快速的在公网环境下访问各种内网服务。


frp内网穿透
http://localhost:8090/archives/frpnei-wang-chuan-tou
作者
Administrator
发布于
2025年02月26日
许可协议