rbrightling.shadow_utils

シャドウユーティリティ

テスト Ansible ロール Ansible Galaxy

ユーザーやグループアカウントを管理するためのシャドウユーティリティパッケージの設定を管理します。

ベストプラクティスに基づいたセキュリティがデフォルト設定に適用されていますが、必ず十分な確認を行ってください。これは保証ではありません。

要件

Ansible 2.8以上

サポート対象OS

  • Debian 10
  • CentOS 8

ロール変数

# useraddの設定オプション
# #######################

# useraddで作成されるデフォルトのシェル
shadow_utils_shell: "{{ shadow_utils__shell }}"

# ユーザーのGID (100=users)、他のグループが指定されていない場合に使用
shadow_utils_group: 100

# パスワードが期限切れになってからアカウントが永久に無効になるまでの期間。 -1で無効にする
shadow_utils_inactive: 60

# デフォルトのexpire日
shadow_utils_expire: null

# デフォルトのホームディレクトリ
shadow_utils_home: "/home"

# 新しいユーザーのホームディレクトリにコピーされるスケルトン構造
shadow_utils_skel: "/etc/skel"

# 新しいユーザー用のメールスプールをデフォルトで作成
shadow_utils_create_mail_spool: false

# Login.defsの設定オプション
# #########################

# メールスプールのディレクトリ。これは、対応するユーザーアカウントが変更または削除されたときにメールボックスを操作するのに必要。
shadow_utils_mail_dir: "{{ shadow_utils__mail_dir }}"

# ユーザーのホームディレクトリに対してユーザースプールファイルの場所を定義
shadow_utils_mail_file: null

# /var/log/faillogにログイン失敗情報の記録と表示を有効にする。
# このオプションはpam_tally PAMモジュールと競合する。
shadow_utils_faillog_enab: true

# ログイン失敗が記録されたときに不明なユーザー名の表示を有効にする。
shadow_utils_log_unkfail_enab: true
 
# 成功したログインのログ記録を有効にする。
shadow_utils_log_ok_logins: false

# suアクティビティの「syslog」ロギングを有効にする - sulogファイルロギングに加えて
shadow_utils_syslog_su_enab: true

# sgアクティビティの「syslog」ロギングを有効にする。
shadow_utils_syslog_sg_enab: true
 
# 定義されていれば、すべてのsuアクティビティがこのファイルに記録される。
shadow_utils_sulog_file: '/var/log/su.log'

shadow_utils_ftmp_file: '/var/log/btmp'

# 定義されていれば、ttyラインをTERM環境変数にマッピングするファイル
shadow_utils_ttytype_file: null

# 定義されていれば、「su -」を実行するときに表示されるコマンド名。
shadow_utils_su_name: 'su'

# 定義されていれば、ログインメッセージを抑制する。フルパスが指定されている場合、指定されたファイル内のユーザー名に対して抑制が有効になる。そうでない場合は、ユーザーのディレクトリにファイルが存在すれば抑制が有効になる。
shadow_utils_hushlogin_file: '.hushlogin'

# ログイン時のスーパーユーザーのPATH変数を設定
shadow_utils_env_supath: 
    - '/usr/local/sbin'
    - '/usr/local/bin'
    - '/usr/sbin'
    - '/usr/bin'
    - '/sbin'
    - '/bin'

# ログイン時の通常ユーザーのPATH変数を設定
shadow_utils_env_path: 
    - '/usr/local/bin'
    - '/usr/bin'
    - '/bin'
    - '/usr/local/games'
    - '/usr/games'

# ターミナルの権限
shadow_utils_ttygroup: 'tty'
shadow_utils_ttyperm: '0600'

# ターミナルのREASE文字 (010 = バックスペース, 0177 = DEL)
shadow_utils_erasechar: '0177'

# ターミナルのKILL文字 (025 = CTRL/U)
shadow_utils_killchar: '025'

# ファイルモード作成マスクはこの値で初期化される。
shadow_utils_umask: '077'
# - 022: ファイル - 640 (rw-rw----), ディレクトリ - 750 (rwxrwx---)
# - 027: ファイル - 640 (rw-r-----), ディレクトリ - 750 (rwxr-x---)
# - 077: ファイル - 640 (rw-------), ディレクトリ - 750 (rwx------)

# パスワードが使用できる最大日数。この期間を超えるパスワードは強制的に変更される。
shadow_utils_pass_max_days: 366

# パスワード変更の間に許可される最小日数。この期間より早いパスワード変更を試みると拒否される。
shadow_utils_pass_min_days: 1

# パスワードが期限切れになる前に警告される日数。
shadow_utils_pass_warn_age: 31

# 一般ユーザー作成に使用されるユーザーIDの範囲
shadow_utils_uid_min: 1000
shadow_utils_uid_max: 60000

# システムユーザー作成に使用されるユーザーIDの範囲
shadow_utils_sys_uid_min: 201
shadow_utils_sys_uid_max: 999

# 一般グループ作成に使用されるグループIDの範囲
shadow_utils_gid_min: 1000
shadow_utils_gid_max: 60000

# システムグループ作成に使用されるグループIDの範囲
shadow_utils_sys_gid_min: 201
shadow_utils_sys_gid_max: 999

# 不正なパスワードの場合の最大ログイン再試行回数。
# これはおそらくPAMによってオーバーライドされるが、安全なフォールバックとして機能することができる。
shadow_utils_login_retries: 5

# ログインの最大時間(秒)
shadow_utils_login_timeout: 60

# ユーザーがchfnで変更できるgecosシールドを指定。
# f - フルネーム, r - 部屋番号, w - 勤務電話, h - 自宅電話
shadow_utils_chfn_restrict: 'rwh'

# ホームディレクトリにcdできない場合でもユーザーはログインを許可
shadow_utils_default_home: false

# デフォルトで新ユーザーのホームディレクトリを作成
shadow_utils_create_home: true

# 定義されていれば、ユーザーを削除する際に実行されるコマンド
shadow_utils_userdel_cmd: null

# 新ユーザー用に同名のデフォルトグループを作成し、ユーザーが削除されたときに空のグループを削除する。
shadow_utils_usergroups_enab: true

# パスワードを暗号化するためのデフォルトの暗号化アルゴリズム
shadow_utils_encrypt_method: 'SHA512'

依存関係

なし

例のプレイブック

- hosts: servers
  tasks:
    - name: "シャドウユーティリティを含める"
      include_role:
        name: "shadow_utils"

ライセンス

LGPLv3

著者情報

プロジェクトについて

Manage the shadow utils configuration on a system.

インストール
ansible-galaxy install rbrightling.shadow_utils
ライセンス
lgpl-3.0
ダウンロード
320
所有者
DevOps and general computer tinkerer.