Hello from MCP server
---
- name: Configure Server Users and Directories
hosts: all
become: yes
vars:
# It is safer to use password hashes or SSH keys only
deploy_user: deploy
dev_user: dev
tasks:
- name: Install required packages
apt:
name:
- rsync
- acl
state: present
update_cache: yes
- name: Ensure 'webmasters' group exists
group:
name: webmasters
state: present
- name: Create the Deploy user (System User)
user:
name: "{{ deploy_user }}"
shell: /bin/bash
groups: webmasters
system: yes
create_home: yes
- name: Create the Dev user (Standard User)
user:
name: "{{ dev_user }}"
shell: /bin/bash
groups: webmasters, sudo
append: yes
- name: Create app hosting directories
file:
path: "{{ item }}"
state: directory
owner: "{{ deploy_user }}"
group: webmasters
mode: '0775' # Owner/Group can write, others can only read/exec
loop:
- /var/www
- /srv/apps
- /opt/custom_apps
- name: Setup SSH directory for deploy user
file:
path: "/home/{{ deploy_user }}/.ssh"
state: directory
owner: "{{ deploy_user }}"
group: "{{ deploy_user }}"
mode: '0700'