树莓派4B自建网页服务器指南 · 专栏导览
简介
用一块树莓派4B,在家宽环境里跑出一个公网可访问的网页服务器,总共分几步?
本专栏共 7 篇主线 + 7 篇番外,完整记录了从 TF 卡烧录到 ECS 反向代理生产闭环的全过程。无论你是刚拆封树莓派的新手,还是卡在"IPv6 拿到了但外网连不上"的老玩家,这份导览都能帮你快速找到对应的排坑篇章。
专栏结构一览
主线(必读,按顺序)
第1篇:家庭宽带使用公网 IPv6 的前置条件
第2篇:树莓派4B离线烧录 + 自定义基础配置
第3篇:TF 卡镜像备份 —— 自制 Golden Image
第4篇:Nginx 静态页 + IPv6 局域网直连与基础验证
第5篇:域名绑定 + ddns-go 动态解析
第6篇:树莓派 HTTPS 证书申请 + 公网直连验证
第7篇:阿里云 ECS 反向代理 —— 隐端口、保备案的生产方案
番外(按需阅读)
3.1:AI助力,一次实践论视角的技术复盘
3.2:老宅网络改造实录 —— 当斐讯K1遇上IPv6
4.1:锁定 NetworkManager 之后,我对新技术有了新的看法
6.1:IPv6 直连的生产化防火墙补完(参考方案)
7.1:Cloudflare Tunnel + 阿里云 CDN —— 零 ECS 备案保壳方案
7.2:从"绕过ECS"到"拥抱ECS" —— 一次完整的认知闭环
7.3:成本博弈与合规收尾 —— 一台99元ECS的五年规划
主线篇章(建议按顺序阅读)
第1篇:家庭宽带使用公网 IPv6 的前置条件
解决的问题:树莓派配好了却拿不到公网 IPv6,以为是教程错了,其实是上游网络根本没就绪。
核心内容:
- 三大运营商(电信/联通/移动)IPv6 支持情况对照
- 光猫桥接 / 路由模式下 IPv6 Pass-Through、DHCPv6-PD、RA/SLAAC 的开法
- 路由器 WAN 侧 DHCPv6-PD 与 LAN 侧 RA 的对应关系
- 树莓派侧
ip -6 addr show验证 global 地址 - test-ipv6.com 10/10 判定法
- 常见误区(能 ping DNS ≠ 有公网 IPv6、IPv6 不一定比 IPv4 快)
适合读者:还没确认家宽是否具备 IPv6 公网条件、直接上手烧系统的读者。
第2篇:树莓派4B离线烧录 + 自定义基础配置
解决的问题:Raspberry Pi Imager 在线烧录国内网络下断流,且首次启动后 WiFi 飘、IPv6 不掉、SSH 连不上。
核心内容:
- 离线镜像(Raspberry Pi OS Lite arm64)烧录流程
- 键盘布局 / 用户名密码 / WLAN 国家码(CN) / 时区(Asia/Shanghai)
- 博通 brcmfmac 防飘参数(roamoff=1、feature_disable=0x82000)
- 开机禁用 WiFi 省电(disable-wifi-pm.service)
- systemd-networkd 让位 NetworkManager 的冲突处理
- NM 接管 WiFi 并自动 SLAAC 获取公网 IPv6
- SSH 开机自启 + 局域网主机名(avahi/mDNS)访问
适合读者:刚拿到树莓派4B、准备从空白 TF 卡开始固化的读者。
第3篇:TF 卡镜像备份 —— 自制 Golden Image(上)
解决的问题:每次换卡都要重配一遍 WiFi/SSH/防飘参数,低效且易错。
核心内容:
- 清理 apt 缓存与 journal 日志
- first-boot-expand.service 首次开机自动 growpart + resize2fs
- VirtualBox + GParted Live 缩容 root 分区
- Win32DiskImager 仅读已分配分区
- 7-Zip 压成 .img.xz(约 500–600MB)
- Raspberry Pi Imager 写回新卡自动扩容
适合读者:配置已稳定、希望把"验证通过的系统态"固化为可移植基线的读者。
第4篇:Nginx 静态页 + IPv6 局域网直连与基础验证
解决的问题:树莓派能 SSH 了,但还没真正作为一个 Web 服务器被浏览器访问到。
核心内容:
- 清华镜像源替换(debian.sources / raspi.sources)
- Nginx 安装与
listen [::]:80双栈监听 - 自定义
/var/www/html/index.html - 同 WiFi 下通过
jiejinx.local、IPv4、IPv6 三种方式访问验证 - 家宽 80/443 被封、光猫 IPv6 SPI 拦截的提前说明
- 域名注册与 ICP 备案指引(阿里云示例)
适合读者:已完成基础配置、想把 Nginx 跑起来看一眼首页的读者。
第5篇:域名绑定 + ddns-go 动态解析
解决的问题:2409:xxxx 太长记不住,且运营商会定期变更公网 IPv6。
核心内容:
- 阿里云 DNS 添加 AAAA 记录(pi-ddns.jiejinx.cn)
- ddns-go 二进制安装(国内代理下载)与 systemd 注册
- SSH 隧道
-L 9877:127.0.0.1:9876访问 ddns-go Web 配置页 - 阿里云 RAM AccessKey 授权 AliyunDNSFullAccess
- IPv6 模块只开、IPv4 模块关闭的配置逻辑
- 模拟光猫重拨验证自动更新
适合读者:已有备案域名、希望用固定子域名代替多变 IPv6 地址的读者。
第6篇:树莓派 HTTPS 证书申请 + 公网直连验证
解决的问题:浏览器报"不安全",且家宽 80/443 不通只能走高位端口。
核心内容:
- Certbot 在 ARM64 编译失败 → 选型 acme.sh(纯 Shell)
- 离线安装 acme.sh + 阿里云 DNS-01 签发
jiejinx.cn泛域名 ECC 证书 - Nginx 改听 9133 ssl,证书落
/etc/nginx/ssl/ - 光猫 IPv6 SPI / 路由器 IPv6 防火墙"低档"测试连通
- 树莓派 ufw 最小放行(22 + 9133)
- 手机 4G/5G 访问
https://pi-ddns.jiejinx.cn:9133验证公网直连
适合读者:想在家宽 IPv6 上跑受信 HTTPS、能接受非标端口的读者。
第7篇:阿里云 ECS 反向代理 —— 隐端口、保备案的生产方案(上)(主线终章)
解决的问题::9133 不优雅、家宽未备案有合规风险、光猫防火墙不能长期裸奔。
核心内容:
- 双轨方案对比:主轨 ECS+frp / 备轨 ECS+ddns-go 302 跳转
- 阿里云 99 计划 ECS(Ubuntu 24.04)选购与安全组(80/443/7000/22)
- ECS 侧 acme.sh 签发主域证书,Nginx conf.d 拆分
- frps(ECS) + frpc(树莓派)隧道,remotePort 9132 回源本机 Nginx
- 备轨 Nginx 302 重定向到 pi-ddns:9133(保留家宽上传带宽)
- 备案流程与 A 记录收口到 ECS 公网 IPv4
- 主线闭环:
域名 → ECS:443 → frp隧道 → 树莓派 Nginx
适合读者:希望把服务做成"生产级"、端口隐藏、备案合规、光猫防护全开的读者。
番外篇章(按需阅读)
3.1 番外:AI助力,一次实践论视角的技术复盘
解决的问题:AI 给的通用方案在真实环境报错(如 init_resize.sh 启动失败),如何不陷进"AI 幻觉焦虑"。
核心内容:
- AI 幻觉本质 = 普遍知识 × 具体条件脱节
- 两轮循环:AI 出方向→人验证修正;人出方向→AI 补细节
- 《实践论》视角下的"认识→实践→再认识"
- 马哲第一性原理:存在决定意识,意识反作用于存在
- "认知底座"与 Golden Image 的架构类比
适合读者:用 AI 辅助排障但常被带偏、想建立验证回路的读者。
3.2 番外:老宅网络改造实录 —— 当斐讯K1遇上IPv6
解决的问题:十年老路由斐讯 K1 无 IPv6 菜单、后台密码被装维改了,怎么让树莓派拿到公网 IPv6。
核心内容:
- 光猫路由模式直拨确认 IPv6 正常
- K1 降级纯 AP:WAN 空置、LAN 互连、关 DHCP、LAN IP 改同段
- 关 DHCP 后后台进不去的固件特性与重置重配策略
- 老设备下 SLAAC 仍可从光猫拿到 2409::/64
适合读者:在老小区/出租屋用古董路由、不想换设备先跑通的读者。
4.1 番外:锁定 NetworkManager 之后,我对新技术有了新的看法
解决的问题:新技术焦虑——看到 K8s/微服务就想追,忽视自己只是要一台稳的树莓派。
核心内容:
- NM vs systemd-networkd+wpasupplicant 实测对比
- "锁定 NM"= 排除不确定性,命令跨 Debian/Ubuntu/Rocky 通用
- 增量性选择:不追新,只补当前需求未被覆盖的角落
- 技术选型终点不是"最先进"而是"最合适"
适合读者:在开源百花丛中纠结选型、想把底座收敛的人。
6.1 番外:IPv6 直连的生产化防火墙补完(参考方案)
解决的问题:家用路由 IPv6 防火墙只有"高/低"两档,低档裸奔、高档全拦,长期直连怎么办。
核心内容:
- 刷 OpenWrt/ImmortalWrt 拿 nftables FORWARD 粒度(仅放树莓派 9133/8080)
- ddns-go 变更 IPv6 时 Webhook 同步 nft set
- 光猫 DMZ / IPv6 端口映射妥协解与局限
- 合规红线重申:家宽直连仅限自用非经营
- ufw + fail2ban + SSH key-only 基础三件套不可省
适合读者:明确自用网盘/大流量场景、愿意刷机把防火墙补到家用天花板的读者。
7.1 番外:Cloudflare Tunnel + 阿里云 CDN —— 零 ECS 备案保壳方案
解决的问题:能不能不买 ECS,用 Cloudflare Tunnel 把树莓派暴露出去。
核心内容:
- 主域 NS 留阿里云(保备案)+ pi-cf 子域 NS 委派给 CF(橙云)
- cloudflared 安装、tunnel login、Zero Trust 绑定 PayPal 坑
- 阿里云 CDN 回源 Cloudflare Anycast IP + SNI 避 ULA 坑
- 28 天 NS 委派窗口续命 / Business 版 Partial Setup
- 光猫 IPv6 SPI 全开仍能通(纯出站 QUIC 隧道)
- 结论:能通但掉壳风险大,生产不推荐
适合读者:已有备案域名、想做零成本实验、能接受灰产边缘的进阶玩家。
7.2 番外:从"绕过ECS"到"拥抱ECS" —— 一次完整的认知闭环
解决的问题:为什么折腾一圈 Cloudflare 还是回到买 ECS。
核心内容:
- 零成本执念 → IPv6 直连(端口/防护硬伤)→ CF Tunnel(复杂/掉壳)
- 重新审视 99 元/年 ECS:固定 IPv4、全端口、备案锚点、可迁移
- ECS 不是成本而是基础设施,树莓派是算力节点
- 综合成本表:企业宽带 / 第三方穿透 / CF Tunnel / ECS 最低配
适合读者:在"要不要花这几十块"上反复横跳的读者。
7.3 番外:成本博弈与合规收尾 —— 一台99元ECS的五年规划
解决的问题:ECS 买了怎么续费不吃亏,老域名怎么退场干净。
核心内容:
- 老
.com域名注销 ICP"注销服务"而非"注销主体"的按钮陷阱 - 新
.cn域名一年一单 + 优惠口令优于多年一单 - 阿里云 99 计划 e 实例(2C2G/3M/40G)续费同价 4 次规则精读
- 首购当天续 1 次占额度(场景 2 范式)
- 老号 24→29 吃满 5 年,新号 29→31 接力 2 年悲观兜底
- 活动延期假设不赌,但留接口
适合读者:准备长期持有 ECS 保备案、想算清 5 年账的读者。
阅读路线推荐
| 你的身份 | 推荐阅读顺序 |
|---|---|
| 纯新手,树莓派刚到手 | 第1篇 → 第2篇 → 第3篇 → 第4篇 → 第5篇 → 第6篇 → 第7篇 |
| 家宽 IPv6 已确认,只差配树莓派 | 第2篇 → 第3篇 → 第4篇 → 第5篇 → 第6篇 → 第7篇 |
| IPv6 直连已通,想做生产化 | 第7篇 → 6.1 番外 → 7.1 番外 → 7.2 番外 → 7.3 番外 |
| 老路由/光猫卡住 | 第1篇 → 3.2 番外 |
| 对 AI 协作与方法论感兴趣 | 3.1 番外 → 4.1 番外 |
| 只关心花多少钱 | 7.2 番外 → 7.3 番外 |
本专栏IPv6 直连方案请自觉遵守家宽用户协议"非经营、非面向公众"前提;生产环境优先采用第7篇 ECS 反代并完成 ICP 备案。
本专栏所有内容均为原创实践记录,如有疑问欢迎在知乎对应文章下留言讨论。