aboutsummaryrefslogtreecommitdiffstats
path: root/roles/snmp/tasks/main.yml
diff options
context:
space:
mode:
authorStonewall Jackson <stonewall@sacredheartsc.com>2023-02-04 01:23:43 -0500
committerStonewall Jackson <stonewall@sacredheartsc.com>2023-02-04 01:52:13 -0500
commit0261e875679f1bf63c8d689da7fc7e014597885d (patch)
tree3f19cd74a0c1070944f75437f30b098d6ef2ffcb /roles/snmp/tasks/main.yml
downloadselfhosted-0261e875679f1bf63c8d689da7fc7e014597885d.tar.gz
selfhosted-0261e875679f1bf63c8d689da7fc7e014597885d.zip
initial commit
Diffstat (limited to 'roles/snmp/tasks/main.yml')
-rw-r--r--roles/snmp/tasks/main.yml51
1 files changed, 51 insertions, 0 deletions
diff --git a/roles/snmp/tasks/main.yml b/roles/snmp/tasks/main.yml
new file mode 100644
index 0000000..e2ca90c
--- /dev/null
+++ b/roles/snmp/tasks/main.yml
@@ -0,0 +1,51 @@
+- name: install packages
+ dnf:
+ name: '{{ snmp_packages }}'
+ state: present
+
+- name: generate config file
+ template:
+ src: etc/snmp/snmpd.conf.j2
+ dest: /etc/snmp/snmpd.conf
+ mode: 0600
+ notify: restart snmpd
+
+- name: open firewall ports
+ firewalld:
+ permanent: yes
+ immediate: yes
+ service: snmp
+ state: enabled
+ tags: firewalld
+
+- name: check if snmp users are defined
+ command: grep -q usmUser /var/lib/net-snmp/snmpd.conf
+ failed_when: no
+ changed_when: no
+ register: snmp_users_exist
+
+- name: add snmp users
+ block:
+ - name: stop snmpd
+ systemd:
+ name: snmpd
+ state: stopped
+
+ - name: add snmpv3 users
+ lineinfile:
+ path: /var/lib/net-snmp/snmpd.conf
+ line: 'createUser {{ item.name }} SHA "{{ item.auth_pass }}" AES "{{ item.priv_pass }}"'
+ insertafter: EOF
+ create: yes
+ mode: 0600
+ loop: '{{ snmp_v3_users }}'
+ loop_control:
+ label: '{{ item.name }}'
+
+ - name: enable and start snmpd
+ systemd:
+ name: snmpd
+ enabled: yes
+ state: started
+
+ when: snmp_users_exist.rc != 0 or snmp_force_users