CentOSをどのように安全に構成しますか?
CentOS のセキュリティ強化設定を行うには、次の手順に従います。
- システムの更新: システムが最新バージョンにアップデートされていることを確認してください。以下のコマンドを使用してシステムを更新します:
- sudo yum update
- 必要なソフトのインストール: 実行中のファイアウォール、強固なパスワードポリシーツールなど、一般的なソフトウェアをインストールします。
- sudo yum install httpd
- ファイアウォールの設定: ファイアウォールを有効化し設定して、ネットワークトラフィックとサービスへのアクセスを制限します。以下のコマンドを使用してファイアウォールを起動し設定します。
- sudo systemctl start firewalld && sudo systemctl enable firewalld && sudo firewall-cmd –permanent –add-service=ssh && sudo firewall-cmd –reload
- 不要なサービスは無効にする: 不要なサービスは無効にして、攻撃対象となる可能性のある領域を減らしましょう。サービスを無効にするには次のコマンドを使用します。
- systemctl disable <サービス名>
- ネイティブな日本語にパラフレーズします、1つのオプションのみ必要です。パスワードポリシーの設定: 強固なパスワードを使用することは、システムの安全を保護するための重要な施策です。/etc/security/pwquality.conf ファイルを編集し、ファイル内でパスワードの長さや複雑さの要件などのパスワードポリシーパラメーターを設定します。
- root のリモートアクセスを制限するには、/etc/ssh/sshd_configファイルを編集し、PermitRootLogin行を探して、PermitRootLogin noに変更します。
- /etc/ssh/sshd_configファイル内にあるAllowUsers行をAllowUsers <ユーザー名>に変更すると、特定のユーザーのみがSSHリモートログインが可能になります。
- 空パスワードアカウントを無効にするには、/etc/ssh/sshd_config ファイルを編集して PermitEmptyPasswords 行を探し、PermitEmptyPasswords no に変更して空パスワードによるログインを禁止します。
- ログアウトタイムアウトを設定する:/etc/ssh/sshd_config ファイルを編集し、ClientAliveInterval と ClientAliveCountMax の行を探して、一定時間アクティビティがない場合に自動的に切断されるよう適切な値を設定する。
- ログイン失敗ロックアウトを設定する: /etc/pam.d/system-auth ファイルを編集して、ファイルに次の行を追加することでログイン失敗ロックアウトが設定できます。
- auth required pam_tally2.so deny=5 unlock_time=120
- システムとソフトウェアパッケージを定期的に更新: 最新のセキュリティ修正と機能アップデートを入手するために、システムとソフトウェアパッケージを定期的にアップデートしましょう。システムとソフトウェアパッケージを更新するには、以下のコマンドを使用してください。
- yum update
上記の手順を終えると、CentOS システムは一定レベルのセキュリティ強化が行われます。これらのセキュリティ設定は基本的な設定ですので、それぞれの必要性や環境に応じて、さらに設定が必要となる可能性がありますので、ご注意ください。