frp
-
frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。
-
项目地址 https://github.com/fatedier/frp
-
机器A 具有公网ip 47.x.x.x 可通过阿里云等云平台购买云机器 (推荐轻量级服务器)
-
机器B 没有公网ip 在局域网中 例如实验室或者校园网中
安装配置
机器A
wget https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_amd64.tar.gz #下载发行包 可根据所需版本修改地址,新版本的下载速度较快
tar -xzvf frp_0.36.2_linux_amd64.tar.gz #解压
-
修改配置文件
cd frp_0.36.2_linux_amd64 vim frps.ini #frps.ini 末尾s即指sever frpc末尾c即指client
具体内容如下
[common] bind_port = 7000 #监听地址 进程所占用的端口 dashboard_port = 7500 #frp有一个管理页面 此为管理页面的端口 dashboard_user = xxx #管理员名称 dashboard_pwd = xxxx #管理员密码 vhost_http_port = 7071 # 此为外网端口 通过访问该端口可连接至机器B的web服务 [common] bind_port = 7000 #监听地址 进程所占用的端口 注意该7000端口要在阿里云安全组中配置成开放状态 vhost_http_port = 80 # 此为外网端口,即向公网开放的地址,通过47.xx.xx.xx:80可访问到的页面 dashboard_port = 7500 #frp有一个管理页面 此为管理页面的端口 dashboard_user = root #登陆管理页面的管理员名称 dashboard_pwd = 123456 #登陆管理页面的密码 [rstudio_web] type = http custom_domains = 47.xxx.xxx.xxx auth_token =123
机器B
wget https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_amd64.tar.gz #下载发行包 可根据所需版本修改地址
tar -xzvf frp_0.36.2_linux_amd64.tar.gz #解压
-
同机器A
-
修改配置文件
```shell cd frp_0.36.2_linux_amd64 vim frpc.ini #frps.ini 末尾s即指sever frpc末尾c即指client
具体内容如下
[common] server_addr = 47.100.38.115 server_port = 7000 auth_token = 123 [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000 [rstudio_web] type = http local_ip = 127.0.0.1 local_port = 8787 #B机器所开放的端口 即可通过localhost:8787所访问到的页面 remote_port = 80 #即在公网中通过47.xx.xx.xx:80所访问到的页面 custom_domains = 47.xx.xx.xxx #服务器域名或ip 必须唯一 当输入为ip时,用域名形式不一定能访问到 反之亦然 [web01] type = http local_ip = 127.0.0.1 local_port = 8888 remote_port = 7071 # 与机器A的端口相呼应 custom_domains = a.free.domain # 服务器域名或ip 必须唯一 当输入为ip时,用域名形式不一定能访问到 反之亦然 [web02] type = http local_ip = 127.0.0.1 local_port = 8881 #网站使用的端口 remote_port = 7071 # 与机器A的端口相呼应 custom_domains = b.free.domain #域名保证唯一
启动
-
机器A
nohup ./frps -c frps.ini > frps.log 2>&1 &
或者直接用
./frps -c frps.ini
-
机器B
nohup ./frpc -c frpc.ini > frpc.log 2>&1 &