Chef cookbook to manage users.
- Ubuntu 16.04 (tested with Kitchen)
- Ubuntu 14.04 was not tested however no ubuntu 16.04-specific commands are used here so it will probably work.
- CentOS 7 (tested with Kitchen)
- Redhat 7 (tested with Kitchen)
- Set 'simple_users' as one of your dependencies
- Include simple_users::default in any of your recipes, roles or environments.
Add a block to the default attribute containing each of the following to create a user:
- name - Username.
- fullName - Full name of your new user (may contain spaces).
- passHash - Shadow-file hash of the desired password. The hash can be generated with the following commands:
openssl passwd -1 -salt xyz yourpass
makepasswd --clearfrom=- --crypt-md5 <<< YourPass
- sshPubKey - ssh public key string to add to ~/.ssh/authorized_keys
- action - create
- sudo - yes/no. Adding/removing the user from the sudoers file.
default['simple_users']['users'] = [
{
'name' => 'usernam01',
'fullName' => 'User01 Name',
'passHash' => 'A_Long_HASH_String...',
'sshPubKey' => 'ssh-rsa YourSSHPublicKey...',
'myAction' => 'create',
'sudo' => 'yes'
},
{
'name' => 'usernam02',
'fullName' => 'User02 Name',
'passHash' => 'A_Long_HASH_String...',
'sshPubKey' => 'ssh-rsa YourSSHPublicKey...',
'myAction' => 'create',
'sudo' => 'no'
}
]
Add all the entries as mentioned above but put "remove" as the value of myAction.
{
'name' => 'usernam03',
'fullName' => 'User03 Name',
'passHash' => 'A_Long_HASH_String...',
'sshPubKey' => 'ssh-rsa YourSSHPublicKey...',
'myAction' => 'remove'
}
Put 'no' in the 'sudo' section of your user.
Note that the above must be a part of the same default['simple_users']['users']
array.