news 2026/8/5 5:54:07

利用内网穿透与宝塔面板将旧电脑改造为个人服务器

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
利用内网穿透与宝塔面板将旧电脑改造为个人服务器

1. 项目概述:让旧电脑重获新生

手头有台淘汰下来的旧电脑,是直接扔了还是当废品卖了?对于咱们搞技术、爱折腾的人来说,这简直是暴殄天物。今天要聊的,就是把这台“电子垃圾”变废为宝,让它成为一台24小时在线、能从任何地方访问的私人服务器。听起来是不是很酷?而且整个过程,远比你想的要简单。我们不需要去购买昂贵的云服务器,也不用去研究复杂的网络配置,核心思路就是利用内网穿透技术,搭配一个图形化的服务器管理面板,比如宝塔面板,再装上一个像WordPressEmlog这样的博客系统。这样一来,你不仅拥有了一个完全由自己掌控的网站、博客、网盘或是测试环境,还顺带解决了旧设备的去处问题,可谓一举多得。

这个方案特别适合那些对Linux服务器运维不太熟悉,但又想拥有自己服务器环境的朋友。你不需要记住一大堆命令行,大部分操作都可以在浏览器里点点鼠标完成。我们将从硬件准备、系统安装、内网穿透配置,到宝塔面板部署、网站搭建,一步步拆解,确保即使你是新手,也能跟着操作成功。整个过程的核心,就在于“打通”你家宽带的内网,让外网能访问到你家里的这台旧电脑,这就是内网穿透的魔力。

2. 核心思路与方案选型:为什么是“旧电脑+内网穿透+宝塔”?

2.1 硬件选择:什么样的旧电脑能胜任?

首先,别小看你的旧电脑。对于搭建一个个人博客、小型网站、家庭媒体库或者开发测试环境,近十年内生产的台式机或笔记本,其性能都绰绰有余。

  • CPU:双核处理器是底线,四核更好。Intel Core i3/i5 二代以上,或者AMD的同级别产品,完全够用。
  • 内存:这是关键。至少4GB,推荐8GB或以上。因为我们要运行Linux系统、宝塔面板、Web服务(如Nginx/Apache)、数据库(如MySQL)以及PHP/Python等运行时环境,内存是保证流畅运行的基础。
  • 硬盘:一块机械硬盘(HDD)即可,容量建议500GB起步,用于存放系统、网站文件和数据库。如果有一块固态硬盘(SSD)作为系统盘,那体验会飞跃式提升,开机和服务的响应速度会快很多。
  • 网络:必须通过网线(RJ45)连接到家里的路由器。强烈不建议使用Wi-Fi,因为作为服务器需要7x24小时稳定运行,有线连接的稳定性和延迟远胜无线。
  • 功耗与噪音:这是旧电脑作为服务器的最大短板。老台式机功耗可能高达100-200瓦,长期开机电费不容忽视,且风扇噪音可能较大。笔记本在这方面有天然优势,功耗通常只有几十瓦,更安静。如果可能,在BIOS里设置风扇为“静音模式”,并将电脑放在通风良好的地方。

注意:在开始前,请备份旧电脑里的重要数据,因为我们会格式化硬盘,重新安装操作系统。

2.2 技术栈选型:简单、高效、图形化

