利用Docker和宝塔搭建FRP内网穿透

小老百姓成本能省则省,能多利用则多利用设备价值,一台放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/frpc:0.38.0

–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/frpc:0.38.0

###服务器端口放行

frp应用需要使用的端口:6200,6201,7000,7500,必须请允许放行

一、云服务器安全组规则设置(相当于防火墙,需要放开对应服务端口)

阿里云服务器为例,具体操作如下:

1)进入云服务器菜单,选择左边“网络与安全”,安全组,右侧展示”安全组“列表信息,

利用Docker和宝塔搭建FRP内网穿透插图

2)点击对应安全组实例点击”配置规则“,进入安全组规则

利用Docker和宝塔搭建FRP内网穿透插图1

腾讯云服务器为例,具体操作如下:

1)点击云服务器顶部下拉菜单》选择左边安全组》选择对应实例》修改规则

利用Docker和宝塔搭建FRP内网穿透插图2

2)添加入站规则,把需要放开的对应端口添加进去保存完成利用Docker和宝塔搭建FRP内网穿透插图3

二、宝塔控制面板安全设置》放行端口

利用Docker和宝塔搭建FRP内网穿透插图4

假定你IP为:119.119.119.119,则后端访问地址为:119.119.119.119:7500

在浏览器中输入服务器对应IP:端口即可出现登录界面

利用Docker和宝塔搭建FRP内网穿透插图5

输入帐号密码登录成功后:

利用Docker和宝塔搭建FRP内网穿透插图6

三、宝塔控制面板做反向代理

假定域名为:frp.you.com,域名已解析到该服务器,点击宝塔控制面板》网站》添加站点》创建站点添加对应域名frp.you.com(填您自己的域名),提交。

利用Docker和宝塔搭建FRP内网穿透插图7

2)申请ssl证书

为省事可以先申请3个月的,let's encrypt证书

利用Docker和宝塔搭建FRP内网穿透插图8

选择对应站点选择设置》站点修改》ssl>let's encrypt选择文件验证,提交申请,通过后部署并点击强制https

3)反向代理

点击反向代理》目标url填写对应http端口

利用Docker和宝塔搭建FRP内网穿透插图9

至此服务器上的设置全部完成

### 客户端

客户端下载地址: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,点击该文件即可启用

本教程操作仅针对frp 0.38版本,其它版本未测试,新版frp 0.55服务器配置已经简化,无太多借鉴意见,本地站点配置自行解决,有需要可以留言;新版本小编有空会重新出一版操作教程。

原文链接:https://blog.csdn.net/oLiangJian1234/article/details/125026533

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享