# Tailscale Funnel 完全図解 ## 🎯 一言で言うと **「Tailscaleを入れていない人でも、あなたの自宅サーバーにHTTPSでアクセスできるようにする機能」** --- ## 📊 通常のTailscaleとFunnelの違い ### **通常のTailscale(プライベートVPN)** ``` ┌─────────────────────────────────────────────────────┐ │ Tailscale ネットワーク(Tailnet)- 閉じた専用線 │ │ │ │ [あなたのPC] ←────────→ [Synology] │ │ Tailscale導入済み Tailscale導入済み │ │ │ │ [娘さんのPC] ←────────→ [Synology] │ │ Tailscale導入済み Tailscale導入済み │ │ │ └─────────────────────────────────────────────────────┘ ✅ 安全: Tailscaleを入れた人だけが接続可能 ❌ 制限: 知人や外部からはアクセス不可 ``` --- ### **Tailscale Funnel(一部を公開)** ``` ┌───────────────────── インターネット ─────────────────────┐ │ │ │ [一般ユーザー] [知人] [Tailscale未導入の共同開発者] │ │ │ │ │ │ │ └────────────┴──────────────┘ │ │ │ │ │ │ HTTPS │ │ ▼ │ │ ┌─────────────────────┐ │ │ │ Tailscale Relay │ ← Tailscaleの中継サーバー│ │ │ (Funnel入口) │ (あなたが管理する必要なし) │ └─────────────────────┘ │ │ │ │ │ │ 暗号化トンネル (WireGuard) │ │ │ │ └────────────────────┼─────────────────────────────────────┘ │ ▼ ┌─────────────┐ │ Synology │ ← あなたの自宅 │ (Funnel有効)│ └─────────────┘ │ ├── :8080 → Posimai Brain API ├── :3000 → Gitea └── :5000 → Posimai API ``` **公開URL:** ``` https://posimai-lab.tail72e846.ts.net ``` ✅ 利点: Tailscale未導入の人でもアクセス可能 ⚠️ 注意: **認証(APIキー)を必ず実装**しないと全世界公開 --- ## 🔒 セキュリティの仕組み ### **Geminiの警告は正しい:** > Funnelは「全世界」に公開されるため、認証(パスワードやAPIキー)をしっかりかけていないと、誰でもあなたのサーバーを覗けてしまいます。 ### **現在の保護レイヤー:** ``` [一般ユーザー] │ │ ① HTTPSで接続(暗号化) ▼ [Tailscale Relay] │ │ ② WireGuardトンネル(暗号化) ▼ [Synology] │ │ ③ APIキー認証 ← ★これが最後の砦★ ▼ [Posimai Brain API] ``` **重要:** ①②は「通信の暗号化」であり、**「誰がアクセスできるか」は制御していない** → **③のAPIキー認証が必須** --- ## 🌐 Funnel vs Cloudflare Tunnel vs VPS比較 | 項目 | Tailscale Funnel | Cloudflare Tunnel | VPS + Nginx | |------|------------------|-------------------|-------------| | **クラウド依存** | 中(Relayのみ依存) | 高(Cloudflare依存) | 低(VPS管理) | | **コスト** | 無料 | 無料 | $3-5/月 | | **安定性** | 中(Relay経由) | 高(99.99%) | 高(VPS次第) | | **設定難易度** | 易 | 中 | 高 | | **データ経路** | Tailscale Relay経由 | Cloudflare経由 | VPS経由 | | **プライバシー** | 中(Tailscale社のRelay通過) | 低(Cloudflare通過) | 高(自分のVPS) | --- ## 🤔 「クラウド依存を避ける」という方針との整合性 ### **Tailscale Funnelの実態:** ``` あなたのデータの流れ: [知人のブラウザ] ↓ [Tailscale社のRelay] ← ★ここを通る★ ↓ [あなたのSynology] ``` **事実:** - ✅ データは暗号化されている(Tailscale社でも読めない) - ⚠️ Tailscale社のRelayサーバーを経由している(クラウド依存) - ⚠️ Tailscale社が倒産/サービス停止したら使えなくなる ### **完全なセルフホストとは言えない理由:** Funnelは**Tailscale社のインフラに依存**しています。 Cloudflare Tunnelと同じく「第三者のRelayを使う」点では変わりません。 --- ## 🏆 本当に完全セルフホストするなら ### **方法1: VPS + Reverse Proxy(最も純粋なセルフホスト)** ``` [知人] → [あなたが借りたVPS] → [Tailscale P2P] → [Synology] ★自分で管理★ ``` **メリット:** - ✅ 完全に自分の管理下 - ✅ VPSはあなたが選んだ業者(Vultr, Hetznerなど) - ✅ Tailscaleはプライベートネットワークのみ使用(Funnel不使用) **デメリット:** - 月$3-5のコスト - VPS管理の手間 --- ### **方法2: ダイナミックDNS + Let's Encrypt(完全無料)** ``` [知人] → [DDNSドメイン] → [自宅ルーター:443] → [Synology] ``` **メリット:** - ✅ 完全無料 - ✅ クラウド依存なし **デメリット:** - ❌ ルーターのポート開放が必要(セキュリティリスク) - ❌ グローバルIPが変わると接続できなくなる - ❌ 二重ルーター環境では動作しない --- ## 📊 まとめ: Funnelは「妥協案」 | 方式 | クラウド依存度 | セキュリティ | コスト | 推奨度 | |------|---------------|-------------|--------|--------| | **Tailscale Funnel** | ⭐⭐ 中 | ⭐⭐⭐⭐ 高 | 無料 | ⭐⭐⭐⭐ | | **Cloudflare Tunnel** | ⭐⭐⭐ 高 | ⭐⭐⭐⭐⭐ 最高 | 無料 | ⭐⭐⭐ | | **VPS + Reverse Proxy** | ⭐ 低 | ⭐⭐⭐⭐ 高 | $3-5/月 | ⭐⭐⭐⭐⭐ | | **DDNS + ポート開放** | なし | ⭐⭐ 低 | 無料 | ⭐ | --- ## 🎯 あなたの方針に対する推奨 ### **現状のTailscale Funnel:** - ✅ APIキー認証で保護されている - ✅ 無料で使える - ⚠️ Tailscale社のRelayに依存(完全セルフホストではない) - ⚠️ 再起動時に手動復旧が必要(Docker Composeで解決可能) ### **完全セルフホストにこだわるなら:** **VPS + Reverse Proxy方式(月$3-5)** を推奨 ```yaml # VPS上の設定例(Nginx Reverse Proxy) server { listen 443 ssl; server_name posimai-brain.yourdomain.com; ssl_certificate /etc/letsencrypt/live/posimai-brain.yourdomain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/posimai-brain.yourdomain.com/privkey.pem; location / { proxy_pass http://100.x.x.x:8080; # TailscaleのプライベートIPアドレス proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } ``` **この方式なら:** - ✅ VPSは自分で選んだ業者(Vultr, Hetzner等) - ✅ Tailscaleはプライベートネットワークのみ(Funnel不使用) - ✅ VPSが死んでも別のVPSに30分で移行可能 - ✅ 完全に自分の管理下 --- ## 結論 **Tailscale Funnelは「便利だが、完全セルフホストではない」** - Cloudflare Tunnelと同じく、第三者のRelayに依存 - 完全セルフホストにこだわるなら → **VPS + Reverse Proxy** - コストを抑えて手軽に使いたい → **Tailscale Funnel(現状維持 + Docker永続化)** どちらを選びますか?