为什么选择这套组合?核心目标是降低门槛提高效率

  1. 操作系统:Ubuntu Server LTS

    • 为什么选它?在服务器领域,Linux是绝对的主流,而Ubuntu Server以其友好的社区、丰富的软件包和长期支持(LTS)版本著称,对新手相对友好。我们不需要图形桌面,纯净的服务器系统更节省资源。
    • 替代方案:CentOS Stream、Debian也是优秀的选择,但Ubuntu的教程和问题解决方案在网上更容易找到。
  2. 管理面板:宝塔面板

    • 为什么选它?这是本项目的“灵魂”,它把复杂的Linux服务器运维(安装软件、配置网站、管理数据库、设置防火墙等)全部变成了Web界面上的按钮和表单。你不需要记忆apt-get install nginx这样的命令,点几下鼠标就能完成。
    • 关于“开心版”:网络热词中提到了“宝塔开心版”。这里必须强调,强烈建议使用官方正版。开心版通常指被修改过的、绕过付费验证的版本,其稳定性和安全性无法保证,可能内置后门或恶意代码,导致你的服务器成为“肉鸡”。宝塔面板基础功能对个人用户是免费的,完全够用。
  3. 内网穿透工具:frp (Fast Reverse Proxy)

    • 为什么选它?这是打通内网的关键。你家宽带运营商分配给你的通常是动态公网IP,且位于运营商的大内网(NAT)之后,外网无法直接访问。frp的原理是,你需要一台具有公网IP的服务器(称为“服务端”或“frps”),和你家里的旧电脑(称为“客户端”或“frpc”)建立连接。当外网用户访问公网服务器的某个端口时,请求会被frp服务端转发到你家内网的frp客户端,再由客户端交给旧电脑上真正的服务(如宝塔面板、网站)。
    • 公网服务器从哪来?你需要购买一台最基础的云服务器(如阿里云、腾讯云的入门级ECS,约几十元每月),或者使用某些厂商提供的免费内网穿透服务(但通常有流量或带宽限制)。这是本项目唯一可能产生持续费用的地方。
  4. 网站程序:WordPress

    • 为什么选它?WordPress是全球使用最广泛的博客/CMS系统,拥有海量的主题和插件,几乎可以搭建任何类型的网站。生态成熟,遇到问题很容易搜索到答案。热词中的Emlog也是一个轻量级的国产博客系统,选择它同样可以。

2.3 整体工作流程梳理

理解了各个组件,我们来看它们是如何协同工作的:

  1. 本地端(旧电脑):安装Ubuntu -> 安装宝塔面板 -> 通过宝塔创建网站(安装WordPress)。
  2. 网络打通:在具有公网IP的云服务器上部署frp服务端(frps)。在旧电脑上部署frp客户端(frpc),并配置它将本地宝塔面板的端口(如8888)和网站端口(如80)映射到云服务器的特定端口上。
  3. 外部访问:当你从公司或外地,想访问家里的网站时,浏览器访问的是http://你的云服务器公网IP:映射的网站端口。这个请求先到达云服务器,云服务器上的frps识别后,通过已建立的隧道,将请求转发给旧电脑的frpc,frpc再交给本地的Nginx(由宝塔管理),最终呈现你的WordPress网站。

3. 实操准备与系统安装

3.1 制作系统安装U盘

首先,我们需要在另一台可用的电脑上,为旧电脑制作一个Ubuntu Server的安装U盘。

  1. 下载系统镜像:访问Ubuntu官网,下载最新的LTS版本(如Ubuntu 22.04 LTS)的服务器版ISO镜像文件。
  2. 准备U盘:找一个容量不小于4GB的U盘,将其中的数据备份,制作过程会格式化U盘。
  3. 使用烧录工具
    • Windows用户推荐使用 Rufus ,Mac用户可使用 balenaEtcher 。
    • 以Rufus为例,插入U盘后运行软件,“设备”选择你的U盘,“引导类型选择”点击“选择”,找到下载的ISO文件。其他参数保持默认,点击“开始”即可。这个过程会清除U盘所有数据。

3.2 在旧电脑上安装Ubuntu Server

