···
- hosts: remote_logging_clients
+
- name: Ensure syslog-ng is installed
when: ansible_system == "Linux"
+
- name: Ensure syslog-ng is enabled
ansible.builtin.systemd_service:
when: ansible_service_mgr == "systemd"
- name: Remove any forwarding file if exists
+
path: /etc/syslog-ng/conf.d/forward.conf
when: ansible_system == "Linux"
+
- name: Get remote logging server tailnet IP address
ansible.builtin.shell: tailscale status | grep "nas-aux" | awk '{print $1}'
+
register: ctrl_tailnet_ip_addr
+
failed_when: ctrl_tailnet_ip_addr.rc != 0
+
- name: Configure log forwarding (Debian)
+
ansible.builtin.blockinfile:
+
path: /etc/syslog-ng/conf.d/forward.conf
+
# Forward to nas-aux ({{ctrl_tailnet_ip_addr.stdout}})
+
syslog-ng(server("{{ctrl_tailnet_ip_addr.stdout}}"));
+
when: ansible_os_family == "Debian"
+
- name: Configure log forwarding (Red Hat)
ansible.builtin.blockinfile:
+
path: /etc/syslog-ng/conf.d/forward.conf
+
# Forward to nas-aux ({{ctrl_tailnet_ip_addr.stdout}})
+
syslog-ng(server("{{ctrl_tailnet_ip_addr.stdout}}"));
+
when: ansible_os_family == "RedHat"
+
- name: Restart syslog-ng
ansible.builtin.systemd_service:
when: ansible_service_mgr == "systemd"
- name: Set syslog flags for remote logging on FreeBSD
ansible.builtin.shell: sysrc syslog_flags="-s -v -v"
register: set_syslog_flags
changed_when: '"syslog_flags: -> YES" in set_syslog_flags.stdout'
when: ansible_service_mgr == "bsdinit"
- name: Set log forwarding on FreeBSD
ansible.builtin.lineinfile:
+
line: "*.* @{{ctrl_tailnet_ip_addr.stdout}}"
when: ansible_system == "FreeBSD"