florianutz.ubuntu2004_cis

Ubuntu 20.04 CIS STIG

ビルドステータス Ansibleロール

このロールは18.04の移行に基づいています。タスクの内容は正しいですが、20.04のベンチマークに適合するように再整理する必要があります。貢献を歓迎します。

Ubuntu 20.04マシンをCIS準拠に設定します。レベル1と2の問題はデフォルトで修正されます。

このロールは システムに変更を加えます ので、何かが壊れる可能性があります。これは監査ツールではなく、監査の後に使用する修正ツールです。

CIS Ubuntu Linux 20.04 LTS ベンチマーク - v1.0.0 - 2020年7月21日に基づいています。

フィードバック

  • 私たちの仕事が気に入っているが、コードの貢献ができない場合は、Ansible Galaxyで評価をお願いします。 そこで、開発者に対して簡単にポジティブなフィードバックを提供できます。 Galaxyコミュニティスコア
  • ロールにバグを見つけたが、自分で修正できない場合は、できるだけ多くの詳細を含めてチケットを作成してください。すべての開発者は余暇にプロジェクトに取り組んでいるため、フィードバックが届くまでに時間がかかる場合があります。問題ページ

重要なインストール手順

ansible-galaxyコマンドを使用してインストールしたい場合は、次のように実行する必要があります:

ansible-galaxy install -p roles -r requirements.yml

requirements.ymlファイルにこれを含めてください:

- src: https://github.com/florianutz/ubuntu2004_cis.git

例のプレイブック

以下に例のプレイブックを示します。ドキュメントを必ず読んで、ケースに合わせた設定を確認してください。デフォルト設定ではXサーバーがアンインストールされます!

- name: セキュアサーバー
  hosts: servers
  become: yes

  roles:
    - ubuntu2004_cis

このリポジトリのタスクを実行するには、最初にリポジトリの1つ上のレベルにこのファイルを作成します(つまり、プレイブック .yml と ubuntu2004_cis ディレクトリが隣接している必要があります)。 次に、defaults/main.ymlファイルを確認し、実行したくないルール/セクションを無効にしてください。

ファイル名をsite.ymlと仮定して、次のように実行します:

ansible-playbook site.yml

要件

このプレイブックを実行する前に、これらの変更がシステムを壊さないことを慎重に確認してください。

ロール変数

defaults/main.ymlに定義された多くのロール変数があります。ここに最も重要なものを示します。

ubuntu2004cis_notauto: システムを壊す高い可能性があるため、自動化したくないCISチェックを実行します(デフォルト: false)

ubuntu2004cis_section1: CIS - 一般設定(セクション1)(デフォルト: true)

ubuntu2004cis_section2: CIS - サービス設定(セクション2)(デフォルト: true)

ubuntu2004cis_section3: CIS - ネットワーク設定(セクション3)(デフォルト: true)

ubuntu2004cis_section4: CIS - ログと監査設定(セクション4)(デフォルト: true)

ubuntu2004cis_section5: CIS - アクセス、認証、承認設定(セクション5)(デフォルト: true)

ubuntu2004cis_section6: CIS - システムメンテナンス設定(セクション6)(デフォルト: true)

SELinux機能をすべて無効にする

ubuntu2004cis_selinux_disable: false

サービス変数

サーバーがこれらのサービスを実行し続けるべきかどうかを制御します

ubuntu2004cis_avahi_server: false  
ubuntu2004cis_cups_server: false  
ubuntu2004cis_dhcp_server: false  
ubuntu2004cis_ldap_server: false  
ubuntu2004cis_telnet_server: false  
ubuntu2004cis_nfs_server: false  
ubuntu2004cis_rpc_server: false  
ubuntu2004cis_ntalk_server: false  
ubuntu2004cis_rsyncd_server: false  
ubuntu2004cis_tftp_server: false  
ubuntu2004cis_rsh_server: false  
ubuntu2004cis_nis_server: false  
ubuntu2004cis_snmp_server: false  
ubuntu2004cis_squid_server: false  
ubuntu2004cis_smb_server: false  
ubuntu2004cis_dovecot_server: false  
ubuntu2004cis_httpd_server: false  
ubuntu2004cis_vsftpd_server: false  
ubuntu2004cis_named_server: false  
ubuntu2004cis_allow_autofs: false

サーバーをメールサーバーとして指定する

ubuntu2004cis_is_mail_server: false

