socketwench.users-and-groups
Ansibleロール: ユーザーとグループ
Debian/Ubuntu Linux用のユーザーとグループを作成します。
要件
特になし。
ロール変数
使用可能な変数は、デフォルト値とともに以下に示されています(defaults/main.yml
を参照)。
デフォルトの設定でユーザーを作成し、プライマリーグループがそのユーザー名と同じである場合:
server_users:
- name: "ash"
password: "imnotarobot"
グループ
別のグループ変数はありません。グループはserver_users
変数の一部です。
プライマリーグループ名と代替グループを指定するには:
server_users:
- name: "ash"
password: "imnotarobot"
group: "primarygroupname"
groups:
- "anothergroup"
- "more-groups-here"
SSHキー
デフォルトでは、このロールで作成されるすべてのユーザーに新しいSSHキーが生成されます:
server_users_ssh_key_generate: yes
server_users_ssh_key_bits: "4096"
これをユーザーごとにオーバーライドすることもできます:
server_users:
- name: "ash"
password: "imnotarobot"
ssh_key_generate: yes
ssh_key_bits: "4096"
SSH認証キー
時々、ユーザーがパスワードの代わりに公開鍵を使ってログインできるように、認証キーを設定したいことがあります。すべてのユーザーに対してそれを設定するには:
server_users_auth_keys: "{{ contents_of_ssh_authorized_keys }}"
変数の内容は、~/.ssh/authorized_keys
ファイルと同じです。
これもユーザーごとにオーバーライドできます:
server_users:
- name: "ash"
password: "imnotarobot"
auth_keys: "{{ contents_of_ssh_authorized_keys }}"
デフォルトシェル
デフォルトのシェルはbashです。すべてのユーザーに対してこれをオーバーライドすることができます:
server_users_shell: "/bin/bash"
特定のユーザーに対してシェルを指定することもできます。これは上記のデフォルトをオーバーライドします:
server_users:
- name: "ash"
password: "imnotarobot"
shell: "/bin/zsh"
デフォルトでは、ロールはセキュリティ上の理由からタスクアクションをログに記録しません。ログ記録を有効にするには:
server_users_no_log: true
Ansible設定
このロールは各ユーザーのホームディレクトリに.ansible.cfg
ファイルを配布します。これにより、デフォルトのrole_pathとno_cows設定をオーバーライドできます:
server_users_ansible_role_path: "~/.ansible/roles"
server_users_ansible_nocows: 1
server_users_ansible_log: false
server_users_ansible_log_path: '~/ansible.log'
これもユーザーごとにできます:
server_users:
- name: "ash"
password: "imnotarobot"
ansible_role_path: "/etc/ansible/roles"
ansible_nocows: 0
ansible_log: true
ansible_log_path: "/home/ash/logs/ansible.log"
ユーザーの削除
state
変数を使ってユーザーを削除することもできます:
server_users:
- name: "ash"
state: absent
ホームディレクトリも削除したい場合は、remove
を使います:
server_users:
- name: "ash"
state: absent
remove: yes
依存関係
特になし。
例プレイブック
server_users:
- name: "ash"
password: "imnotarobot"
group: "wy"
groups:
- "scidiv"
- name: "kane"
password: "ihateeggs"
shell: "/bin/ksh"
ssh_key_generate: no
ライセンス
GPL 3.0。
作成者情報
このロールは2017年に socketwench によって作成されました。