Development docs

Linux-users

Playbooks can manage linux-users for FAST-managed servers by updating the yaml configuration files and starting AWX jobs. This functionality is split into 3 different components: Users , Groups and Keys .

The linux-users section in the group_vars files starts with ssh:

This functionality is currently still in beta.

Playbooks cannot manage Users , Groups and Keys that are not defined in the group_vars files.

Users

With playbooks you can add, update and remove ssh users on a server. The passwords for these users are stored within a vault. User passwords can also be changed from NewAdmin, from the user detail page.

The ssh users section in the group_vars files is located within the linux-users section and starts with users:

The following data is stored for ssh users :
  • password only stored within the vault
    • password for the user
  • homedir required
    • home directory for the user
  • group
    • primary user group, see Groups
  • groups
    • user groups the user is part of, see Groups
  • uid
    • id of the user
  • authorized_keys
    • ssh keys of the user, see Keys
  • shell required
    • shell for the user, options: /bin/bash , /bin/sh , /bin/false and /usr/sbin/nologin ,

Playbooks also keeps track of the UID's of a ssh user , to account for system-users the UID's created by playbooks start from 10001

Groups

Along with ssh users , playbooks can also manage ssh user groups .

The ssh user groups section in the group_vars files is located within the linux-users section and starts with groups:

The following data is stored for ssh user groups :
  • gid
    • id of the group

Again, just like with the ssh users to account for system ssh user groups the id's created by playbooks start from 10001

Keys

With playbooks you can manage ssh keys to gain access to a FAST-managed server.

The ssh users section is located within the all.yml file and starts with publickeys:

The following data is stored for ssh keys :
  • id
    • name of the ssh key
  • key
    • the public keys

Examples

{server_group}.yml

ssh:
  groups:
    webdevgroup01: {  }
    webdevgroup02: {  }
  users:
    regularuser:
      homedir: /home/regularuser
      shell: /bin/bash
      uid: 10001
    systemuser:
      homedir: /home/systemuser
      shell: /bin/bash
      uid: 668

all.yml

publickeys:
  test: ssh-rsa ...

Search results