システムネットワークパラメータ(ホストのみまたはホストとルーター)

ubuntu2004cis_is_router: false

IPv6が必要

ubuntu2004cis_ipv6_required: true

AIDE

ubuntu2004cis_config_aide: true

AIDEクロン設定

ubuntu2004cis_aide_cron:
  cron_user: root
  cron_file: /etc/crontab
  aide_job: '/usr/sbin/aide --check'
  aide_minute: 0
  aide_hour: 5
  aide_day: '*'
  aide_month: '*'
  aide_weekday: '*'  

環境でX Windowsが必要な場合は'true'に設定

ubuntu2004cis_xwindows_required: no

クライアントアプリケーション要件

ubuntu2004cis_openldap_clients_required: false
ubuntu2004cis_telnet_required: false
ubuntu2004cis_talk_required: false  
ubuntu2004cis_rsh_required: false
ubuntu2004cis_ypbind_required: false
ubuntu2004cis_rpc_required: false

時間同期

ubuntu2004cis_time_synchronization: chrony
ubuntu2004cis_time_synchronization: ntp

ubuntu2004cis_time_synchronization_servers:
  - uri: "0.pool.ntp.org"
    config: "minpoll 8"
  - uri: "1.pool.ntp.org"
    config: "minpoll 8"
  - uri: "2.pool.ntp.org"
    config: "minpoll 8"
  - uri: "3.pool.ntp.org"
    config: "minpoll 8"

- name: "SCORED | 1.1.5 | PATCH | /tmpパーティションにnoexecオプションが設定されていることを確認"

未実装。/tmpのnoexecはaptを妨害します。/tmpにはパッケージインストール中の実行可能なスクリプトが含まれます。


1.5.3 | PATCH | シングルユーザーモードには認証が必要であること

これはデフォルトで無効になっており、rootのためにランダムなパスワードを設定しています。有効にするには次を設定します:

ubuntu2004cis_rule_1_5_3: true

ランダムなパスワード以外を使用するには:

ubuntu2004cis_root_password: '新しいパスワード'
ubuntu2004cis_firewall: firewalld
ubuntu2004cis_firewall: iptables

5.3.1 | PATCH | パスワード作成要件が構成されていることを確認

ubuntu2004cis_pwquality:
  - key: 'minlen'
    value: '14'
  - key: 'dcredit'
    value: '-1'
  - key: 'ucredit'
    value: '-1'
  - key: 'ocredit'
    value: '-1'
  - key: 'lcredit'
    value: '-1'

依存関係

Ansible 2.10で開発およびテスト済み

タグ

何が変更されるかを正確に制御するための多くのタグがあります。

タグを使用した例:

    # サイトを監査およびパッチ
    ansible-playbook site.yml --tags="patch"

おすすめのリスト:

