首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Docker如何搭建FRP内网穿透服务器

前置条件

一台安装了Linux操作系统的服务器(例如Ubuntu)。

服务器已经安装了Docker。

安装Docker

CentOS7/8 安装 Docker-ce

创建FRP配置文件

接下来,我们需要创建FRP的配置文件,我当前使用的版本是v0.58.0。

创建目录:

sudo mkdir -p /data/frps

创建FRP服务器配置文件 frps.toml,在最新版本配置文件已经使用toml后缀了:

sudo vim /data/frps/frps.toml

文件内容如下:

bindPort = 7000 # 服务器端口

vhostHTTPPort = 80 # http代理端口

vhostHTTPSPort = 443 # https代理端口,不需要可以忽略

auth.method = "token" # 鉴权方式

auth.token = "authpwd" # 客户端连接需要的密码

webServer.port = 7500 # 控制台端口

webServer.addr = "0.0.0.0" # 可访问控制台的ip

webServer.user = "admin" # 控制台账号

webServer.password = "password" # 控制台密码

通过Docker运行FRP容器

现在我们可以通过Docker来运行FRP服务器了。

在服务器上拉取FRP Docker镜像:

sudo docker pull snowdreamtech/frps

运行FRP容器:

sudo docker run -d -p 7000:7000 -p 80:80 -p 443:443 -p 7500:7500 -v /data/frps/frps.toml:/etc/frp/frps.toml --name frps snowdreamtech/frps

这里我们使用了 -v 参数将本地的 frps.toml 配置文件挂载到容器内,并将容器的7000端口和7500端口映射到宿主机。

验证内网穿透服务

现在,我们的FRP服务器已经在运行了。接下来,我们需要在内网机器上配置FRP客户端。

下载FRP客户端并解压,我客户端是台Win10笔记本:

修改FRP客户端配置文件 frpc.toml:

文件内容如下:

serverAddr = "120.88.888.169"# frp服务器ip

serverPort = 7000# 和frp服务器bindPort一样

auth.method = "token"

auth.token = "authpwd" # 和服务器上的一样

[[proxies]]

name = "web_https"

type = "https"

customDomains = ["www.ddz.com"]# 域名,需要已经解析到frp服务器ip

[proxies.plugin]

type = "https2http"

localAddr = "127.0.0.1:8080"# 本地应用端口,本地运行的服务的ip+port

# HTTPS 证书相关的配置,这里只需要修改证书路径即可

crtPath = "./ssl/***.crt"

keyPath = "./ssl/***.key"

hostHeaderRewrite = "127.0.0.1"

requestHeaders.set.x-from-where = "frp"

启动FRP客户端,创建bat脚本,脚本内容:

./frpc -c frpc.toml

1

至此,你可以通过访问内网的Web服务了

若有疑问,网址栏搜索218.0.48.3:8801,为您提供解决方案。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OZz4FrYZZxPr3uaQRCnq0_UQ0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券