singleplatform-eng.users
ansible-users
システム上のユーザーを管理するための役割です。
役割の設定
- users_create_per_user_group (デフォルト: true) - ユーザーを作成する際、同じユーザー名のグループも作成し、そのグループをユーザーの主要グループにします。
- users_group (デフォルト: users) - users_create_per_user_groupが設定されていない場合、こちらが作成されるすべてのユーザーの主要グループになります。
- users_default_shell (デフォルト: /bin/bash) - ユーザーに指定されない場合のデフォルトシェルです。
- users_create_homedirs (デフォルト: true) - 新しいユーザーのためにホームディレクトリを作成します。別に管理する場合はfalseに設定してください。
- authorized_keys_file (デフォルト: .ssh/authorized_keys) - SSHサーバーが標準外の認証キーのファイルを使用するように設定されている場合は、ここを設定してください。
ユーザーの作成
追加するユーザーのリストを含むusers変数を追加します。これを付け加えるのに良い場所はgroup_vars/all
または特定のマシンにのみユーザーを設定する場合はgroup_vars/groupname
です。
各ユーザーに必要な属性は以下の通りです:
- username - ユーザーのユーザー名。
- name - ユーザーのフルネーム(gecosフィールド)。
- home - 作成するユーザーのホームディレクトリ(オプション、デフォルトは/home/username)。
- uid - ユーザーの数値的なユーザーID(オプション)。システム間でのUIDの整合性のために必要です。
- gid - グループの数値的なグループID(オプション)。指定がない場合、uidが使用されます。
- password - ハッシュが提供された場合、そのハッシュが使用されますが、そうでない場合はアカウントはロックされます。
- update_password - "always"または"on_create"のどちらかです。
- "always"は、パスワードが異なる場合に更新します(デフォルト)。
- "on_create"は、新しく作成されたユーザーのみにパスワードを設定します。
- group - オプションの主要グループの上書き。
- groups - ユーザーの補助グループのリスト。
- append - "yes"に設定すると、グループを追加するだけで、指定されたリストにだけ設定しません(オプション)。
- profile - カスタムシェルプロファイルを設定するための文字列ブロック。
- ssh_key - ユーザーのSSHキーのリスト(オプション)。各SSHキーは直接含め、改行を含めないようにします。
- generate_ssh_key - ユーザーのためにSSHキーを生成するか否か(オプション、デフォルトはno)。
さらに、各ユーザーに対して以下の項目はオプションです:
- shell - ユーザーのシェル。デフォルトは/bin/bashです。同じシェルをすべてのユーザーに与えたい場合は、users_default_shell変数を使用して設定することができますが、/bin/bashとは異なります。
例:
---
users:
- username: foo
name: Foo Barrington
groups: ['wheel','systemd-journal']
uid: 1001
home: /local/home/foo
profile: |
alias ll='ls -lah'
ssh_key:
- "ssh-rsa AAAAA.... foo@machine"
- "ssh-rsa AAAAB.... foo2@machine"
groups_to_create:
- name: developers
gid: 10000
users_deleted:
- username: bar
name: Bar User
uid: 1002
ユーザーの削除
users_deleted
変数には、システム上に存在しないべきユーザーのリストが含まれ、次回のansible実行時に削除されます。フォーマットは、追加するユーザーと同じですが、唯一必要なフィールドはusername
です。ただし、数値ユーザーIDが誤って再利用されないように、uid
フィールドも保持することをお勧めします。
オプションで、remove
パラメータを使用してユーザーのホームディレクトリとメールスプールを削除し、force
パラメータを使用してファイルの強制削除を選択できます。
users_deleted:
- username: bar
uid: 1002
remove: yes
force: yes
インストール
ansible-galaxy install singleplatform-eng.users
ライセンス
mit
ダウンロード
8.5M
所有者
Open source code from the SinglePlatform Engineering team.