1 初期設定

  • 1.1 ファイルシステム構成
    • 1.1.1 未使用ファイルシステムを無効にする
      • 1.1.1.1 cramfsファイルシステムのマウントを無効にすることを確認(自動)
      • 1.1.1.2 freevxfsファイルシステムのマウントを無効にすることを確認(自動)
      • 1.1.1.3 jffs2ファイルシステムのマウントを無効にすることを確認(自動)
      • 1.1.1.4 hfsファイルシステムのマウントを無効にすることを確認(自動)
      • 1.1.1.5 hfsplusファイルシステムのマウントを無効にすることを確認(自動)
      • 1.1.1.6 udfファイルシステムのマウントを無効にすることを確認(自動)
      • 1.1.1.7 FATファイルシステムのマウントを制限することを確認(手動)
    • 1.1.2 /tmpが構成されていることを確認(自動)
    • 1.1.3 /tmpパーティションにnodevオプションが設定されていることを確認(自動)
    • 1.1.4 /tmpパーティションにnosuidオプションが設定されていることを確認(自動)
    • 1.1.5 /tmpパーティションにnoexecオプションが設定されていることを確認(自動)
    • 1.1.6 /dev/shmが構成されていることを確認(自動)
    • 1.1.7 /dev/shmパーティションにnodevオプションが設定されていることを確認(自動)
    • 1.1.8 /dev/shmパーティションにnosuidオプションが設定されていることを確認(自動)
    • 1.1.9 /dev/shmパーティションにnoexecオプションが設定されていることを確認(自動)
    • 1.1.10 /var用に別のパーティションが存在することを確認(自動)
    • 1.1.11 /var/tmp用に別のパーティションが存在することを確認(自動)
    • 1.1.12 /var/tmpパーティションにnodevオプションが設定されていることを確認(自動)
    • 1.1.13 /var/tmpパーティションにnosuidオプションが設定されていることを確認(自動)
    • 1.1.14 /var/tmpパーティションにnoexecオプションが設定されていることを確認(自動)
    • 1.1.15 /var/log用に別のパーティションが存在することを確認(自動)
    • 1.1.16 /var/log/audit用に別のパーティションが存在することを確認(自動)
    • 1.1.17 /home用に別のパーティションが存在することを確認(自動)
    • 1.1.18 /homeパーティションにnodevオプションが設定されていることを確認(自動)
    • 1.1.19 リムーバブルメディアパーティションにnodevオプションが設定されていることを確認(手動)
    • 1.1.20 リムーバブルメディアパーティションにnosuidオプションが設定されていることを確認(手動)
    • 1.1.21 リムーバブルメディアパーティションにnoexecオプションが設定されていることを確認(手動)
    • 1.1.22 すべての全ユーザ書き込み可能なディレクトリにスティッキービットが設定されていることを確認(自動)
    • 1.1.23 自動マウントを無効にする(自動)
    • 1.1.24 USBストレージを無効にする(自動)
  • 1.2 ソフトウェアアップデートの構成
    • 1.2.1 パッケージマネージャのリポジトリが構成されていることを確認(手動)
    • 1.2.2 GPGキーが構成されていることを確認(手動)
  • 1.3 sudoの構成
    • 1.3.1 sudoがインストールされていることを確認(自動)
    • 1.3.2 sudoコマンドがptyを使用していることを確認(自動)
    • 1.3.3 sudoログファイルが存在することを確認(自動)
  • 1.4 ファイルシステム整合性チェック
    • 1.4.1 AIDEがインストールされていることを確認(自動)
    • 1.4.2 定期的にファイルシステム整合性が確認されていることを確認(自動)
  • 1.5 セキュアブート設定
    • 1.5.1 ブートローダーのパスワードが設定されていることを確認(自動)
    • 1.5.2 ブートローダー設定の権限が適切に設定されていることを確認(自動)
    • 1.5.3 シングルユーザーモードに認証が必要であることを確認(自動)
  • 1.6 追加のプロセス強化
    • 1.6.1 XD/NXサポートが有効になっていることを確認(自動)
    • 1.6.2 アドレス空間レイアウトランダム化(ASLR)が有効になっていることを確認(自動)
    • 1.6.3 prelinkが無効になっていることを確認(自動)
    • 1.6.4 コアダンプが制限されていることを確認(自動)
  • 1.7 強制アクセス制御
    • 1.7.1 AppArmorを構成
      • 1.7.1.1 AppArmorがインストールされていることを確認(自動)
      • 1.7.1.2 AppArmorがブートローダー設定で有効になっていることを確認(自動)
      • 1.7.1.3 すべてのAppArmorプロファイルが強制または不満の状態であることを確認(自動)
      • 1.7.1.4 すべてのAppArmorプロファイルが強制されていることを確認(自動)
  • 1.8 警告バナー
    • 1.8.1 コマンドラインの警告バナー
      • 1.8.1.1 一日メッセージが適切に構成されていることを確認(自動)
      • 1.8.1.2 ローカルログインの警告バナーが適切に構成されていることを確認(自動)
      • 1.8.1.3 リモートログインの警告バナーが適切に構成されていることを確認(自動)
      • 1.8.1.4 /etc/motdの権限が適切に設定されていることを確認(自動)
      • 1.8.1.5 /etc/issueの権限が適切に設定されていることを確認(自動)
      • 1.8.1.6 /etc/issue.netの権限が適切に設定されていることを確認(自動)
  • 1.9 アップデート、パッチ、および追加のセキュリティソフトウェアが - インストールされていることを確認(手動)
  • 1.10 GDMが削除されているか、ログインが構成されていることを確認(自動)

