PR

日常的なVPS運用メモ

日常的なVPS運用をイメージした、サーバーとチェックリスト、管理画面を柔らかいイラストで表現した画像
この記事は約7分で読めます。
記事内に広告が含まれています。
スポンサーリンク

※この記事は、まだまだ未完成です。
 徐々に内容を充実させる予定です。

VPS構築直後の確認ポイント(セキュリティ含む)

VPSを新規に構築した直後は、「設定したつもり」「前回と同じだと思っている」部分でミスが起きやすい。

ここでは、後から日常運用に入る前に、最低限確認しておきたいポイントを実務メモとして整理しておく。

SSH接続設定の確認

sudo nano /etc/ssh/sshd_config

見るべきポイント

  • Port
    • 22以外のポートになっているか
  • PermitRootLogin
    • no になっているか
  • PasswordAuthentication
    • 想定どおり(yes / no)か
  • PubkeyAuthentication
    • 有効になっているか
sudo systemctl reload ssh
  • 設定変更後は reload を実行
  • 別のSSHセッションを開いた状態で作業する

ファイアウォール(ufw)の状態確認

sudo ufw status verbose

見るべきポイント

  • Status: active になっているか
  • SSH用ポートが許可されているか
  • 不要なポートが開いていないか
sudo ufw allow <ssh-port>/tcp
sudo ufw enable
  • ufw 有効化前に、SSHポートが許可されていることを必ず確認

fail2ban の有効化と監視対象

sudo systemctl status fail2ban

見るべきポイント

  • サービスが起動しているか
  • 起動時に自動起動する設定になっているか
sudo fail2ban-client status

見るべきポイント

  • sshd が jail として存在しているか
  • 想定外の jail が有効になっていないか
sudo fail2ban-client status sshd

見るべきポイント

  • Currently banned が極端に多くないか
  • Total banned が異常に増えていないか

自動アップデートの設定状況

sudo systemctl status unattended-upgrades

見るべきポイント

  • サービスが有効になっているか
  • 停止状態になっていないか
sudo unattended-upgrades --dry-run

見るべきポイント

  • セキュリティ更新が対象になっているか
  • エラーが出ていないか
  • 自動更新により、再起動が必要になるケースがあることを意識しておく

ユーザーと権限の確認

whoami

見るべきポイント

  • 管理用ユーザーで作業しているか
  • rootで常用していないか
groups

見るべきポイント

  • sudo グループに含まれているか
cut -d: -f1 /etc/passwd

見るべきポイント

  • 不要なユーザーが残っていないか
  • 意図しないユーザーが追加されていないか

時刻・ロケールの確認

timedatectl

見るべきポイント

  • タイムゾーンが想定どおりか
  • 時刻が正しく同期されているか
date
  • ログの時刻とズレが出ないかを意識

Daily

ここでは、VPSを日常的に運用するうえで、毎日(または気づいたとき)に確認している内容をまとめている。

目的はトラブル対応ではなく、「昨日までと違っていないか」を早めに察知すること

数値の細かい評価や調整は行わず、異常を感じた場合は Weekly や個別の確認に進む。

SSHでログインできるか

ssh user@your-vps

見るべきポイント

  • 普通にログインできるか
  • 接続が極端に遅くないか
  • 警告メッセージが出ていないか

システム全体の負荷状況

uptime

見るべきポイント

  • load average が極端に高くなっていないか
  • 昨日と比べて明らかな変化がないか
free -h

見るべきポイント

  • メモリが枯渇していないか
  • swap が常用されていないか

ディスク使用量

df -h

見るべきポイント

  • / の空き容量が十分にあるか
  • 急激に使用量が増えている領域がないか

主要サービスの状態

systemctl status ssh
systemctl status nginx
systemctl status php-fpm
systemctl status mariadb

見るべきポイント

  • active (running) になっているか
  • failed 状態のサービスがないか

※ 実際に使用しているサービスに応じて取捨選択する

fail2ban の状態

sudo fail2ban-client status

見るべきポイント

  • 想定外の jail が増えていないか
sudo fail2ban-client status sshd

見るべきポイント

  • Currently banned が急増していないか
  • 異常な挙動が出ていないか

