目 录CONTENT

文章目录

服务器宝塔面板指南

Administrator
2023-04-16 / 0 评论 / 0 点赞 / 87 阅读 / 8902 字

一 前言

由于最近家里移动宽带ipv6突然被封80/443端口,而且ipv6体验也不太稳定,只能远程工具访问,导致各种不便,故而花了200RMB买了1年的服务器,打算做内网穿透方案,顺便利用VPS额外搭个🪜

二 宝塔面板

1. 技术难点:

  • Nginx、Caddy Web Server 手动配置比较复杂,使用宝塔面板配置简单化
  • FRP内网穿透 端口和 🪜的Web Server 端口冲突,内网穿透需要改为非80/443端口,如此用域名穿透访问时需要带端口号不方便
  • 反向代理和重定向

2. 宝塔优点:

XmkrK.png

  • 配置简单,内置可安装Web Server插件Nginx,可视化设置
  • 防火墙配置简单,可视化配置
  • 可设置反向代理,内网穿透改端口后通过反代不需要带端口访问
  • 可强制开启HTTPS 自动将http(80端口)访问重定向到https(443端口)

三 部署方案

1. 服务器

  • 宝塔面板:Nginx配置、防火墙配置、重定向https访问
  • FRPS: 内网穿透服务端(公网环境)
  • 🪜: X-UI 魔改版 Reality方案(待测试)

2. 客户端

  • 群晖:FRPC 及其他服务主要为Docker部署

四 部署步骤

⚠️ 服务器和域名及域名解析请提前查找相关资料提前准备好 XmQnF.png

1. 宝塔面板部署

⚠️ 需纯净环境部署,部署失败建议重置服务器后重新部署

  1. 修改系统时区
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

查看时间

date -R
  1. 安装宝塔面板(我的服务器是Debian11)
    • 官方命令:
    wget -O install.sh https://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh ed8484bec
    
  2. 配置宝塔面板

安装完成之后,复制vps给出的地址粘贴在浏览器上进入,一次输入账号和密码。 首次进入会提示 点击推荐一键安装,这个安装过程有点慢,也能需要30分钟左右,安装完成后点击网站添加你的域名

注:可先只选安装Nginx,后面需要时再安装其他

注:笔者填的是泛域名,内网穿透和🪜全部走的是A记录域名解析的服务器IP XmHA1.png

自动签发 SSL 证书,并强制开启 HTTPS

注:强制开启HTTPS 后HTTP会自动重定向跳转到HTTPS更加安全

开启自带bbr

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p
sysctl net.ipv4.tcp_available_congestion_control
lsmod | grep bbr
  1. 配置反向代理 🐷 待FRP安装并配置完后再配置,请继续下一章节FRP安装

2. 内网穿透FRP部署

1. FRPS部署

⚠️ 部署FRPS需要公网环境(理论上家宽如果有公网可以使用家宽部署)

1.1 FRPS安装

  • Install(安装)
    • Gitee
      wget https://gitee.com/mvscode/frps-onekey/raw/master/install-frps.sh -O ./install-frps.sh
      chmod 700 ./install-frps.sh
      ./install-frps.sh install
      
    • Github
      wget https://raw.githubusercontent.com/MvsCode/frps-onekey/master/install-frps.sh -O ./install-frps.sh
      chmod 700 ./install-frps.sh
      ./install-frps.sh install
      
  • Uninstall(卸载)
        ./install-frps.sh uninstall
        ```
    
  • Update(更新)
        ./install-frps.sh update
        ```
    
  • Server management(服务管理器) Usage: /etc/init.d/frps {start|stop|restart|status|config|version} et.frps status

注意重点:第2,3步不能使用默认80和443,需要做修改,也就是说除去80,443外,1-65535任意端口都可以,前提是不能有其他项目与本次想设定端口有重复,比如我这里用808代替80端口,909代替443,这样就可以避开其他程序占用80或443的弊端~