2 サービス

  • 2.1 inetdサービス
    • 2.1.1 xinetdがインストールされていないことを確認(自動)
    • 2.1.2 openbsd-inetdがインストールされていないことを確認(自動)
  • 2.2 特別なサービス
    • 2.2.1 時間同期
      • 2.2.1.1 時間同期が使用されていることを確認(自動)
      • 2.2.1.2 systemd-timesyncdが構成されていることを確認(手動)
      • 2.2.1.3 chronyが構成されていることを確認(自動)
      • 2.2.1.4 ntpが構成されていることを確認(自動)
    • 2.2.2 Xウィンドウシステムがインストールされていないことを確認(自動)
    • 2.2.3 Avahiサーバーがインストールされていないことを確認(自動)
    • 2.2.4 CUPSがインストールされていないことを確認(自動)
    • 2.2.5 DHCPサーバーがインストールされていないことを確認(自動)
    • 2.2.6 LDAPサーバーがインストールされていないことを確認(自動)
    • 2.2.7 NFSがインストールされていないことを確認(自動)
    • 2.2.8 DNSサーバーがインストールされていないことを確認(自動)
    • 2.2.9 FTPサーバーがインストールされていないことを確認(自動)
    • 2.2.10 HTTPサーバーがインストールされていないことを確認(自動)
    • 2.2.11 IMAPおよびPOP3サーバーがインストールされていないことを確認(自動)
    • 2.2.12 Sambaがインストールされていないことを確認(自動)
    • 2.2.13 HTTPプロキシサーバーがインストールされていないことを確認(自動)
    • 2.2.14 SNMPサーバーがインストールされていないことを確認(自動)
    • 2.2.15 メール転送エージェントがローカル専用モードに構成されていることを確認(自動)
    • 2.2.16 rsyncサービスがインストールされていないことを確認(自動)
    • 2.2.17 NISサーバーがインストールされていないことを確認(自動)
  • 2.3 サービスクライアント
    • 2.3.1 NISクライアントがインストールされていないことを確認(自動)
    • 2.3.2 rshクライアントがインストールされていないことを確認(自動)
    • 2.3.3 talkクライアントがインストールされていないことを確認(自動)
    • 2.3.4 telnetクライアントがインストールされていないことを確認(自動)
    • 2.3.5 LDAPクライアントがインストールされていないことを確認(自動)
    • 2.3.6 RPCがインストールされていないことを確認(自動)
  • 2.4 不要なサービスが削除またはマスクされていることを確認(手動)

3 ネットワーク構成

  • 3.1 未使用のネットワークプロトコルとデバイスを無効にする
    • 3.1.1 IPv6を無効にする(手動)
    • 3.1.2 ワイヤレスインターフェースが無効になっていることを確認(自動)
  • 3.2 ネットワークパラメータ(ホスト専用)
    • 3.2.1 パケットリダイレクト送信が無効になっていることを確認(自動)
    • 3.2.2 IP転送が無効になっていることを確認(自動)
  • 3.3 ネットワークパラメータ(ホストとルーター)
    • 3.3.1 ソースルーティングパケットが受け入れられないことを確認(自動)
    • 3.3.2 ICMPリダイレクトが受け入れられないことを確認(自動)
    • 3.3.3 セキュアICMPリダイレクトが受け入れられないことを確認(自動)
    • 3.3.4 疑わしいパケットがログに記録されることを確認(自動)
    • 3.3.5 ブロードキャストICMPリクエストが無視されることを確認(自動)
    • 3.3.6 偽のICMP応答が無視されることを確認(自動)
    • 3.3.7 逆パスフィルタリングが有効になっていることを確認(自動)
    • 3.3.8 TCP SYNクッキーが有効になっていることを確認(自動)
    • 3.3.9 IPv6のルーター広告が受け入れられないことを確認(自動)
  • 3.4 一般的でないネットワークプロトコル
    • 3.4.1 DCCPが無効になっていることを確認(自動)
    • 3.4.2 SCTPが無効になっていることを確認(自動)
    • 3.4.3 RDSが無効になっていることを確認(自動)
    • 3.4.4 TIPCが無効になっていることを確認(自動)
  • 3.5 ファイアウォール構成
    • 3.5.1 UncomplicatedFirewallの構成
      • 3.5.1.1 Uncomplicated Firewallがインストールされていることを確認(自動)
      • 3.5.1.2 iptables-persistentがインストールされていないことを確認(自動)
      • 3.5.1.3 ufwサービスが有効になっていることを確認(自動)
      • 3.5.1.4 ループバックトラフィックが構成されていることを確認(自動)
      • 3.5.1.5 アウトバウンド接続が構成されていることを確認(手動)
      • 3.5.1.6 開いているすべてのポートのファイアウォールルールが存在することを確認(手動)
      • 3.5.1.7 デフォルトの拒否ファイアウォールポリシー(自動)
    • 3.5.2 nftablesを構成
      • 3.5.2.1 nftablesがインストールされていることを確認(自動)
      • 3.5.2.2 Uncomplicated Firewallがインストールされていないか無効であることを確認(自動)
      • 3.5.2.3 iptablesがフラッシュされていることを確認(手動)
      • 3.5.2.4 テーブルが存在することを確認(自動)
      • 3.5.2.5 基本チェーンが存在することを確認(自動)
      • 3.5.2.6 ループバックトラフィックが構成されていることを確認(自動)
      • 3.5.2.7 アウトバウンドと確立された接続が構成されていることを確認(手動)
      • 3.5.2.8 デフォルトの拒否ファイアウォールポリシーを確認(自動)
      • 3.5.2.9 nftablesサービスが有効になっていることを確認(自動)
      • 3.5.2.10 nftablesルールが永続的であることを確認(自動)
    • 3.5.3 iptablesを構成
      • 3.5.3.1.1 iptablesパッケージがインストールされていることを確認(自動)
      • 3.5.3.1.2 nftablesがインストールされていないことを確認(自動)
      • 3.5.3.1.3 Uncomplicated Firewallがインストールされていないか無効であることを確認(自動)
      • 3.5.3.2.1 デフォルトの拒否ファイアウォールポリシーを確認(自動)
      • 3.5.3.2.2 ループバックトラフィックが構成されていることを確認(自動)
      • 3.5.3.2.3 アウトバウンドと確立された接続が構成されていることを確認(手動)
      • 3.5.3.2.4 開いているすべてのポートのファイアウォールルールが存在することを確認(自動)
      • 3.5.3.3.1 IPv6デフォルトの拒否ファイアウォールポリシーが確認されること(自動)
      • 3.5.3.3.2 IPv6ループバックトラフィックが構成されていることを確認(自動)
      • 3.5.3.3.3 IPv6アウトバウンドと確立された接続が構成されていることを確認(手動)
      • 3.5.3.3.4 IPv6のファイアウォールルールがすべての開いているポートに対して存在することを確認(手動)

