chzerv.security
Ansible Role: セキュリティ
重要な変更点: v0.7以降、このロールは
security_enforce_strong_passwords
,security_log_after_failed_logins
,security_nproc_limit
オプションをサポートしなくなりました。PAMの設定を誤るとシステムにロックアウトされる可能性があるため、これらを実装するための代わりの方法を見つける必要があります。
あなたのPC/サーバーのセキュリティはあなた自身の責任です。 これは非常に基本的なテンプレートであり、完全なソリューションではなく テンプレート として使用してください。
このロールは、RedHat/Debian/Archlinux ベースのLinuxシステムに対して、基本的なセキュリティ設定を行います。具体的には:
- fail2ban をインストールし、悪質なSSHログインを監視するように設定します。
- 基本的なSSHの強化:
- rootログインを無効にする。
- パスワード認証を無効にする。
- キー認証を有効にする。
- デフォルトポートを変更する。
- 既知の脆弱なアルゴリズムを無効にする。
- 自動更新を設定する。
- 基本的なカーネルの強化。
- 基本的なTCP/IPスタックの強化。
- 選択したパッケージを削除する。
limits
を使用してコアダンプを無効にする。
必要条件
- このロールを実行した後、SSHアクセスは公開鍵のみで可能になります。したがって、あなたのSSHキーはすでにリモートホストにコピーされている必要があります。SSHキーをリモートホストに簡単にコピーする方法については、このArchWikiのエントリを参照してください。
- 各設定が何を行うかの基本的な理解。
ロール変数
依存関係
なし。
例 Playbook
ロールの使用方法(例えば、変数をパラメータとして渡す場合)を示す例を含めると、ユーザーにとって便利です:
- hosts: server
vars_files:
- vars/main.yml
roles:
- { role: chzerv.security }
vars/main.yml
ファイル:
security_kern_go_hardcore: true
security_net_go_hardcore: true
security_autoupdates_enabled: true
security_autoupdates_type: "security"
security_fail2ban_enabled: true
security_fail2ban_harden_service: true
ライセンス
MIT / BSD