将制作好的U盘插入旧电脑,开机并进入BIOS/UEFI设置(通常按F2、F12、Del键),将启动顺序设置为从U盘优先启动。

  1. 启动安装程序:从U盘启动后,会进入Ubuntu安装界面。选择语言,然后选择“Install Ubuntu Server”。
  2. 键盘布局:选择你的键盘布局,通常就是默认的。
  3. 网络连接这一步非常重要。确保旧电脑通过网线连接到了路由器,安装程序会自动配置网络。如果使用Wi-Fi,在这里需要选择Wi-Fi网络并输入密码,但如前所述,不建议。
  4. 配置代理:通常直接跳过,不需要设置。
  5. 镜像地址:选择默认的即可,它会从Ubuntu官方服务器下载软件包。
  6. 磁盘分区:这是关键步骤。对于新手,最安全的选择是“使用整个磁盘并设置LVM”。安装程序会自动为你分区,包括/(根目录)、swap(交换空间)等。注意:这会清空硬盘上所有现有数据!
  7. 设置用户:输入你的姓名、服务器名称(如my-home-server)、用户名和密码。务必记住这个用户名和密码,这是你以后登录系统和管理员权限的凭证。
  8. 安装SSH服务:在软件选择界面,一定要勾选“Install OpenSSH server”。这允许你以后从其他电脑通过SSH远程连接管理这台服务器,非常方便。
  9. 等待安装:确认信息后,安装程序开始复制文件并配置系统。完成后,它会提示你重启。重启前拔掉U盘。

3.3 初始系统配置与远程连接

重启后,用刚才设置的用户名密码登录本地命令行。但我们更推荐从你日常使用的主力电脑(Windows/Mac)上通过SSH远程管理它。

  1. 获取旧电脑的本地IP地址:在旧电脑上输入命令ip a。你会看到类似inet 192.168.1.100/24的信息,这个192.168.1.100就是它的内网IP地址。
  2. 从主力电脑SSH连接
    • Windows用户:可以使用PowerShell或安装 Git Bash 、 MobaXterm 等工具。打开终端,输入:
      ssh 你的用户名@旧电脑的IP地址 # 例如:ssh zhangsan@192.168.1.100
    • Mac/Linux用户:直接打开终端,输入上述ssh命令。
  3. 首次连接会提示确认主机密钥,输入yes,然后输入用户密码。登录成功后,你就进入了旧电脑的命令行环境,后续所有操作都可以在这里进行,无需再面对旧电脑的屏幕。

实操心得:安装系统时,确保网络畅通至关重要,否则后续软件包下载会失败。如果安装过程中下载速度极慢,可以尝试在配置镜像地址时,选择国内的镜像源,例如阿里云(mirrors.aliyun.com)或清华(mirrors.tuna.tsinghua.edu.cn)的镜像,能极大提升速度。

4. 部署与管理核心:宝塔面板

4.1 安装宝塔面板

通过SSH登录到你的旧电脑服务器后,执行宝塔官方的一键安装脚本。这是最通用的方法。

# 对于 Ubuntu/Debian 系统,使用以下命令: wget -O install.sh https://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh

执行命令后,脚本会自动安装依赖并部署宝塔面板。整个过程可能需要5-15分钟,取决于网络速度。安装完成后,脚本会输出至关重要的信息,请务必截图或复制保存

  • 宝塔面板登录地址:通常是http://你的服务器内网IP:8888(例如http://192.168.1.100:8888)。
  • 用户名:通常是admin
  • 密码:一串随机生成的密码,如f1a2b3c4d5

4.2 初始化宝塔面板

  1. 在你的主力电脑浏览器中,输入刚才保存的宝塔面板地址(注意是http,不是https)。你会看到一个安全提示,点击“高级”->“继续前往”即可。
  2. 输入用户名和密码登录。
  3. 首次登录,宝塔会弹出一个“推荐安装套件”的窗口。这里我们选择LNMP套件(Linux, Nginx, MySQL, PHP)。这是运行WordPress等PHP程序的经典环境。
    • 软件版本选择建议
      • Nginx:选择稳定版,如1.22。
      • MySQL:选择5.7或8.0。如果服务器内存小于2GB,选5.7更省资源;内存大于4GB,可选8.0。
      • PHP:选择7.4或8.0。WordPress对7.4支持非常成熟。
      • phpMyAdmin:务必勾选,这是一个通过网页管理MySQL数据库的图形化工具,极其方便。
  4. 点击“一键安装”,宝塔会在后台自动编译安装这些软件。这个过程可能耗时30分钟到1小时以上,你可以关闭浏览器窗口,安装完成后会通过面板消息或邮件(如果配置了)通知你。

4.3 创建你的第一个网站

