users.yml 934 B

123456789101112131415161718192021222324252627282930313233343536
  1. - name:
  2. hosts: webservers
  3. vars_files:
  4. - vars/users_vars.yml
  5. tasks:
  6. - name: create webadmin group
  7. group:
  8. name: webadmin
  9. state: present
  10. - name: create user account
  11. user:
  12. name: "{{ item.username }}"
  13. groups: "{{ item.groups }}"
  14. loop: "{{ users }}"
  15. - name: add authorized keys
  16. authorized_key:
  17. user: "{{ item.username }}"
  18. key: "{{ lookup('file', 'files/'+item.username + '.key.pub') }}"
  19. loop: "{{ users }}"
  20. - name: modify sudoers
  21. copy:
  22. content: "%webadmin ALL=(ALL) NOPASSWD: ALL"
  23. dest: /etc/sudoers.d/webadmin
  24. mode: 0440
  25. - name: disable root ssh login
  26. lineinfile:
  27. dest: /etc/ssh/sshd_config
  28. regexp: "^PermitRootLogin"
  29. line: "PermitRootLogin no"
  30. notify: Restart sshd
  31. handlers:
  32. - name: Restart sshd
  33. service:
  34. name: sshd
  35. state: restarted