- name: Add deploy user and disable root user hosts: all vars: remote_user: root tasks: - name: Add a new user named deploy user: name=deploy - name: Add deploy user to the sudoers copy: dest: "/etc/sudoers.d/deploy" content: "deploy ALL=(ALL) NOPASSWD: ALL" - name: Deploy your SSH Key authorized_key: user=deploy key="{{ lookup('file', '~/.ssh/id_rsa.pub') }}" state=present - name: Disable Password Authentication lineinfile: dest=/etc/ssh/sshd_config regexp='^PasswordAuthentication' line="PasswordAuthentication no" state=present backup=yes notify: - restart ssh - name: Disable Root Login lineinfile: dest=/etc/ssh/sshd_config regexp='^PermitRootLogin' line="PermitRootLogin no" state=present backup=yes notify: - restart ssh handlers: - name: restart ssh service: name=ssh state=restarted