4 ロギングと監査

  • 4.1 システムアカウンティング(auditd)の構成
    • 4.1.1 監査が有効になっていることを確認
      • 4.1.1.1 auditdがインストールされていることを確認(自動)
      • 4.1.1.2 auditdサービスが有効になっていることを確認(自動)
      • 4.1.1.3 auditdより前に開始されるプロセスの監査が有効になっていることを確認(自動)
      • 4.1.1.4 audit_backlog_limitが十分であることを確認(自動)
    • 4.1.2 データ保持の構成
      • 4.1.2.1 監査ログのストレージサイズが構成されていることを確認(自動)
      • 4.1.2.2 監査ログが自動的に削除されないことを確認(自動)
      • 4.1.2.3 監査ログがいっぱいになった時にシステムが無効になることを確認(自動)
    • 4.1.3 日付と時間情報を変更するイベントが収集されることを確認(自動)
    • 4.1.4 ユーザー/グループ情報を変更するイベントが収集されることを確認(自動)
    • 4.1.5 システムのネットワーク環境を変更するイベントが収集されることを確認(自動)
    • 4.1.6 システムの強制アクセス制御を変更するイベントが収集されることを確認(自動)
    • 4.1.7 ログインとログアウトイベントが収集されることを確認(自動)
    • 4.1.8 セッション開始情報が収集されることを確認(自動)
    • 4.1.9 裁量によるアクセス制御の権限変更イベントが収集されることを確認(自動)
    • 4.1.10 不成功な無許可ファイルアクセスの試みが収集されることを確認(自動)
    • 4.1.11 特権コマンドの使用が収集されることを確認(自動)
    • 4.1.12 正常なファイルシステムマウントが収集されることを確認(自動)
    • 4.1.13 ユーザーによるファイル削除イベントが収集されることを確認(自動)
    • 4.1.14 システム管理範囲の変更(sudoers)が収集されることを確認(自動)
    • 4.1.15 システム管理者のコマンド実行(sudo)が収集されることを確認(自動)
    • 4.1.16 カーネルモジュールの読み込みとアンロードが収集されることを確認(自動)
    • 4.1.17 監査設定が不変であることを確認(自動)
  • 4.2 ロギングの構成
    • 4.2.1 rsyslogの構成
      • 4.2.1.1 rsyslogがインストールされていることを確認(自動)
      • 4.2.1.2 rsyslogサービスが有効になっていることを確認(自動)
      • 4.2.1.3 ロギングが構成されていることを確認(手動)
      • 4.2.1.4 rsyslogのデフォルトファイル権限が構成されていることを確認(自動)
      • 4.2.1.5 rsyslogがリモートログホストにログを送信するように構成されていることを確認(自動)
      • 4.2.1.6 リモートrsyslogメッセージは指定されたログホスト以外では受け付けないことを確認(手動)
    • 4.2.2 journaldの構成
      • 4.2.2.1 journaldがrsyslogにログを送信するように構成されていることを確認(自動)
      • 4.2.2.2 journaldが大きなログファイルを圧縮するように構成されていることを確認(自動)
      • 4.2.2.3 journaldが永続的なディスクにファイルを書き込むように構成されていることを確認(自動)
    • 4.2.3 すべてのログファイルに対する権限が適切に構成されていることを確認(自動)
  • 4.3 logrotateが構成されていることを確認(手動)
  • 4.4 logrotateが適切な権限を割り当てていることを確認(自動)

