frp内网穿透
内网穿透目的
你没有公共IP,你就不能远程访问局域网下的设备进行开发,除非使用todesk或是向日葵这种,但是都要付费。通过内网穿透,你只需要花很少的钱租一个有公网IP的服务器(VPS),就可以通过ssh连接到你局域网上的设备
前期准备
- 有公网IP的服务器(server 服务器)
- 访问目标设备(client 客户端)
在有公网IP的服务器上下载frp并解压
#下载命令
wget https://github.com/fatedier/frp/releases/download/v0.57.0/frp_0.57.0_linux_amd64.tar.gz
#解压命令
tar -zxvf frp_0.22.0_linux_amd64.tar.gz
进入解压后的frp文件夹,修改相关.toml
文件,注意一个是frpc(client) 一个是 frps(server)
# frps.toml
bindPort = 7000
===================================================================
# frpc.toml
serverAddr = "x.x.x.x" #填入你服务器的公网ip地址
serverPort = 7000
[[proxies]]
name = "ssh"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 6000
NOTE:需要注意,你的服务器一定要将使用端口号开放(上述端口为7000和6000)。以华为云服务器为例,你是无法用命令行进行端口开放的,需要你在华为云服务器界面的 配置安全组 中手动开放端口
修改好相关配置后,先在服务器端的frp目录下启动frps:./frps -c ./frps.toml
;再在客户端的frp目录下启动frpc:./frpc -c ./frpc.toml
如果客户端启动显示无法连接,考虑你的服务器中端口是否暴露的问题
最后通过ssh测试连接
ssh -p 6000 client_name@[服务器公共IP地址]
#举例:ssh -p 6000 xiaoming@1.2.3.4 其中xiaoming是客户端用户名,1.2.3.4是服务器公共IP