一、介绍
frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
相关教程网页
github.com
完整文档
详细的教程
二、安装
下载网址 /releases
说明 首先要有一台有公网ip的服务器作为服务端,客户端是要访问的服务器。
在github 的 releases 分别下载对应合适服务端和客户端的文件 。
如linux 64位系统 可以使用 如下命令
wget /releases/download/v0.43.0/frp_0.43.0_linux_arm64.tar.gz如果遇到
Resolving github.com (github.com)... 20.205.243.166
Connecting to github.com (github.com)|20.205.243.166|:443... connected
请尝试 sudo nano /etc/hosts 编辑后面加上github.com的ip地址或者其他方式下载
三、解压
tar -zxaf frp_0.43.0_linux_arm64四、说明
文件夹里面有如下文件
其中frps.ini 是server服务端的配置文件 frpc.ini 是client客户端的配置文件。
五、配置
1.在具有公网 IP 的机器上部署 frps,修改 frps.ini 文件,这里使用了最简化的配置,设置了 frp 服务器用户接收客户端连接的端口:
[common]bind_port = 70002.在需要被访问的内网机器上(SSH 服务通常监听在 22 端口)部署 frpc,修改 frpc.ini 文件,假设 frps 所在服务器的公网 IP 为 x.x.x.x:
[common]server_addr = x.x.x.xserver_port = 7000[ssh]type = tcplocal_ip = 127.0.0.1local_port = 22remote_port = 6000local_ip 和 local_port 配置为本地需要暴露到公网的服务地址和端口。remote_port 表示在 frp 服务端监听的端口,访问此端口的流量将会被转发到本地服务对应的端口。
分别启动 frps 和 frpc。
./frps -c ./frps.ini./frpc -c ./frpc.ini通过 SSH 访问内网机器,假设用户名为 test:
ssh -oPort=6000 [email protected]
frp 会将请求 x.x.x.x:6000 的流量转发到内网机器的 22 端口。
六、vnc,web配置等