※この記事は、まだまだ未完成です。
徐々に内容を充実させる予定です。
VPS構築直後の確認ポイント(セキュリティ含む)
VPSを新規に構築した直後は、「設定したつもり」「前回と同じだと思っている」部分でミスが起きやすい。
ここでは、後から日常運用に入る前に、最低限確認しておきたいポイントを実務メモとして整理しておく。
SSH接続設定の確認
sudo nano /etc/ssh/sshd_config
見るべきポイント
Port- 22以外のポートになっているか
PermitRootLoginnoになっているか
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 は「整える」「安心する」ための時間
- 問題がなければ、何もしなくてよい
- ここで確認して問題がなければ、日々の運用はうまく回っていると判断できる