环境安装好后,我们就可以创建网站了。

  1. 在宝塔面板左侧菜单,点击“网站” -> “添加站点”。
  2. 域名:由于我们还没有公网域名,且目前只能内网访问,这里可以填写旧电脑的内网IP地址,或者一个你喜欢的测试域名,例如myhome.local同时,在“备注”里填上容易识别的名字,如“我的个人博客”。
  3. 根目录:保持默认即可,通常是/www/wwwroot/myhome.local
  4. FTP和数据库:勾选“创建FTP”和“创建数据库”。
    • 数据库名和用户名:可以都设为wordpress(或自定义)。
    • 密码:设置一个强密码,并记录下来。不要使用root123456这类简单密码。
  5. PHP版本:选择你刚才安装的版本,如PHP-7.4。
  6. 点击“提交”。站点就创建好了,同时FTP账号和MySQL数据库也一并创建完成。

4.4 安装WordPress

现在,我们将WordPress程序文件放到网站根目录。

  1. 下载WordPress:在宝塔面板的“文件”管理中,进入你网站的根目录(如/www/wwwroot/myhome.local)。点击“远程下载”,输入WordPress中文官网的下载链接:https://cn.wordpress.org/latest-zh_CN.zip,点击“确定”下载。
  2. 解压:下载完成后,选中这个ZIP文件,点击“解压”。解压后会得到一个wordpress文件夹。
  3. 移动文件:进入wordpress文件夹,全选所有文件,点击“剪切”。然后返回上级目录(网站根目录),点击“粘贴”。这样就把所有WordPress文件移动到了根目录。
  4. 配置数据库:在浏览器访问你的网站地址(目前是内网地址,如http://192.168.1.100http://myhome.local,如果后者不行,请检查你主力电脑的hosts文件是否配置了192.168.1.100 myhome.local)。你会进入WordPress著名的“五分钟安装”页面。
  5. 点击“现在就开始!”,填写数据库信息:
    • 数据库名:刚才创建时填写的,如wordpress
    • 用户名:同上,如wordpress
    • 密码:刚才记录的数据库密码。
    • 数据库主机:填写localhost
    • 表前缀:保持wp_即可(为了安全,可以改成如wp_abc_这样的随机前缀)。
  6. 提交后,如果信息正确,会进入下一步,设置站点标题、管理员用户名、密码和邮箱。请务必使用强密码并记住这个管理员账号密码!
  7. 安装完成,用设置的管理员账号登录WordPress后台(http://你的站点地址/wp-admin)。至此,你的网站已经在内网完美运行了。

避坑指南:在宝塔面板创建网站时,如果遇到“数据库连接失败”的错误,最常见的原因是MySQL服务没有启动,或者数据库用户名、密码错误。请到宝塔面板“软件商店”找到已安装的MySQL,确保其状态是“运行中”。也可以点击MySQL的“设置”->“root密码”,修改或重置密码后再试。

5. 打通任督二脉:内网穿透配置详解

现在,网站只能在家庭局域网内访问。我们的目标是让它在公网可访问。这就需要用到内网穿透工具frp。

5.1 准备公网服务器(FRP服务端)

你需要一台有公网IP的云服务器(VPS)。以腾讯云/阿里云最基础的1核1G配置为例,完全足够作为frp服务端。

  1. 购买并登录云服务器:选择安装Ubuntu 20.04/22.04 LTS系统。通过云厂商提供的Web控制台或SSH工具登录。
  2. 下载并配置frp服务端
    # 切换到root用户或使用sudo sudo -i # 创建frp目录并进入 mkdir -p /opt/frp && cd /opt/frp # 下载frp最新版本,请从GitHub release页面获取最新链接 wget https://github.com/fatedier/frp/releases/download/v0.52.3/frp_0.52.3_linux_amd64.tar.gz # 解压 tar -zxvf frp_0.52.3_linux_amd64.tar.gz # 进入解压后的目录,服务端文件通常带`s`后缀 cd frp_0.52.3_linux_amd64
  3. 编辑服务端配置文件frps.toml(frp新版本使用TOML格式):
    vi frps.toml
    输入以下基本配置:
    bindPort = 7000 auth.method = "token" auth.token = "your_strong_token_here" # 设置一个强令牌,客户端需要匹配
    • bindPort:frp服务端监听的端口,用于与客户端建立控制连接。
    • auth.token:用于客户端和服务端之间的认证,请替换your_strong_token_here为你自己设定的复杂字符串。
  4. 启动frp服务端
    ./frps -c ./frps.toml
    为了让它能在后台持续运行,我们可以使用systemd来管理。创建一个服务文件:
    vi /etc/systemd/system/frps.service
    输入以下内容:
    [Unit] Description=Frp Server Service After=network.target [Service] Type=simple User=nobody Restart=on-failure RestartSec=5s ExecStart=/opt/frp/frp_0.52.3_linux_amd64/frps -c /opt/frp/frp_0.52.3_linux_amd64/frps.toml [Install] WantedBy=multi-user.target
    注意修改ExecStart中的路径为你实际的frps可执行文件和配置文件的路径。
  5. 启用并启动服务
    sudo systemctl daemon-reload sudo systemctl enable frps sudo systemctl start frps sudo systemctl status frps # 检查状态,应为active (running)
  6. 配置防火墙:在云服务器的安全组(防火墙)中,放行端口7000(frp控制端口),以及我们后续要映射的端口(例如8080用于宝塔面板,8081用于网站)。

5.2 配置家庭旧电脑(FRP客户端)

回到你的旧电脑(通过SSH连接)。

  1. 下载并配置frp客户端

    # 在旧电脑上操作 cd /opt sudo wget https://github.com/fatedier/frp/releases/download/v0.52.3/frp_0.52.3_linux_amd64.tar.gz sudo tar -zxvf frp_0.52.3_linux_amd64.tar.gz cd frp_0.52.3_linux_amd64
  2. 编辑客户端配置文件frpc.toml

    sudo vi frpc.toml

    输入以下配置,这是一个配置两个服务(宝塔面板和网站)的示例:

    serverAddr = "你的云服务器公网IP" serverPort = 7000 auth.method = "token" auth.token = "your_strong_token_here" # 必须和服务端设置的一致 [[proxies]] name = "baota-panel" type = "tcp" localIP = "127.0.0.1" localPort = 8888 remotePort = 8080 [[proxies]] name = "my-website" type = "tcp" localIP = "127.0.0.1" localPort = 80 remotePort = 8081
    • serverAddr:填写你的云服务器公网IP。
    • serverPort:和服务端bindPort一致(7000)。
    • auth.token:和服务端设置的令牌一致。
    • [[proxies]]:每个[[proxies]]段定义一个要穿透的服务。
      • name:服务名称,自定义。
      • type:协议类型,Web服务用tcp
      • localIP:本地服务监听的IP,通常是127.0.0.1或旧电脑内网IP。
      • localPort:本地服务的端口。宝塔面板默认是8888,HTTP网站默认是80
      • remotePort:在云服务器上开放的端口。外网用户将通过访问云服务器IP:remotePort来访问你的内网服务。这里我们将宝塔映射到8080,网站映射到8081。
  3. 启动frp客户端

    ./frpc -c ./frpc.toml

    同样,我们也创建systemd服务来管理:

    sudo vi /etc/systemd/system/frpc.service
    [Unit] Description=Frp Client Service After=network.target [Service] Type=simple User=nobody Restart=on-failure RestartSec=5s ExecStart=/opt/frp_0.52.3_linux_amd64/frpc -c /opt/frp_0.52.3_linux_amd64/frpc.toml [Install] WantedBy=multi-user.target

    启用并启动:

    sudo systemctl daemon-reload sudo systemctl enable frpc sudo systemctl start frpc sudo systemctl status frpc

5.3 测试与访问

如果一切配置正确,现在你应该可以从外网访问了:

  1. 访问宝塔面板:在任意能上网的电脑浏览器中,输入http://你的云服务器公网IP:8080。你应该能看到宝塔面板的登录页面。使用你之前保存的宝塔账号密码登录。
  2. 访问你的网站:在浏览器中输入http://你的云服务器公网IP:8081。你应该能看到你的WordPress网站首页。

重要安全警告:将宝塔面板暴露到公网是高风险行为。务必立即做两件事:1. 在宝塔面板“面板设置”中,修改默认的8888端口为一个不常见的高位端口(如35289),并同步修改frpc配置中的localPort。2. 在宝塔面板“安全”中,设置“面板别名”和“安全入口”,即访问路径后需要加一个随机字符串(如/abc123)。同时,将面板的登录用户名从admin改掉,并使用极其复杂的密码。云服务器的安全组,只开放必要的端口(如网站80/443,frp的7000,以及修改后的面板端口)。

6. 进阶配置与优化

6.1 使用域名替代IP访问

总是记IP和端口很麻烦,也不专业。我们可以绑定域名。

  1. 购买域名:在阿里云、腾讯云等平台购买一个便宜的域名(如.xyz.top后缀的,首年通常很便宜)。
  2. 域名解析:在域名管理后台,添加两条A记录:
    • 记录1:主机记录@, 记录值你的云服务器公网IP, 用于主网站。
    • 记录2:主机记录panel(或其他你喜欢的子域名), 记录值你的云服务器公网IP, 用于宝塔面板。
  3. 配置宝塔面板网站
    • 在宝塔面板的“网站”设置中,编辑你之前创建的站点。
    • 在“域名”一栏,将原来的内网IP或测试域名,修改为你刚解析的正式域名(例如www.yourdomain.com),多个域名用换行隔开。
    • 保存。
  4. 修改frp配置:要让域名生效,我们需要让云服务器的Nginx(或Web服务器)作为反向代理。首先在云服务器上安装Nginx:
    sudo apt update && sudo apt install nginx -y
  5. 配置Nginx反向代理:在云服务器上创建两个Nginx配置文件。
    • 网站代理配置 (/etc/nginx/conf.d/website.conf):
      server { listen 80; server_name www.yourdomain.com yourdomain.com; # 你的域名 location / { proxy_pass http://127.0.0.1:8081; # 转发到frp映射的本地端口 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
    • 宝塔面板代理配置 (/etc/nginx/conf.d/panel.conf):
      server { listen 80; server_name panel.yourdomain.com; # 你的面板子域名 # 安全入口,假设你在宝塔设置的安全入口是 /abc123 location /abc123 { proxy_pass http://127.0.0.1:8080/abc123; # 注意端口和安全入口路径 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; ... # 其他proxy_set_header同上 } # 禁止直接通过IP或非安全入口访问 location / { return 403; } }
  6. 测试Nginx配置并重载:
    sudo nginx -t sudo systemctl reload nginx
    现在,你就可以通过http://www.yourdomain.com访问网站,通过http://panel.yourdomain.com/abc123访问宝塔面板了。

6.2 启用HTTPS(SSL证书)

让网站支持HTTPS,更安全,也是搜索引擎的推荐做法。宝塔面板可以一键申请免费的Let‘s Encrypt证书。

  1. 在宝塔面板的“网站”列表中,点击你网站对应的“设置”。
  2. 进入“SSL”选项卡,选择“Let‘s Encrypt”。
  3. 勾选你要申请证书的域名(如www.yourdomain.comyourdomain.com),选择“文件验证”方式(最简单)。
  4. 点击“申请”。宝塔会自动完成验证和证书部署。
  5. 申请成功后,可以勾选“强制HTTPS”,这样所有HTTP请求都会被重定向到HTTPS。
  6. 对于云服务器上的Nginx代理,也需要配置SSL。你需要将宝塔申请到的证书文件(通常在/www/server/panel/vhost/cert/你的域名/目录下,包含.key.pem文件)复制到云服务器上,然后修改云服务器Nginx的配置文件,监听443端口并配置SSL证书路径。这是一个相对进阶的操作,如果觉得复杂,可以暂时只让内网服务(WordPress)开启HTTPS,外网通过HTTP访问云服务器代理(安全性稍低,但配置简单)。

6.3 性能与安全优化

  • 宝塔面板优化
    • 修改默认端口和安全入口:如前所述,这是必须做的。
    • 定期更新:在宝塔面板首页,及时更新面板和已安装的软件。
    • 防火墙设置:在宝塔“安全”页面,只开放必要的端口(如SSH的22, 你修改后的面板端口, frp的7000等)。关闭不必要的端口。
    • 计划任务:设置定期备份网站文件和数据库到另一个位置(如另一块硬盘、网盘)。
  • WordPress优化
    • 安装缓存插件:如WP Super Cache或W3 Total Cache,可以显著提升网站访问速度。
    • 选择轻量主题:避免使用功能过于复杂、加载缓慢的主题。
    • 控制插件数量:只安装必需的插件,定期检查并停用不用的插件。
  • 服务器基础优化
    • 设置Swap分区:如果内存较小(如2GB),可以增加Swap空间,防止内存耗尽导致服务崩溃。可以使用宝塔面板的“Linux工具箱”或命令行创建。
    • 监控资源:在宝塔面板“监控”中,观察CPU、内存、磁盘IO的使用情况,及时发现异常。

7. 常见问题与故障排查实录

在实际操作中,你几乎一定会遇到一些问题。下面是我踩过坑后总结的排查清单。

问题现象可能原因排查步骤与解决方案
无法通过SSH连接旧电脑1. IP地址错误。
2. SSH服务未运行。
3. 防火墙(UFW)阻止了22端口。
1. 在旧电脑显示器上确认IP (ip a)。
2. 运行sudo systemctl status ssh检查服务状态,未运行则sudo systemctl start ssh
3. 运行sudo ufw status,如果激活,运行sudo ufw allow 22或暂时禁用sudo ufw disable(生产环境慎用)。
宝塔面板安装脚本执行失败1. 网络问题,无法连接下载源。
2. 系统缺少基础依赖。
1. 尝试更换系统软件源为国内镜像(如阿里云源),然后sudo apt update再运行安装脚本。
2. 手动安装基础依赖:sudo apt install -y wget curl git
访问http://内网IP:8888打不开宝塔1. 宝塔服务未启动。
2. 本地防火墙或宝塔面板防火墙未放行8888端口。
1. SSH登录后运行sudo bt status查看面板状态,sudo bt restart重启。
2. 在宝塔面板“安全”页面,检查8888端口是否在放行列表。在旧电脑上运行sudo ufw allow 8888(如果用了UFW)。
WordPress安装时提示“建立数据库连接错误”1. 数据库信息填写错误。
2. MySQL服务未运行。
3. 数据库用户没有远程或本地登录权限。
1. 仔细核对宝塔创建网站时生成的数据库名、用户名、密码。
2. 去宝塔“软件商店”确保MySQL状态为“运行”。
3. 在宝塔面板的“数据库”管理中,检查该用户的“权限”是否为“本地服务器”。可以尝试修改权限为“所有人”或“指定IP”(%)。
frp客户端连接失败 (login to server failed)1. 云服务器安全组未放行7000端口。
2. 云服务器或旧电脑的本地防火墙阻止。
3.frps.tomlfrpc.toml中的auth.token不一致。
4. 云服务器公网IP填写错误。
1. 登录云服务器控制台,检查安全组规则,确保入方向允许TCP:7000。
2. 在云服务器上运行sudo ufw statussudo iptables -L检查防火墙规则。
3. 逐字核对两个配置文件中的token字符串是否完全一致。
4. 在云服务器上运行curl ifconfig.me获取公网IP并核对。
能连接frp,但无法访问网站 (Connection refused)1. frpc配置中的localIPlocalPort错误。
2. 旧电脑上的本地服务(如Nginx)未运行或未监听对应端口。
1. 在旧电脑上运行 `ss -tlnp
通过域名访问显示Nginx 403 Forbidden1. Nginx配置中,网站根目录权限不正确。
2. 宝塔面板中,网站目录的“防跨站攻击(open_basedir)”设置冲突。
1. 检查网站根目录(如/www/wwwroot/yourdomain.com)的所有者和权限,通常应该是www:www和755。sudo chown -R www:www /www/wwwroot/yourdomain.com
2. 在宝塔网站设置中,关闭“防跨站攻击(open_basedir)”试试(仅作测试,找到问题后应重新开启并正确配置)。
网站加载速度非常慢1. 家庭上行带宽不足(这是主要瓶颈)。
2. 旧电脑性能瓶颈。
3. 未启用缓存。
1. 这是家用宽带做服务器的固有缺陷。可以测试家庭网络的上行速度(非下行速度)。考虑升级宽带或使用云服务器CDN加速静态资源。
2. 检查宝塔监控,看CPU、内存、磁盘IO是否吃紧。升级硬件或优化服务。
3. 务必在WordPress中安装并配置缓存插件。

我个人在实际操作中的体会是,内网穿透最关键的环节是网络调试。当遇到连接问题时,一定要遵循“从内到外,逐层排查”的原则:先确保旧电脑本地服务能访问(curl localhost:80),再确保frp客户端能连上服务端(查看frpc日志sudo journalctl -u frpc -f),最后检查云服务器的防火墙和安全组。耐心查看每一层的日志信息,大部分错误都有明确的提示。另外,对于长期运行的服务器,稳定性比性能更重要。做好定期备份,并设置简单的监控(比如宝塔的计划任务,定期curl自己的网站,失败则发邮件报警),能让你睡得更加安稳。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/5 5:53:42

IDEA2025.2新特性解析:AI编码与性能监控升级

1. IDEA2025.2 版本深度解析:开发者必看的新特性作为一名使用IntelliJ IDEA超过8年的老用户,每次大版本更新我都会第一时间体验并记录变化。2025.2版本带来的不仅是界面微调,更有多个颠覆性的生产力改进。最让我惊喜的是AI辅助编码能力质的飞…

作者头像 李华
网站建设 2026/8/5 5:53:35

Reloaded-II终极下载优化指南:从新手到专家的顺畅体验

Reloaded-II终极下载优化指南:从新手到专家的顺畅体验 【免费下载链接】Reloaded-II Universal .NET Core Powered Modding Framework for any Native Game X86, X64. 项目地址: https://gitcode.com/gh_mirrors/re/Reloaded-II Reloaded-II作为一款强大的.N…

作者头像 李华
网站建设 2026/8/5 5:51:29

TypeScript智能体SDK实战:构建具备“活对话”能力的AI助手

大家好,最近在探索AI智能体开发时,我深刻体会到,一个优秀的智能体SDK(软件开发工具包)应该让开发者感觉像是在与一个“活”的系统对话,而不是在调用一堆冰冷的API。这种“活对话”式的开发体验,…

作者头像 李华
网站建设 2026/8/5 5:50:34

IntelliJ IDEA Markdown插件深度评测:提升技术文档编写效率的利器

1. 项目概述:为什么你需要Markdown Navigator? 如果你是一名长期在IntelliJ IDEA(或者JetBrains全家桶的其他IDE,如PyCharm、WebStorm)里进行写作、记录技术文档、编写项目README的程序员或技术写作者,那么…

作者头像 李华
网站建设 2026/8/5 5:49:27

解决Visual Studio中Qt Designer打开.ui文件闪退的完整指南

1. 问题现象与核心原因剖析如果你是一名使用Visual Studio进行Qt开发的C工程师,大概率遇到过这个让人血压飙升的场景:在VS的解决方案资源管理器里,满怀期待地双击一个.ui文件,Qt Designer界面确实弹出来了,你甚至能瞥见…

作者头像 李华
网站建设 2026/8/5 5:49:10

彻底解决Windows安装冲突:0x80070666错误诊断与四步清理指南

1. 问题诊断:当安装程序告诉你“另一个版本已存在”遇到“0x80070666 - 已安装这个产品的另一个版本”这个错误,就像你准备给房子换新锁,却发现锁芯型号对不上,旧锁的零件还卡在里面。这个错误代码是Windows Installer&#xff08…

作者头像 李华