想要搭建自己的网站,如何供外人访问是一个难题。在IPV4大量使用的今天,大部分普通用户都无法直接获取可用的公网IP,所以无法从外网直接访问本地的内容。所以我们可以通过购买中转服务器,利用网络穿透来实现在外网访问本地设备。
- 前置准备:
- 一台具有公网IP的服务器
推荐阿里云的轻量应用服务器,亚太新加坡地区docker镜像,一月有1TB流量,只需24元,且绑定域名后无需备案。
基于Docker的FRP内网穿透部署:
搭建服务器:
创建frps.ini配置文件:
1
2
3
4COPY# 创建存放目录
sudo mkdir /etc/frp
# 创建frps.ini文件
vim /etc/frp/frps.ini编辑frps.ini,内容如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14COPY[common]
# 监听端口
bind_port = 7000
# 面板端口
dashboard_port = 7500
# 登录面板账号设置
dashboard_user = [admin] # 自己设定
dashboard_pwd = [password_1] # 自己设定
# 设置http及https协议下代理端口(非重要)
vhost_http_port = 7080
vhost_https_port = 7081
# 身份验证码
token = [password_2] # 自己设定运行下述命令,服务器端成功运行:
1
COPYdocker run --restart=always --network host -d -v /etc/frp/frps.ini:/etc/frp/frps.ini --name frps snowdreamtech/frps
此时服务器端搭建完成,你可以通过服务器的公网IP加上7500端口就可以访问到frp的可视化界面。
搭建客户端
下载frp客户端:Github releases页面,下载windows版,注意不是darwin版,最新版可能会没有,请下载往期版本
编辑frpc.ini文件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17COPY[common]
server_addr = [你的服务器的公网IP]
server_port = 7000
token = [password_2] #刚设置的身份验证码
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 7249 #本地需要映射的端口号
remote_port = 7249 #服务器上开放的端口号
#想要添加端口直接再按该格式添加
#[ssh]
#type = tcp
#local_ip = 127.0.0.1
#local_port = 8096 #本地需要映射的端口号
#remote_port = 8096 #服务器上开放的端口号进入cmd命令行窗口,运行该命令:
1
COPYfrpc.exe -c frpc.ini
访问[你的公网IP]:7050的frp界面的Proxies/TCP板块,显示online则为成功,到这里整个流程就结束了。
如果有什么问题,欢迎在评论区交流,也可以给我发邮件。
