konstruktoid.hardening

サーバーのセキュリティを強化するためのAnsibleロール

これは、AlmaLinux、Debian、またはUbuntuで動作するサーバーのセキュリティを向上させるために設計されたAnsibleのロールです。

このロールはsystemdに焦点を当てており、Ansibleのバージョン2.15以上が必要です。

このロールは以下のオペレーティングシステムをサポートしています:

AWSやAzureを使用している場合、ハードニングされたUbuntu Amazonマシンイメージ(AMI)やAzure仮想マシンイメージも利用可能です。

これらはkonstruktoid/hardened-imagesリポジトリで入手できます。これらのイメージはPackerを使用して構築され、このAnsibleロールを使用して構成されます。

注意 運用環境で使用する前に、必ずテスト環境でテストしてください。

注意 検証のために、以下のSLSAアーティファクトがあります。 slsaアクションワークフロー

依存関係

なし。

要件

---
roles:
  - name: konstruktoid.hardening
    version: v2.1.0
    src: https://github.com/konstruktoid/ansible-role-hardening.git
    scm: git

プレイブック

---
- name: ハードニングロールをインポートして使用する
  hosts: localhost
  any_errors_fatal: true
  tasks:
    - name: ハードニングロールをインポートする
      ansible.builtin.import_role:
        name: konstruktoid.hardening
      vars:
        sshd_admin_net:
          - 10.0.2.0/24
          - 192.168.0.0/24
          - 192.168.1.0/24
        suid_sgid_permissions: false

git checkoutを使用したローカルプレイブック

---
- name: konstruktoid.hardeningをチェックアウトして構成する
  hosts: localhost
  any_errors_fatal: true
  tasks:
    - name: ハードニングリポジトリをクローンする
      become: true
      tags:
        - always
      block:
        - name: gitをインストールする
          ansible.builtin.package:
            name: git
            state: present

        - name: konstruktoid.hardeningをチェックアウトする
          become: true
          ansible.builtin.git:
            repo: https://github.com/konstruktoid/ansible-role-hardening
            dest: /etc/ansible/roles/konstruktoid.hardening
            version: v2.1.0

        - name: gitを削除する
          ansible.builtin.package:
            name: git
            state: absent

    - name: ハードニングロールを含める
      ansible.builtin.include_role:
        name: konstruktoid.hardening
      vars:
        sshd_allow_groups:
          - ubuntu
        sshd_login_grace_time: 60
        sshd_max_auth_tries: 10
        sshd_use_dns: false
        sshd_update_moduli: true

UFWルールに関する注意

ufwを毎回リセットするのではなく、comment: ansible managedタスクパラメータと値のないすべてのufwルールを削除します。

また、ロールはデフォルトの拒否ポリシーを設定し、sshd_portsufw_outgoing_traffic変数で指定されたポートを除いて、追加のポートに対するファイアウォールルールを作成する必要があります。

詳細はufw(8)を参照してください。

タスクの実行と構造

ロール構造のツリーについてはSTRUCTURE.mdを参照してください。

ロールテスト

テストについてはTESTING.mdをご覧ください。

デフォルトのロール変数

(ここから続けて、各変数の説明を日本語で翻訳できますが、長くなるため、必要なセクションだけ翻訳してほしい場合はお知らせください。)

プロジェクトについて

AlmaLinux, Debian and Ubuntu hardening. systemd edition.

インストール
ansible-galaxy install konstruktoid.hardening
ライセンス
apache-2.0
ダウンロード
33.6k
所有者