5 アクセス、認証、承認

  • 5.1 時間基準のジョブスケジューラを構成
    • 5.1.1 cronデーモンが有効で実行中であることを確認(自動)
    • 5.1.2 /etc/crontabの権限が適切に設定されていることを確認(自動)
    • 5.1.3 /etc/cron.hourlyの権限が適切に設定されていることを確認(自動)
    • 5.1.4 /etc/cron.dailyの権限が適切に設定されていることを確認(自動)
    • 5.1.5 /etc/cron.weeklyの権限が適切に設定されていることを確認(自動)
    • 5.1.6 /etc/cron.monthlyの権限が適切に設定されていることを確認(自動)
    • 5.1.7 /etc/cron.dの権限が適切に設定されていることを確認(自動)
    • 5.1.8 cronが認可されたユーザーに制限されていることを確認(自動)
    • 5.1.9 atが認可されたユーザーに制限されていることを確認(自動)
  • 5.2 SSHサーバーの構成
    • 5.2.1 /etc/ssh/sshd_configの権限が適切に設定されていることを確認(自動)
    • 5.2.2 SSHプライベートホストキーの権限が適切に設定されていることを確認(自動)
    • 5.2.3 SSHパブリックホストキーの権限が適切に設定されていることを確認(自動)
    • 5.2.4 SSH LogLevelが適切であることを確認(自動)
    • 5.2.5 SSH X11フォワーディングが無効であることを確認(自動)
    • 5.2.6 SSH MaxAuthTriesが4以下に設定されていることを確認(自動)
    • 5.2.7 SSH IgnoreRhostsが有効であることを確認(自動)
    • 5.2.8 SSH HostbasedAuthenticationが無効であることを確認(自動)
    • 5.2.9 SSHのrootログインが無効であることを確認(自動)
    • 5.2.10 SSH PermitEmptyPasswordsが無効であることを確認(自動)
    • 5.2.11 SSH PermitUserEnvironmentが無効であることを確認(自動)
    • 5.2.12 強力な暗号のみが使用されることを確認(自動)
    • 5.2.13 強力なMACアルゴリズムのみが使用されることを確認(自動)
    • 5.2.14 強力なキー交換アルゴリズムのみが使用されることを確認(自動)
    • 5.2.15 SSH Idle Timeout Intervalが構成されていることを確認(自動)
    • 5.2.16 SSH LoginGraceTimeが1分以内に設定されていることを確認(自動)
    • 5.2.17 SSHアクセスが制限されていることを確認(自動)
    • 5.2.18 SSH警告バナーが構成されていることを確認(自動)
    • 5.2.19 SSH PAMが有効であることを確認(自動)
    • 5.2.20 SSH AllowTcpForwardingが無効であることを確認(自動)
    • 5.2.21 SSH MaxStartupsが構成されていることを確認(自動)
    • 5.2.22 SSH MaxSessionsが制限されていることを確認(自動)
  • 5.3 PAMの構成
    • 5.3.1 パスワード作成要件が構成されていることを確認(自動)
    • 5.3.2 失敗したパスワード試行に対するロックアウトが構成されていることを確認(自動)
    • 5.3.3 パスワードの再利用が制限されていることを確認(自動)
    • 5.3.4 パスワードハッシュアルゴリズムがSHA-512であることを確認(自動)
  • 5.4 ユーザーアカウントと環境
    • 5.4.1 シャドウパスワードスイートパラメータを設定
      • 5.4.1.1 パスワードの有効期限が365日以下であることを確認(自動)
      • 5.4.1.2 パスワード変更の最小日数が構成されていることを確認(自動)
      • 5.4.1.3 パスワードの有効期限警告日数が7日以上であることを確認(自動)
      • 5.4.1.4 非アクティブパスワードのロックが30日以下であることを確認(自動)
      • 5.4.1.5 すべてのユーザーの最終パスワード変更日が過去であることを確認(自動)
    • 5.4.2 システムアカウントが保護されていることを確認(自動)
    • 5.4.3 rootアカウントのデフォルトグループがGID 0であることを確認(自動)
    • 5.4.4 デフォルトユーザーumaskが027以上の制限をかけることを確認(自動)
    • 5.4.5 デフォルトユーザーシェルのタイムアウトが900秒以下であることを確認(自動)
  • 5.5 rootログインがシステムコンソールに制限されていることを確認(手動)
  • 5.6 suコマンドへのアクセスが制限されていることを確認(自動)

