个人搭建frp服务及客户端连接实现网路穿透

​最近发现钉钉提供的免费穿透服务关闭了,对于前后端分离开发的我们,被打了个措手不及。

好在钉钉提供补救措施——自行搭建frp服务指南,一个宝藏博主开源了他的frp项目。我们根据自己服务器选择frp版本,我的服务器是x86_64,选择了frp_0.44.0_linux_amd64.tar.gz 

这里要提一下,首先准备一个指向穿透服务器的备案过的域名,如abc.com(国外域名自行决定备不备案)。

下载文件:(也可事先下载好再上传到服务器)

wget https://github.com/fatedier/frp/releases/download/v0.44.0/frp_0.44.0_linux_amd64.tar.gz

文件解压:

tar -xvf frp_0.38.0_linux_amd64.tar.gz 

移动文件至 /usr/local/frp:

mkdir /usr/local/frp
mv frp_0.44.0_linux_amd64/* /usr/local/frp/

文件说明:

frps.ini: 服务端配置文件
frps: 服务端软件

frpc.ini: 客户端配置文件
frpc: 客户端软件

有的系统是systemctl控制,有的是service命令控制,可自行将frp加入对应的控制服务,不加也不影响服务的启动和运行,所以这里不赘述。

修改服务端配置frps.ini:

[common]
#frp服务端口,自行设定
bind_port = 7000
#http访问时端口
vhost_http_port = 80
#身份钥匙
token = tk123456

#[ssh]
##ssh反向代理端口,自行设定
#listen_port = 6000

#服务端设定的客户端响应,[web]可改为[abc],自行设定
[web]
type = http    #服务类型
custom_domains = dev1.abc.com    #要映射的域名

[web2]
type = http
custom_domains = dev2.abc.com

启动服务端:

./frps -c ./frps.ini

# 后台启动
nohup ./frps -c ./frps.ini &

 运行“./frps -c ./frps.ini”后提示[I] [root.go:209] frps started successfully 即表示frp服务端启动成功。

接下来配置frp客户端

由于我在win10系统上使用,因此又下了对应的frp文件frp_0.44.0_windows_amd64.zip,解压使用客户端配置文件。

解压文件:

frps.ini: 服务端配置文件
frps.exe: 服务端软件

frpc.ini: 客户端配置文件
frpc.exe: 客户端软件

我们配置frp客户端服务,因此只要第三、第四两个文件就行。

修改配置frpc.ini:

[common]
#域名abc.com指向的IP地址
server_addr = xxx.xxx.xxx.xxx
#frp服务端设定端口
server_port = 7000
#frp服务端设定的安全钥匙
token = tk123456

#[ssh]
#type = tcp
#local_ip = 127.0.0.1
#local_port = 22
#remote_port = 6000

[web]    #服务项名称,与frp服务端某个服务项一致    
type = http    #类型
local_ip = 127.0.0.1    #所需穿透内网IP,这里是本机    
local_port = 8080       #内网服务端口
remote_port = 7000      #frp服务端设定端口
custom_domains = dev1.abc.com    #客户端指向域名,与服务端设置一致

启动客户端:

进入解压文件夹,在文件夹地址栏输入cmd,回车后进入cmd命令窗口,并直接定位到该文件夹下。

个人搭建frp服务及客户端连接实现网路穿透_第1张图片

在命令窗口输入frpc.exe,提示[web] start proxy success 表示客户端启动成功。

至此,本机8080端口下的服务,可通过域名dev1.abc.com在外网访问了。

在搭建自己的frp服务前,作为白嫖档的滋肾档员,哪能放弃白嫖的原则,经过不懈的努力挖掘了N个内网穿透工具。但是网络速度实在台难以忍受,在挖到N+1个后终决定以头悬梁锥刺股的意志自行搭建内网穿透服务。

以上为个人经验,有需要的朋友自行参考。

你可能感兴趣的:(linux,网络,服务器)