小老百姓成本能省则省,能多利用则多利用设备价值,一台放wordpress和测试站点服务器虽然配置不高,但为了发挥更多价值,可以用于日常开发,避免多花费租用其它内网穿透产品。
本教程是在不改变宝塔部署的产品之间,利用Docker快速搭建frp实现内网穿透,这样在家、公司都能很方便管理设备或者用于日常系统开发。
### 前期准备
- 公网服务器1台,有网站没网站都是可以的,只是有特别重要的网站不建议部署,毕竟省成本不能降低安全标准。
- 域名解析:准备1个已通过工信部备对应运营商备案的域名,将自定义的2级域名(如frp.you.com)A记录指向公网服务器
### 服务器端
创建frp目录
mkdir /data/frp
创建frp配置frps.ini文件
vi /data/frp/frps.ini
添加配置内容
[common]
bind_port = 7000
vhost_http_port = 6200
vhost_https_port = 6201
dashboard_addr = 0.0.0.0
dashboard_port = 7500
dashboard_user = 20rc_com
dashboard_pwd = c8X7hsgZul8eAJUR
说明
参数名 | 参数值 | 描述 |
---|---|---|
bind_port | 7000 | 服务器公网IP地址,客户端与服务器端数据交换的端口 |
vhost_http_port | 6200 | http端口 |
vhost_https_port | 6201 | https端口 |
dashboard_addr | 0.0.0.0 | 监听IP地址0.0.0.0则所有IP可访问 |
dashboard_port | 7500 | frp服务端Dashboard监听端口,默认为7500,访问格式IP:端口 |
dashboard_user | Dashboard登录用户名 | |
dashboard_pwd | Dashboard登录密码 |
Docker安装frps
方法1:容器与主机互通
docker run --restart=always --network host -v /data/frp/frps.ini:/etc/frp/frps.ini -d --name frps snowdreamtech/frps
--network host 所有容器端口与宿主机端口互通,不需要单独做映射,容器不会单独指定IP
--restart=always 重启docker自动启动容器
方法2:端口映射法
docker run --name frp \--restart=always \-v /data/frps/frps.ini:/etc/frp/frps.ini-p 6200:6200 \-p 6201:445 \-p 7000:7000 \-p 7500:7500 \-d snowdreamtech/frps
###服务器端口放行
frp应用需要使用的端口:6200,6201,7000,7500,必须请允许放行
一、云服务器安全组规则设置(相当于防火墙,需要放开对应服务端口)
阿里云服务器为例,具体操作如下:
1)进入云服务器菜单,选择左边“网络与安全”,安全组,右侧展示”安全组“列表信息,
2)点击对应安全组实例点击”配置规则“,进入安全组规则
腾讯云服务器为例,具体操作如下:
1)点击云服务器顶部下拉菜单》选择左边安全组》选择对应实例》修改规则
2)添加入站规则,把需要放开的对应端口添加进去保存完成
二、宝塔控制面板安全设置》放行端口
假定你IP为:119.119.119.119,则后端访问地址为:119.119.119.119:7500
在浏览器中输入服务器对应IP:端口即可出现登录界面
输入帐号密码登录成功后:
三、宝塔控制面板做反向代理
假定域名为:frp.you.com,域名已解析到该服务器,点击宝塔控制面板》网站》添加站点》创建站点添加对应域名frp.you.com(填您自己的域名),提交。
2)申请ssl证书
为省事可以先申请3个月的,let's encrypt证书
选择对应站点选择设置》站点修改》ssl>let's encrypt选择文件验证,提交申请,通过后部署并点击强制https
3)反向代理
点击反向代理》目标url填写对应http端口
至此服务器上的设置全部完成
### 客户端
客户端下载地址:Release v0.38.0 · fatedier/frp · GitHub
客户端frpc.ini配置内容
[common]
server_addr = 119.119.119.119
server_port = 7000[web]
type = http
local_ip = 127.0.0.1
local_port = 80
remote_port = 6200
custom_domains = frp.you.com
新建一个文本文件frpc.txt,内容如下:
frpc.exe -c frpc.ini
保存后,把文件a.txt改名为frpc.bat,点击该文件即可启用
本地站点配置自行解决,有需要可以留言。