YAMLファイルを直接編集せずにブラウザからTraefikを管理する
Traefikをホームラボや本番サーバーでリバースプロキシとして активно 使用している場合、おそらくその主な制限はご存じでしょう。組み込みのダッシュボードは見栄えはしますが、完全静的です。ルートのリストを表示することはできますが、ブラウザから新しいドメインを追加したり、ミドルウェアを直接調整したりすることはできません。ターミナルを開き、SSHで接続して、YAMLファイルを編集する必要があります。スペースを1つ入れ忘れただけで、すべてのトラフィックが止まってしまうのです。
chr0n6というニックネームの開発者がこの問題に出会い、Traefik Managerプロジェクトを作成しました。これは路由器のビジュアル管理のためのWebパネルで、夜中にテキストエディタを開く手間から解放してくれます。

ファイル編集をWebインターフェースに置き換える理由
Traefikのすべてのロジックは、Routes、Services、Middlewaresという概念を中心に構築されています。サービスが10個以上になると、動的設定の維持がルーティン作業になってしまいます。
Traefik Managerは、動的設定ファイルを作成・編集するためのビジュアルビルダーを提供します。このツールは単にYAMLをゼロから生成するのではなく、ruamel.yamlライブラリを使用します。つまり、UIから保存しても、ファイル内の手動コメントやGoテンプレートは上書きされません。
このインターフェースでは、いくつかの一般的なTraefik管理タスクを処理できます:
- PathPrefixやHostRegexpなどの複雑なルールをサポートするHTTP、TCP、UDPルートビルダー。
- Jellyfin、Plex、Embyなどの一般的なメディアサーバー向けの готовые プリセット。セキュリティヘッダーとストリーミングパラメータをワンクリックで設定します。
- 有効期限表示付きのTLS証明書管理。
- 一般的でないカスタムルールを記述する必要がある場合のシンタックスハイライト付きMonaco Editor。
ドキュメントを読まずにMiddlewareを設定するウィザード
このプロジェクトの最も素晴らしい詳細は、Middleware用のステップバイステップウィザードです。認証ヘッダーやリクエストレート制限の正確な構文を毎回Traefikドキュメントで検索する代わりに、24の готовые ウィザードから必要なシナリオを選択できます。
サポートされているシナリオには以下が含まれます:
- Basic認証とDigest認証。
- Authentik、Authelia、Gatekeeperとの連携用のForward Auth設定。
- OIDC / SSO設定。
- レート制限とIPホワイトリスト。
- URLプレフィックスの置換、削除、追加。
各ウィザードはフォームで明確な質問を行い、ファイル内の適切なセクションを生成します。Cloudflareやその他の外部サービスを介したプロキシを使用している場合、实用はクライアントのIPアドレスが途中で失われないように、適切な信頼できるホップ深度の設定を提案します。
変更のロールバックと自動Gitバックアップ
プロキシ設定を変更する際の主な心配は、プロキシ自体へのアクセスを誤って壊してしまうことです。Traefik Managerにはこのシナリオに対する保護機能が組み込まれています。
各ファイル保存前に、システムがタイムスタンプ付きのターゲットローカルをバックアップします。何か問題が発生した場合、ボタンを押すだけで以前動作していたバージョンを復元できます。
リポジトリに設定を保存することを好む人のために、組み込みのGit自動プッシュメカニズムがあります。GitHub、GitLab、Gitea、またはForgejoをリンクできます。変更後は、パネルが自動的にコミットしてブランチにプッシュします。インターフェース内にビジュアルな差分比較付きの履歴ビューアがあるため、誰がいつ設定を変更したかを常に確認できます。
Agent経由での複数サーバー管理
1つのサーバーだけでなく、複数のホストのインフラストラクチャがある場合、それぞれに別のパネルをデプロイして開く必要はありません。
プロジェクトにはGoで書かれたTraefik Manager Agent(TMA)が含まれています。リモートマシンにTraefikと一緒にインストールし、APIキーを生成して、中央インターフェースに接続します。パネルの上部にサーバー切替スイッチが表示されます。これを通じて、接続されたホストのいずれかでログを表示したり、ルートを変更したり、設定をロールバックしたりできます。
さらに、エージェントは直接Git設定すら必要ありません。メインサーバーが設定を取得して、リポジトリの別ブランチに保存できます。
モニタリング、CrowdSec、セキュリティ
このパネルはファイルの作成だけではありません。ライブ分析を収集して表示できます。
モニタリングタブには、すべてのサービスのステータス、プロキシバージョン、アクティブなエントリポイントが表示されます。また、特定のTraefikバージョンに影響する発見された脆弱性(CVE)に関する警告も表示されます。これにより、コンテナを適時に最新の状態に保つことができます。
サーバーでCrowdSecが実行されている場合、パネルはそのLAPIに接続します。ブラウザから、ブロックされたアドレスのリストを表示したり、特定のIPのブロックを解除したり、疑わしいトラフィックを captcha経由で強制的にルーティングしたりできます。
パネル本身的セキュリティの観点から、すべて 잘考え되어 있습니다:
- bcryptとTOTP二要素認証による認可。
- 企業全体のシングルアカウントでログインするためのOIDCサポート。
- CSRF、セッション攻撃、レート制限に対する組み込みの保護。
- モバイルアプリ用のトークン。これは特に言及する価値があります。
開発者はAndroid用のモバイルクライアント(React Native)もリリースしました。これはAPIキーを介して動作します。電話から、障害が発生したルートをすばやく無効にしたり、外出先でサービスのステータスを確認したりするのが便利です。
クイックスタート
公式インストールスクリプトまたは標準のComposeファイルを使用して、パネルを文字通り1つのコマンドで起動できます。
最小限の docker-compose.yml の例:
services:
traefik-manager:
image: ghcr.io/chr0nzz/traefik-manager:latest
container_name: traefik-manager
restart: unless-stopped
ports:
- "5000:5000"
environment:
- COOKIE_SECURE=false
volumes:
- /path/to/traefik/dynamic.yml:/app/config/dynamic.yml
- /path/to/traefik-manager/config:/app/config
- /path/to/traefik-manager/backups:/app/backups
docker compose up -d を実行した後、http://localhost:5000 に移動して短い初期設定ウィザードを実行します。
内部構造
プロジェクトのアーキテクチャはシンプルで信頼性があります。バックエンドはPython 3.11とFlask、Gunicornサーバーで書かれています。フロントエンドは重量級のフレームワークなしで実現:プレーンなJavaScript、レイアウト用のTailwind CSS、Phosphorアイコン、Monacoエディタ。
すべてのJSとCSSリソースはDockerイメージに直接バンドルされているため、パネルは獨立して動作し、実行中に外部CDNへのリクエストを一切行いません。
まとめ
Traefik Managerは、コミュニティにとって待ち望まれていたニーズに応えています。このツールは、YAMLファイルの手動編集に厌倦したホームラボ所有者、小規模チーム、システム管理者に適しています。
Traefikが5つ以上のサービスを提供している場合、または複数のノードを管理している場合は、プロジェクトを必ずテストする価値があります。便利なMiddleware設定ウィザードと組み込みの変更ロールバックにより、ネットワーク設定時に много времени を節約できます。
関連プロジェクト