2026年5月19日
2026年5月19日
サーバーのセキュリティ監査チェックリスト
はじめに
サーバーのセキュリティは、システム全体の信頼性とデータ保護にとって非常に重要です。定期的な監査を実施することで、脆弱性や不正アクセスのリスクを早期発見し対策することができます。このチェックリストでは、Linuxサーバーの基本的なセキュリティ設定と監査方法について説明します。
症状・背景
このチェックリストが必要になる主な場面は以下の通りです:
- 新しいサーバーを導入した際
- サービス停止や重大なアップデートを行った後
- 過去のセキュリティ問題から学びたい時
- 管理者が頻繁に更新するためのガイドラインが必要な場合
手順・設定方法
ステップ1: SSH接続の安全性確認
# SSH接続の強度を確認
grep -E "^Port|^PermitRootLogin|^PasswordAuthentication" /etc/ssh/sshd_config
# 不要なポートは無効化する
sed -i 's/^Port 22$/Port 2222/' /etc/ssh/sshd_config
service ssh restart
ステップ2: SELinuxの設定確認
# SELinuxの状態を確認
sestatus
# ルールの変更が必要な場合は適用する
setenforce 1
ステップ3: Firewallの有効化と設定
# Firewallのステータスを確認
sudo ufw status
# 必要なポートのみを開く
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw enable
ステップ4: ログの監査と通知設定
# 日誌ファイルの確認
tail -f /var/log/auth.log
# 重要なログをメールで通知する設定
grep AuthorizedKeysCommand /etc/ssh/sshd_config
注意事項
- 全ての変更はテスト環境で行い、確認した上で本番環境に適用すること。
- セキュリティ上の注意:無効化するサービスやポートがサーバー正常運転に必須ではないことを確認する。
- パフォーマンス/運用上の注意:設定変更は必ずバックアップを取ること。
まとめ
1. SSH接続の安全性: SSH接続の設定ファイルをチェックし、必要に応じて更新します。
2. SELinuxの有効化: SELinuxが無効な場合は有効化し、適切なセキュリティポリシーを適用します。
3. Firewallの設定: 必要なポートのみを開き、不要なサービスは遮断します。
4. ログ監査と通知: サーバーの活動を追跡するための日誌設定を行い、重要なイベントに通知を受け取るよう設定します。
関連記事:
- [SSH接続の安全性確認]
- [SELinuxの基本的な設定方法]
- [Firewallの有効化と設定]