1、frp简介
frp 是⼀个开源、简洁易⽤、⾼性能的内⽹穿透和反向代理软件,⽀持 tcp, udp, http, https等 协议。frp 项⽬官⽹是 https://github.com/fatedier/frp
2、frp⼯作原理
服务端运⾏,监听⼀个主端⼝,等待客户端的连接; 客户端连接到服务端的主端⼝,同时告诉服务端要监听的端⼝和转发类型; 服务端fork新的进程监听客户端指定的端⼝; 外⽹⽤户连接到客户端指定的端⼝,服务端通过和客户端的连接将数据转发到客户端; 客户端进程再将数据转发到本地服务,从⽽实现内⽹对外暴露服务的能⼒。
3、frp的安装与配置
[root@y ~]# wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_amd64.tar.gz
[root@y ~]# tar -zxvf frp.tar.gz
[root@y ~]# mv frp_0.33.0_linux_amd64/ /frp
[root@y ~]# ls /frp
frpc frpc_full.ini frpc.ini frps frps_full.ini frps.ini LICENSE systemd
[root@y ~]# vim /frp/frpc.ini
[common]
server_addr = 123.249.27.70
server_port = 7000
token=knee@588588
[qwer]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6022
[root@y ~]#cd /frp
[root@y frp]# ./frpc -c frpc.ini
[root@localhost ~]# tar -zxvf frp.tar.gz
[root@localhost ~]# scp root@192.168.4.30:~/frp.tar.gz ~
[root@localhost ~]# mv frp_0.33.0_linux_amd64/ /fr
[root@localhost ~]# vim /frp/frps.ini
[common]
bind_port = 7000
dashboard_user=aaa
dashboard_pwd=aaa
dashboard_port=7500
换主机
[root@localhost ~]# firewall-cmd --zone=public --add-port=7000/tcp --permanent
[root@localhost ~]# firewall-cmd --zone=public --add-port=6000-6100/tcp --permanent
[root@localhost ~]# firewall-cmd --zone=public --add-port=7500/tcp --permanent
[root@localhost ~]# firewall-cmd --reload
[root@localhost ~]# cd /frp
[root@localhost frp]# ./frps -c frps.ini
换主机
[common]
server_addr = 192.168.4.10
server_port = 7000
[qwer]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6022
浏览器访问服务器IP:7500
通过端口6022即可访问到客户端