GIS数据共享:官方网站

Linux

当前位置:首页 > 操作系统 > Linux

使用frp工具实现内网穿透连接

一、frp简述frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由...

一、frp简述

frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。


二、frp说明

一个frp文件包里面包括frpc、frps以及相应的配置文件。内部的配置文件,如下图所示:

frpc:是指 frp客户端(client)

frpc.ini:客户端配置文件

frps:是指 frp服务端(server)

frps.ini:服务端配置文件


三、frp安装

1、工具

一台有公网IP的服务器(下文称外网主机)

一台需要实现内网穿透的机器(下文称内网主机)

一个SSH工具(xshell、Mobaxterm或putty)

一个域名(如果只是建立SSH反向代理则不需要域名)。


2、获取

windows环境中,推荐下载 frp_0.20.0_windows_amd64.zip

linux环境中,推荐下载 frp_0.20.0_linux_amd64.tar.gz

具体还是看情况而定,可以自己选取版本、看操作系统选择32位或64位的。

下载地址传送门: https://github.com/fatedier/frp/releases


3、安装

3.1 服务端安装

外网主机(带有公网ip的服务器)需要安装服务端的frp


(1)解压

使用tar指令解压tar.gz文件

tar -zxvf frp_0.20.0_linux_amd64.tar.gz

(2)删除多余文件
外网主机作为服务端,可以删掉不必要的客户端文件。使用cd指令进入解压出来的文件夹,使用rm指令删除文件。

cd frp_0.20.0_linux_amd64/
rm -f frpc
rm -f frpc.ini

(3)修改配置文件
修改服务器配置文件,frps.ini文件。使用vi指令对目标文件进行编辑。

vi frps.ini

添加以下内容:

[common]
bind_port = 7000         #frp服务端端口
vhost_http_port = 8080   #http访问端口

[common]部分是必须有的配置,其中bind_port是自己设定的frp服务端端口,vhost_http_port是自己设定的http访问端口。

保存配置!

(4)启动
启动frp服务端,命令如下:

./frps -c ./frps.ini

服务端配置完成!

3.2客户端安装

(1)解压
使用tar指令解压tar.gz文件

tar -zxvf frp_0.20.0_linux_amd64.tar.gz

(2)删除多余文件
外网主机作为服务端,可以删掉不必要的服务端文件。使用cd指令进入解压出来的文件夹,使用rm指令删除文件。

cd frp_0.20.0_linux_amd64/
rm -f frps
rm -f frps.ini

(3)修改配置文件
使用vi命令,修改frpc.ini

vi frp.ini

客户端的配置如下:

[common]中的server_addr填frp服务端的ip(也就是外网主机的IP),server_port填frp服务端的bind_prot。

[common]
server_addr = 123.5.57.118 #服务端ip(外网ip)
server_port = 7000         #服务端设定的端口

[ssh]中的local_port填本机开放的ssh端口,一般ssh端口默认为22。

#通过tcp来连接SSH
[ssh]
type = tcp
local_ip = 127.0.0.1  #本机ip
local_port = 22       #本机ssh端口
remote_port = 6000    #外网服务器请求过来的端口

[mysql]中的 type对应服务端配置,local_port填服务端mysql端口。

#通过tcp来连接mysql
[mysql]
type = tcp
local_port = 3306
remote_port = 3306
#use_encryption = true
#use_compression = true

[tomcat]中的 type对应服务端配置,local_port填服务端toncat端口。

[tomcat]
type = http
local_port = 8083
#custom_domains = tomcat.xxxx1.com
#remote_port =8083

[web]中的type对应服务端配置。local_port填f服务器的web端口。

[web]
type = http
local_port = 80
custom_domains = www.xxx.com

以上的配置和服务端是对应的。
可以选择自己需要的进行配置,其中[common]是必不可少的配置,其余按需配置。

保存配置!!!

(4)运行
运行frp客户端,命令如下:

./frpc -c ./frpc.ini

(若要在后台运行,需要使用其他命令,后面详述)
若在服务端会看到"start proxy sucess"字样,即连接成功。


四、使用

SSH连接:
通过客户端IP:6000和服务器端建立SSH连接。

ssh 120.79.17.158 -p 6000

五、后台运行

1、nohup命令

nohup指令的使用方法相对简单,只需要在nohup后面加上frp的运行指令即可。下面示范的指令是运行frp客户端。(同样,如果之前断开了SSH连接,记得用cd指令进入frp的目录先。)

nohup ./frpc -c ./frpc.ini &

这样就成功让frp在后台运行了。

2、关闭

有了后台启动,自然就有相应的关闭之法。关闭frp,直接杀进程就可以啦!!!

ps -aux|grep frp| grep -v grep

kill -9 进程号

例如:

[web1~]#ps -aux|grep frp| grep -v grep
[web1~]#root  3600  0.1  0.1 110188  9484 pts/0  Sl  15:04  0:00 ./frpc -c ./frpc.ini
[web1~]#kill -9 3600


扫码查看

相关内容

文章评论

表情

共 0 条评论,查看全部
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~

热门标签