Linux の解説記事を読んで「わかったつもり」になっても、実際に壊れたサーバを前にすると手が動かない — そのギャップを埋めるために、ブラウザだけで「壊れた Linux サーバを調査して直す」を練習できる演習サイトを作って公開した。インストール不要・登録不要・無料。VM はすべてあなたのブラウザの中で動き、何をどれだけ壊しても誰にも迷惑がかからない。
Linux トラブルシューティング演習 — https://holmes-jp.github.io/linux-trainer-web/
PC のブラウザで開くだけで始められる (初回はディスクイメージの読み込みに少し時間がかかる)。進捗はブラウザ内 (localStorage) に保存されるので、アカウント作成も不要。
どんなサイト? — 「壊れたサーバ」を直すと自動採点される #
コンセプトは海外で人気の SadServers (Linux 障害対応の演習サイト) と同じで、それをブラウザ完結・日本語・無料にしたもの。1 シナリオの流れはこうなる。
ls grep chmod ps などを使って原因を探し、直す。詰まったら段階的なヒントを開ける。採点はユーザが打ったコマンドを監視するのではなく、「サービスが動いているか」「ファイルの権限が正しいか」といった現在の状態だけをチェックする。実務のトラブルシューティングに「唯一の正解手順」は無いからで、vim で直しても sed で直しても、直っていれば正解になる。
シナリオは 権限 (permissions) / ファイルシステム (filesystem) / プロセス (processes) / ディスク (disk) / サービス (services) / ログ (logs) の 6 カテゴリ。「ログから侵入の痕跡を探す」「仕込まれたバックドアを掃除する」といったセキュリティ寄りの題材も入れてある。
仕組み — ブラウザの中で本物の x86 Linux が動いている #
このサイトの核心は WebVM (CheerpX) という技術で、x86 機械語を WebAssembly に JIT 変換する仮想化エンジンがブラウザ内で無改造の Debian を実行する。つまり画面のターミナルは「Linux 風の再現」ではなく、本物の bash・本物の coreutils・本物のファイルシステムが動いている。
| 項目 | 従来の学習環境 (VirtualBox / クラウド VM) | 本サイト (WebVM) |
|---|---|---|
| 準備 | インストール / アカウント作成 / 課金設定 | ブラウザで開くだけ |
| 実行場所 | ローカル PC またはクラウド | ブラウザ内 (完全クライアントサイド) |
| 壊しても | スナップショット復元などの後始末が必要 | リロードすれば元通り |
| root 権限 | 環境による | 最初から root で壊し放題 |
| ネットワーク攻撃の練習 | 環境による | 不可 (ブラウザ制約) |
セキュリティの観点で面白いのは、この構成では「やられサーバ」がユーザ自身のブラウザのサンドボックス内にしか存在しないこと。サーバ側に VM は 1 台も無いので、何をどう壊しても影響範囲はタブの中で完結する。rm -rf の実験すら安全にできる学習環境は、実はなかなか無い。
ブラウザ内 VM のため、ネットワークを使う演習 (ssh 接続、ポートスキャン等) はできない。また初回はディスクイメージのストリーミングに時間がかかり、実行速度もネイティブの VM より遅い。「Linux 操作とトラブルシューティングの筋トレ」に割り切った設計にしている。
おすすめの使い方 — 座学とセットで #
当サイト (Hacking Labo) の Linux 解説記事 で「カーネル / ファイルシステム / プロセス / 権限」の全体像を掴んでから演習に入ると、コマンドの意味が腹落ちしやすい。逆に、演習で詰まって初めて「権限モデルってそういうことか」と解説に戻るのも良い学び方だと思う。
ハッキングを学びたい人にとっても、CTF やペネトレーションテストの土台は結局 「Linux 上で素早く調査できる力」。ログを漁る、怪しいプロセスを見つける、パーミッションの穴に気づく — 本演習の 6 カテゴリはそのままオフェンシブセキュリティの基礎体力になる。
→ Linux トラブルシューティング演習を開く
ソースコードは GitHub (Holmes-JP/linux-trainer-web) で公開している。不具合報告やシナリオの要望は GitHub の Issue へ。
COMMENTS 0
まだコメントはありません。最初のコメントを投稿しよう。