Web サーバーの運用はページ配信だけではありません。待受方法を制御し、管理アクセスを保護し、トラフィックを調査し、重要データを復元できることを証明する必要があります。このチャレンジ形式のプロジェクトでは、最終状態を検証する 4 つの Linux シナリオでこれらの責務を結び付けます。
Nginx を独自ポートに構築し、SSH 公開鍵を設置し、待受ソケットを監査し、アクセスログから最も活発なクライアントを特定し、圧縮アーカイブから破壊的な復元テストを行います。要件とヒントは提示されますが、コマンドと検証手順は自分で選びます。
学習内容
- Nginx をインストールし、既定の待受をポート
8080に変更し、指定ページを配置してサービスを再起動する - RSA SSH 鍵ペアを生成して公開鍵を認可し、SSH パスに
700と600の権限を設定する - 待受中の TCP ソケットを数値表示し、SSH ポート
22が公開されていることを確認する - 送信元 IP ごとに要求数を集計し、最も活発なクライアントを抽出する Shell テキスト処理パイプラインを組む
/var/www/htmlと/var/log/nginxを gzip 圧縮 tar にまとめ、内容を確認する- Web ルートの消失を再現し、アーカイブを
/に展開して重要ページの復元を確認する
このコースの対象者
手順ごとのコマンドなしで、Web サービス、SSH、ログ処理、バックアップの技能を適用したい Linux・DevOps 学習者向けです。
前提知識: パッケージとサービス管理、テキスト編集、Shell パイプライン、SSH ファイル、権限、ソケット確認、tar に慣れていること。評価型プロジェクトです。
学習環境: sudo、APT、Nginx、OpenSSH ツール、Zsh、標準 GNU/Linux ユーティリティ、準備済み Web・ログデータを備えたブラウザー対応 Ubuntu ホスト。クラウドや遠隔サーバーは不要です。
よくある質問
SSH チャレンジではパスワード認証を完全に無効化しますか?
いいえ。/home/labex/.ssh/id_rsa を生成し、公開鍵を authorized_keys に追加して権限を修正します。sshd_config の変更、パスワードの無効化、遠隔ログイン試験は行いません。
予期しないネットワークポートを閉じますか?
いいえ。ss または netstat で待受 TCP ポートを数値表示し、ポート 22 を確認するだけです。ファイアウォール変更やサービス停止は対象外です。
最も活発なクライアントはどう特定しますか?
/var/log/nginx/access.log の第 1 フィールドを集計し、IP をグループ化して件数順に並べ、首位の 203.0.113.42 だけを /home/labex/attacker_ip.txt に保存します。
復旧テストで実際に削除・復元するものは何ですか?
アーカイブには Web ルートと Nginx ログを含めますが、消失シミュレーションでは /var/www/html のみ削除します。ルートで展開し、Critical Web Content を含む index.html が戻ったことを確認します。





