無需公網 IP,無需手動管理證書更新
本文採用的伺服器為 debian12
- 註冊 cloudflare 帳號
控制面板添加你的域名 add site
開心的選擇 0 元白嫖😎 cloudflare 大氣
-
更改域名 NS 到 cloudflare
按照教程來,這裡簡略... -
安裝 cloudflare zero trust tunnel
https://one.dash.cloudflare.com/
依次選擇 Access->Tunnels
按照文檔進行安裝
- 安裝完成後選擇 Public Hostname-> 添加你自己的域名
這裡舉個例子,添加自己的子域名
Http Header 帶上完整子域名
-
安裝 docker
Using apt (debian based)# Add Docker's official GPG key: apt-get update apt-get install ca-certificates curl gnupg -y install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg chmod a+r /etc/apt/keyrings/docker.gpg # Add the repository to Apt sources: echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ tee /etc/apt/sources.list.d/docker.list > /dev/null apt-get update apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
-
編寫 docker-compose 文件
新建一個 rsshub 文件夾,打開,新建 docker-compose.yml
更改 ACCESS_KEY
services:
rsshub:
image: diygod/rsshub
container_name: "rsshub"
restart: always
ports:
- '1200:1200'
environment:
NODE_ENV: production
CACHE_TYPE: redis
REDIS_URL: 'redis://redis:6379/'
PUPPETEER_WS_ENDPOINT: 'ws://browserless:3000'
DEBUG_INFO: false
ALLOW_LOCALHOST: false
ACCESS_KEY: your_pass_key_here
depends_on:
- redis
- browserless
browserless:
image: browserless/chrome
container_name: "browserless"
restart: always
ulimits:
core:
hard: 0
soft: 0
redis:
image: redis:alpine
container_name: "redis"
restart: always
volumes:
- redis-data:/data
volumes:
redis-data:
保存,然後 docker compose up -d
服務啟動了,打開你的域名,應該會顯示 rsshub 默認頁面
部署完成,後續使用自己的訂閱源時使用 https://${你的域名}/${訂閱路徑}?key = 你的 ACCESS_KEY
進階玩法:
使用雷池增加一層本機 waf
- 卸載本機的 nginx/apache/caddy 相關,釋放 80 443 端口佔用
- 安裝雷池
bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/setup.sh)"
雷池管理頁
https://localhost:9443/
ssh 映射伺服器 9443 到本機就可以正常打開
- 雷池裡添加 80 端口域名,回源
修改 Tunnels 裡的端口到 80
- 雷池添加證書
雷池通用配置 -> 證書管理
- 雷池裡添加 443 端口
使用證書
修改 Tunnels 裡的端口到 443
到這裡就可以使用 https 打開 rsshub 頁面了,而經過你伺服器的流量都是清洗後的流量,更安全
確認 https 沒問題後打開 http2,強制 https
記得設定雷池源 IP 獲取方式,從 HttpHeader 中獲取,填寫 X-Forwarded-For
tunnel 設定啟用 http2
到這裡就設定 ok 了,由於雷池自帶統計和防護,你可以對站點運行狀態以及有沒有被濫用有更多的了解