Files
cluster/webmin/install-playbook.yml
Khwezi Mngoma 0410dc3950 first commit
2026-02-22 16:43:17 +02:00

57 lines
1.3 KiB
YAML

---
- name: Install Webmin using official setup script
hosts: all
become: yes
vars:
webmin_port: 10000
webmin_script: /tmp/webmin-setup-repo.sh
tasks:
- name: Ensure required packages are installed
apt:
name:
- curl
- ufw
state: present
update_cache: yes
- name: Download Webmin setup script
get_url:
url: https://raw.githubusercontent.com/webmin/webmin/master/webmin-setup-repo.sh
dest: "{{ webmin_script }}"
mode: '0755'
- name: Run Webmin setup script non-interactively
command: "sh {{ webmin_script }}"
args:
stdin: "y\n"
creates: /etc/apt/sources.list.d/webmin.list
- name: Update apt cache after script
apt:
update_cache: yes
- name: Install Webmin
apt:
name: webmin
state: latest
- name: Ensure Webmin service is running
systemd:
name: webmin
state: started
enabled: yes
- name: Allow Webmin port through UFW
ufw:
rule: allow
port: "{{ webmin_port }}"
proto: tcp
register: ufw_rule
- name: Confirm UFW rule applied
debug:
msg: "UFW rule for Webmin (port {{ webmin_port }}) is present."
when: ufw_rule.changed or ufw_rule.skipped