6 システムメンテナンス

  • 6.1 システムファイルの権限
    • 6.1.1 システムファイルの権限を監査する(手動)
    • 6.1.2 /etc/passwdの権限が適切に設定されていることを確認(自動)
    • 6.1.3 /etc/gshadowの権限が適切に設定されていることを確認(自動)
    • 6.1.4 /etc/shadowの権限が適切に設定されていることを確認(自動)
    • 6.1.5 /etc/groupの権限が適切に設定されていることを確認(自動)
    • 6.1.6 /etc/passwd-の権限が適切に設定されていることを確認(自動)
    • 6.1.7 /etc/shadow-の権限が適切に設定されていることを確認(自動)
    • 6.1.8 /etc/group-の権限が適切に設定されていることを確認(自動)
    • 6.1.9 /etc/gshadowの権限が適切に設定されていることを確認(自動)
    • 6.1.10 世界書き込み可能なファイルが存在しないことを確認(自動)
    • 6.1.11 所有権のないファイルやディレクトリが存在しないことを確認(自動)
    • 6.1.12 グループ未所属のファイルやディレクトリが存在しないことを確認(自動)
    • 6.1.13 SUID実行可能ファイルを監査する(手動)
    • 6.1.14 SGID実行可能ファイルを監査する(手動)
  • 6.2 ユーザーとグループの設定
    • 6.2.1 パスワードフィールドが空でないことを確認(自動)
    • 6.2.2 rootが唯一のUID 0アカウントであることを確認(自動)
    • 6.2.3 rootパスの整合性が確認されていることを確認(自動)
    • 6.2.4 すべてのユーザーのホームディレクトリが存在することを確認(自動)
    • 6.2.5 ユーザーのホームディレクトリの権限が750以上の制限がかけられていることを確認(自動)
    • 6.2.6 ユーザーが自分のホームディレクトリを所有していることを確認(自動)
    • 6.2.7 ユーザーのドットファイルがグループまたは全世界書き込み可能でないことを確認(自動)
    • 6.2.8 ユーザーに.forwardファイルが存在しないことを確認(自動)
    • 6.2.9 ユーザーに.netrcファイルが存在しないことを確認(自動)
    • 6.2.10 ユーザーの.netrcファイルがグループまたは全世界にアクセスできないことを確認(自動)
    • 6.2.11 ユーザーに.rhostsファイルが存在しないことを確認(自動)
    • 6.2.12 /etc/passwdのすべてのグループが/etc/groupに存在することを確認(自動)
    • 6.2.13 重複UIDが存在しないことを確認(自動)
    • 6.2.14 重複GIDが存在しないことを確認(自動)
    • 6.2.15 重複したユーザー名が存在しないことを確認(自動)
    • 6.2.16 重複したグループ名が存在しないことを確認(自動)
    • 6.2.17 シャドウグループが空であることを確認(自動)

ライセンス

MIT

その他

このリポジトリはMindPointGroupによる作業に基づいています。

プロジェクトについて

Ansible role to apply Ubuntu 20.04 CIS Baseline

インストール
ansible-galaxy install florianutz.ubuntu2004_cis
ライセンス
mit
ダウンロード
7.9k
所有者