注:vhost_http_portvhost_https_port 不能是默认80/443端口,否则和宝塔面板的Nginx端口冲突,应改为其他端口,笔者改为了8080/8443端口(后面会用宝塔的反向代理解决端口问题)

剩下的如图所示,一路回车即可(遇到需要修改用户名和密码的地方自己按需修改, 默认也可以,最后会把所有信息列出来)

到这里还没完,继续按回车键,等待自动安装完成~

至此,服务端全部安装完成,下面用宝塔面板配置反向代理,目的就是让我们以后访问远程设备的时候不要后面跟着端口号,用域名直达的效果~

  • frps config 示例
# [common] is integral section
[common]
# A literal address or host name for IPv6 must be enclosed
# in square brackets, as in "[::1]:80", "[ipv6-host]:http" or "[ipv6-host%zone]:80"
bind_addr = 0.0.0.0
bind_port = 5443
# udp port used for kcp protocol, it can be same with 'bind_port'
# if not set, kcp is disabled in frps
kcp_bind_port = 5443
# if you want to configure or reload frps by dashboard, dashboard_port must be set
dashboard_port = 6443
# dashboard assets directory(only for debug mode)
dashboard_user = xxx
dashboard_pwd = xxx
# assets_dir = ./static
vhost_http_port = 8080
vhost_https_port = 8443
# console or real logFile path like ./frps.log
log_file = ./frps.log
# debug, info, warn, error
log_level = info
log_max_days = 3
# auth token
token = xxx
# It is convenient to use subdomain configure for http、https type when many people use one frps server together.
subdomain_host = frp.example.com
# only allow frpc to bind ports you list, if you set nothing, there won't be any limit
#allow_ports = 1-65535
# pool_count in each proxy will change to max_pool_count if they exceed the maximum value

1.2 反向代理配置

提前解析好一个一级域名,如果你的域名支持泛解析的话,就一起做解析,操作方法就是在A记录中添加一个“*”即可 ~当然很多域名解析商不支持泛解析,不过这个操作不影响我们后续的操作,把你对应的远程设备的域名都添加进宝塔面板的网站域名中即可,详细宝塔操作看下面,关于域名解析,这里就不做过多解释了,相信大家都会~

打开宝塔面板,添加一个网站,把需要远程控制设备的域名全部添加进去,后续有增加,也要跟着添加进来~

注:笔者使用的是泛域名,见上一章节图

php可以不用填,只用纯静态就可以,接着点击新建站点的域名,进行反向代理的配置,如图

注:笔者使用的vhost_http_port端口为8080,原作者为808,根据实际情况修改

至此反向代理配置完成~

注:笔者使用的一级域名和二级域名www作为Halo博客域名地址,一级域名需要添加重定向到www二级域名,否则后台编辑会报错网络问题 注:使用一级域名同时需要在域名解析商添加A记录解析解析(通常是@XLX8s.png

2. FRPC部署

⚠️ 内网环境部署,如NAS、OpenWrt、爱快均可

  • frpc.ini官方示例
[common]
server_addr = 127.0.0.1
server_port = 7000

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

[开启穿透的服务名称]                     
type = http                     
local_ip = 内网ip           
local_port = 内网某个服务的端口                
custom_domains = 要访问的子域名

注:上述配置中SSH通过6000端口访问而不是22端口,因为和服务器默认ssh端口冲突,需要在宝塔面板放开6000端口

3. 🪜部署

五 问题解决

  1. 子域名服务无法访问 宝塔面板防火墙开放相应服务的访问端口

  2. 群晖无法访问 群晖控制面板关闭强制跳转到HTTPS

  3. 宝塔面板后台无法访问 访问方式:ip或域名:面板端口/安全入口 Xgtea.png

六 参考资料

七 后记

🤔️ 听网友说宝塔有后门?谁来解答一下

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin
  3. QQ打赏

    qrcode qq

评论区