自己搭建Frp内网穿透


## 1.背景描述

家中电脑搭建了Web服务/MC等游戏服务器,想和朋友一起分享但是没有公网ip

2.准备工作

①一台有公网IP的服务器

②电脑

③你智慧的大脑和灵活的手

④Frp服务端和客户端下载地址

国内可能因为奇妙的原因无法访问Github,这里贴一下本文发布时最新版本

frp_0.40.0_linux_386.tar.gz
frp_0.40.0_linux_amd64.tar.gz
frp_0.40.0_linux_arm.tar.gz
frp_0.40.0_linux_arm64.tar.gz
frp_0.40.0_windows_386.zip
frp_0.40.0_windows_amd64.zip

一般来说普通Linux系统服务器下载frp_0.40.0_linux_amd64.tar.gz,普通Windows电脑下载frp_0.40.0_windows_amd64.zip就可以

服务器切记提前放通端口

服务器切记提前放通端口

服务器切记提前放通端口

3.配置工作

3.1服务端配置

把frp_0.40.0_linux_amd64.tar.gz上传到服务器上,

也可以可以直接在服务器上下载:

1
wget https://cos.zyglq.cn/blog/frp_0.40.0_linux_amd64.tar.gz

然后解压

1
tar -zxvf frp_0.40.0_linux_amd64.tar.gz

给文件夹改个名字方便后面操作

1
cp -r frp_0.40.0_linux_amd64 frp

把文件夹放到自己定义的目录

然后进入目录:(我的是)

1
cd /usr/local/frp

image.png

因为是服务端,所以我们会用到以下两个文件,frps(服务端主程序)和frps.ini(配置文件)

修改配置文件`

1
vi frps.ini

按i进入编辑模式,删除原来的内容,修改成下面这样

1
2
3
4
5
6
7
8
[common]
bind_port = 7000
dashboard_port = 7500
token = 1145141919810
dashboard_user = admin
dashboard_pwd = admin
vhost_http_port = 12443
vhost_https_port = 12080
  • “bind_port”表示用于客户端和服务端连接的端口,这个端口号我们之后在配置客户端的时候要用到。
  • “dashboard_port”是服务端仪表板的端口,若使用7500端口,在配置完成服务启动后可以通过浏览器访问 Your Server IP:7500查看frp服务运行信息。
  • “token”是用于客户端和服务端连接的口令,请自行设置并记录,稍后会用到。
  • “dashboard_user”和“dashboard_pwd”表示打开仪表板页面登录的用户名和密码,自行设置即可。
  • “vhost_http_port”和“vhost_https_port”用于反向代理HTTP主机时使用。

按esc退出编辑再输入:wq保存

启动服务端:/usr/local/frp/frps -c frps.ini

image.png

出现图片这样的提示就表示服务端启动成功

监控服务端状态地址:http://Your Server IP:7500/

3.2客户端配置

解压frp_0.40.0_windows_amd64.zip

image.png

frpc(客户端主程序)和frpc.ini(配置文件)

image.png

  • “server_addr”为服务端IP地址,填入即可。
  • “server_port”为服务器端口,填入你设置的端口号即可,如果未改变就是7000
  • “token”是你在服务器上设置的连接口令,原样填入即可。
1
2
3
4
5
[随意写名字]
type = tcp:意思是创建tcp类型的穿透隧道
local_ip = 127.0.0.1:本地ip,127.0.0.1为本机,可填入内网电脑ip
local_port = 22:本地端口
remote_port = 6000:服务器上映射出来的端口

举例,你要搭建MC Java服务器,端口为25565,则在配置文件最下面添加

1
2
3
4
5
[MCServer]
type = tcp
local_ip = 127.0.0.1
local_port = 25565
remote_port = 25565

网站,远程桌面等只需替换本地和远程端口即可

保存配置文件,在解压的文件夹按住shift+右键,在此处打开命令窗口

输入 frpc.exe -c frpc.ini启动客户端

image.png

出现start proxy success就代表启动成功

4.后记

本文讲的是简单部署,适用于小白,大佬可以参考官方文档进行更复杂的部署Github地址

有其他问题可以在网站留下你的评论

初二学生党,文章难免有疏漏或者错误,欢迎留言讨论