Gadget 11:セキュリティ強化
最小権限・ファイアウォール・不要機能の切り方による Cloudflare OS のセキュリティ強化
セキュリティ強化
「外部に晒しても大丈夫な状態」にするための最小権限・ファイアウォール・ 不要機能の切り方をまとめます。
目的
- 既定設定のまま外部公開して失敗しない
- 防御のベースライン(最低限やること)を確立する
前提条件
- 公開する or する予定の環境
- Gatekeeper 連携の知識(03-gatekeeper-integration)
- ネットワーク構成(12-networking-basics)
手順(ベースライン)
1. 既定 admin を除去する
ADMINS の既定 ["admin"] をそのままにすると誰でもログインできます。 公開前に必ず初期化または強弱を設定します。
# 例:.dev.vars / 環境変数で管理者を絞る
ADMINS="<あなただけのID>"詳細は各 packages/workshop-backend の README を確認。
2. ファイアウォールで公開面を絞る
| 面 | 推奨 |
|---|---|
| 管理 UI | 社内/LAN IP、または VPN 経由のみ |
| API / Gatekeeper | 必要最小の送信元のみ |
| 外部公開 | HTTPS リバースプロキシの後ろに置く |
3. 不要な機能・ポートを切る
- 使わない Gatekeeper の binding は外す
- 外部に不要なポートは開けない(8787 を直接晒さない)
.dev.varsに実装していない Secret を置かない
4. 監査ログと通知
- アクセスログを保存(05-logs-cheatsheet)
- 異常検知を通知(18-monitoring-and-alerting)
Warning外部公開の最低条件
OAuth を外部公開するなら HTTPS 必須です。 http のまま公開すると認証連携もまず動きません (13-certificates-and-tls)。
よくある失敗
| 症状 | 原因 | 対処 |
|---|---|---|
| 誰でもログインできる | ADMINS=["admin"] 残存 |
公開前に必ず除去 |
| OAuth が回らない | http 公開 | HTTPS 化(TLS 終端 / Tunnel) |
| Secret 露出 | .dev.vars をコミット |
履歴から削除しローテート |
| 外部から管理 UI を触られる | 公開範囲が広すぎ | 管理 UI を VPN / LAN 内に制限 |
| 監査が取れない | ログ未保存 | ログ保存運用を有効化 |
確認
次に読む
- ネットワーク構成 → 12-networking-basics
- TLS / 証明書 → 13-certificates-and-tls
- 監視・通知 → 18-monitoring-and-alerting