从零打造私人云中枢:N150 + Debian + Cloudflare 内网穿透实战全记录

N150 搭建 Debian 私有云,内网穿透实现全球无感访问。

前言

为了实现数据自主和随时随地的远程办公,我利用一台 N150 (8G RAM) 小主机,搭建了以 Debian Server 为核心的家庭私有云。本文记录了从系统安装到实现全球无感访问的全过程。


1. 基础设施搭建:Debian 与 Docker

第一步是夯实地基。选择 Debian 服务器版是为了极致的稳定与轻量。

  • 系统环境:Debian Server

  • 内网 IP**

  • 核心工具:安装 Docker 与 Docker Compose,作为所有服务的运行容器。


2. 网络优化:Mihomo (Clash) 的深度调优

在家庭网络环境中,N150 同时承担了流量导流的任务。我们使用了 Mihomo 内核,但在配置过程中遇到了一个经典坑位:内网穿透流量被代理劫持。

关键突破:配置直连规则

为了防止 Cloudflare Tunnel 的流量被 Mihomo 误拦截导致连接失败(出现 198.18.x.x 虚拟 IP 报错),我们在 /etc/clashctl/resources/runtime.yamlrules 最上方加入了强制直连规则:

YAML

rules:
  - DOMAIN-SUFFIX,cloudflare.com,DIRECT
  - DOMAIN-SUFFIX,argotunnel.com,DIRECT
  - DOMAIN-KEYWORD,cloudflared,DIRECT

经验总结:修改配置后务必重启 mihomo.service,确保规则生效。


3. 全球访问:Cloudflare Tunnel 隧道打通

在没有公网 IP 的环境下,Cloudflare Tunnel 是目前最优雅的内网穿透方案。

核心步骤:

  1. 安装与注册:将 cloudflared 安装为系统服务。

  2. 协议优化:针对国内网络环境,强制使用 --protocol http2

  3. 绕过拦截:通过设置 export TUNNEL_DNS_UPSTREAM=https://223.5.5.5/dns-query,确保隧道建立时不被本地 DNS 污染干扰。

最终效果:

通过 laoqiao.life 域名,实现了外网 HTTPS 安全访问家中的 CasaOS 管理面板。


4. 私有同步桥梁:WebDAV 服务的部署

为了让笔记本软件(如 Tabby、Obsidian)能够实时同步数据,我们部署了轻量级的 WebDAV 服务。

Docker Compose 配置示例:

YAML

services:
  webdav:
    image: bytemark/webdav
    container_name: webdav
    restart: always
    ports:
      - "8080:80"
    environment:
      - AUTH_TYPE=Basic # 兼容性最好的验证方式
      - USERNAME=peter
      - PASSWORD=your_password
    volumes:
      - ./data:/var/lib/dav

实战笔记:在配置 Tabby 同步插件时,务必使用 Basic 验证模式,并确保 Cloudflare 端的 Public Hostname 正确指向了 **:8080 端口。


5. 成果展示与未来规划

目前,这台 N150 已经实现了:

  1. CasaOS 全球远程管理。

  2. Tabby 终端 跨设备自动同步配置。

  3. WebDAV 作为笔记和文件的存储后端。

下一步计划

  • 部署 Immich 管理胶片摄影作品。

  • 编写 Python 脚本实现 A 股与黄金数据 的自动化采集与展示。


Built with Hugo
Theme Stack designed by Jimmy