Files
oam/examples/ansible/knockd.yml
2024-04-28 21:07:30 +02:00

52 lines
1.2 KiB
YAML

---
- name: Setup port knocking
tags:
- knock
- knockd
- port-knocking
hosts: all
vars:
packages:
- "{{ (ansible_pkg_mgr in ['dnf', 'yum']) | ternary('knock-server', 'knockd') }}"
handlers:
- name: Restart knockd
tags:
- restart
- service
ansible.builtin.service:
name: knockd.service
state: restarted
enabled: true
tasks:
- name: Install knockd
tags:
- installation
- package
become: true
ansible.builtin.package:
name: "{{ packages }}"
- name: Configure knockd
tags:
- configuration
become: true
notify: Restart knockd
ansible.builtin.copy:
dest: /etc/knockd.conf
content: |
[options]
UseSyslog
Interface = {{ ansible_default_ipv4.alias }}
[openClose7777]
sequence = 2222:udp,3333:tcp,4444:udp
seq_timeout = 15
tcpflags = syn
cmd_timeout = 10
start_command = /usr/bin/firewall-cmd --add-port=7777/tcp --zone=public
stop_command = /usr/bin/firewall-cmd --remove-port=7777/tcp --zone=public
backup: true
mode: '0600'