宝塔面板+frp内网穿透+博客建站共存教程

前言

作者是个技术小白,非计算机相关专业,习惯使用宝塔面板建站、部署SSL证书比较方便。因为使用移动宽带,有内网穿透需求。所以,需要在不影响云服务器搭建网站的同时,使用frp进行内网穿透。

frp 是一个高性能的反向代理应用,支持 tcp, udp, http, https 协议。

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,其特点是占有内存少,并发能力强。

需要准备的东西:

  • 一台装好宝塔面板和Nginx的服务器,这里使用腾讯云轻量应用服务器。
  • 一个解析好的域名,最好使用支持泛解析的服务,这里使用腾讯DNSPod。

1.配置frp服务端(frps)

首先用ssh连接vps,切换到root用户,输入脚本安装命令安装frps。

Aliyun(大陆地区VPS适用)

Github

frps脚本

注意:http和https不能使用默认80和443端口,需要做修改,也就是说除了80,443外,1-65535任意端口都可以,前提是不能有其他项目占用想要设置的端口,比如作者用808代替80端口,909代替443,这样就可以避开其他程序占用80或443的问题。

其他设置如图所示,一路回车即可。遇到需要修改用户名和密码的地方,可以按需修改,也可以默认,最后会把所有信息列出来。

frps相关参数设置

frps参数确认

这一步是让你确认配置,还没有安装成功,继续按回车键,等待自动安装完成。

frps安装成功

至此,frp服务端安装完成。

注意!注意!注意!

必须开放对应的防火墙端口,需要开放的端口包括808、909、5443、6443。

云服务器和宝塔面板的防火墙都需要开放对应端口!!!

2.宝塔面板配置

2.1域名解析

提前解析好域名,如果你的域名支持泛解析的话,就一起做解析,操作方法就是在A记录中添加一个“*”即可。

一级域名泛解析示例

本文使用的是二级域名进行泛解析。

二级域名泛解析示例

如果域名解析商不支持泛解析,也不影响后续操作,把需要用到的域名全部解析即可。

2.2宝塔面板建站

宝塔面板建站

首先点击左侧的
网站
,之后点击上方绿色的
添加站点
,把你对应远程设备的域名都添加进宝塔面板的网站域名中即可,后续有增加,也要跟着添加进来。PHP版本选择
纯静态

2.3设置反向代理

站点设置反向代理

点击新建站点的
设置
,点击对话框中左侧的
反向代理
。代理名称随便写,目标URL输入
http://127.0.0.1:808
,点击
保存

至此,反向代理配置完成。

3.frp客户端配置(frpc)

3.1OpenWrt中frp内网穿透客户端

注意:固件是否集成frp内网穿透插件,要看编译固件的作者。如果没有集成该插件,可自行安装。

进入
服务-frp内网穿透
,具体设置如下:

OpenWrt-frp客户端设置

点击保存后继续点击下方的
添加
,进行内网设备的相应设置。

OpenWrt-frp客户端添加服务

3.2群晖DSM使用frp客户端

如果没有OpenWrt,可以在群晖使用frpc docker进行内网穿透。

3.2.1Docker镜像下载

打开
Docker
,点击
注册表
,搜索
frpc
。选择
stilleshan/frpc
下载,选择
latest
为最新版本。这个镜像是参考教程的博主部署的。
注册表搜索frpc

下载frpc镜像
选择latest版本

3.2.2配置frpc.ini

在群晖NAS任意位置新建或者上传frpc.ini文件。使用群晖的文本编辑套件或
Notepad++
等编辑器来创建和编辑.ini文件,避免Windows下的后缀问题导致容器错误。

本文以
/docker/frpc/frpc.ini
为例,文件路径如图:
设置配置文件路径

frpc.ini配置示例

选择
映像
,双击
stilleshan/frpc:latest

创建容器
勾选
使用高权限执行容器
,点击
高级设置

容器常规设置
选择卷,添加文件,指定到你frpc.ini所在的位置,装载路径为
/frp/frpc.ini

注意:装载路径由镜像作者规定,不能修改,请直接复制粘贴。

设置文件装载路径
选择
网络
,勾选
使用与Docker Host相同的网络
,点击
应用

设置网络
点击
应用
完成配置。
应用设置
容器中可以看到frpc正在运行中。之后可以随时停止容器,编辑frpc.ini来配置你的域名,再次启动容器即可。全程无需使用命令行来操作。
容器运行

至此,全部配置完成,可以随时随地访问自己的内网设备了~

4.实现SSL访问

4.1申请证书

通过腾讯云DNSPod申请免费证书,有效期1年。申请后很快会提示通过,申请了2次都在5分钟内审核成功。

申请成功后,服务器类型
其他
,点击
下载

下载其他类型证书

4.2部署证书

登录宝塔面板,打开
网站
,站点设置
SSL
,将对应的key和pem文本粘贴进去,点击
保存
,开启
强制HTTPS
即可。

注意:免费证书不支持泛域名,所以必须单独设置解析,单独添加站点开启HTTPS访问。

5.脚本相关命令

Uninstall(卸载)

Update(更新)

Server management(服务管理器)

需要注意的问题

如果你使用的国内服务器,因为没有备案,即使设置成功也无法使用域名直接访问。

解决方案:

  1. 使用香港或国外服务器;
  2. 申请备案。

参考链接:

  1. https://wxf2088.xyz/2930.html
  2. https://www.ioiox.com/archives/26.html

https://blog.holob.cn/2022/02/04/frp-nginx/

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