Web表示の簡易確認

  • サイトのトップページを1回表示する
  • SSL警告が出ていないか
  • 表示が極端に遅くないか

※ 管理画面には入らない
※ 表示確認のみ行う

Daily運用メモ

  • Dailyでは問題の原因追及はしない
  • 数値は、「正常か/異常か」ではなく「いつもと同じか」を見る
  • 違和感を覚えた場合は、Weekly やログ確認に進む

Weekly

Weekly では、Daily の確認では分からない「溜まるもの」「先送りされがちなもの」を中心に確認する。

ここでも、大きな構成変更やチューニングは行わず、状態を把握して必要なら対応を検討するに留める。

パッケージ更新状況の確認

sudo apt update
sudo apt list --upgradable

見るべきポイント

  • 未更新のパッケージが溜まっていないか
  • セキュリティ関連の更新が含まれていないか

※ その場で更新するかどうかは状況次第
※ 更新作業は時間に余裕があるときに行う

再起動要否の確認

sudo needrestart -r l

見るべきポイント

  • 再起動が必要なサービスが残っていないか
  • カーネル更新後に放置されていないか
sudo reboot
  • 再起動する場合はメンテナンス時間帯に実施

ログの量と傾向

sudo du -sh /var/log/*

見るべきポイント

  • 特定のログが極端に肥大化していないか
  • Daily では見えなかった増加がないか
sudo journalctl --disk-usage

見るべきポイント

  • journal が想定以上に容量を使っていないか

fail2ban の状況確認(少し踏み込む)

sudo fail2ban-client status
sudo fail2ban-client status sshd

見るべきポイント

  • ban 数が継続的に増えていないか
  • 同じ IP からの攻撃が繰り返されていないか

※ 詳細なログ確認や調整は必要になったときだけ行う

ディスク使用量の推移確認

df -h

見るべきポイント

  • Daily で見た値と比べて増え方が急でないか
  • 空き容量に余裕がなくなってきていないか

※ 原因調査は Monthly または個別対応で行う

Weekly運用メモ

  • Weekly は「把握して、必要なら次に回す」フェーズ
  • その場で全部解決しようとしない
  • 気になった点は
    • メモを残す
    • Monthly で整理する
      で十分

Monthly

Monthly では、日々・週次の確認では見落としがちな「長期的に効いてくる項目」を中心に確認する。

ここでの目的は、トラブル対応ではなく、「何も起きていない状態を確認し、安心して運用を続けること」

バックアップの確認

ls -lh /path/to/backup

見るべきポイント

  • バックアップが定期的に作成されているか
  • 最新のバックアップ日時が古くなっていないか
  • ファイルサイズが極端に小さくなっていないか

※ 実際のバックアップ先・方式に合わせて調整する
「存在しているか」を必ず目視で確認する

復元できそうかの簡易確認

  • バックアップファイルが壊れていないか
  • 圧縮ファイルであれば、展開できそうか
tar -tzf backup.tar.gz

見るべきポイント

  • エラーが出ないか
  • 中身が想定どおり含まれていそうか

※ 実際に復元はしない
※ 月1回の「安心確認」

ディスク使用量の長期推移

df -h

見るべきポイント

  • 月単位で見て、使用量が増え続けていないか
  • 空き容量に余裕があるか
sudo du -sh /var/log/*

見るべきポイント

  • ログ肥大化が慢性化していないか
  • ログローテーションが効いていそうか

不要なユーザー・設定の棚卸し

cut -d: -f1 /etc/passwd

見るべきポイント

  • 使っていないユーザーが残っていないか
  • 一時的に作ったユーザーを放置していないか
sudo ls /etc/sudoers.d/

見るべきポイント

  • 不要な sudo 設定が残っていないか

サービス構成の見直し

systemctl list-unit-files --type=service

見るべきポイント

  • 使っていないサービスが有効になっていないか
  • 自動起動が不要なサービスが含まれていないか

※ 停止・無効化は慎重に行う
※ 変更した場合はメモを残す

Monthly運用メモ

  • Monthly は「整える」「安心する」ための時間
  • 問題がなければ、何もしなくてよい
  • ここで確認して問題がなければ、日々の運用はうまく回っていると判断できる

タイトルとURLをコピーしました