# minifirewall Installation of minifirewall a simple and versatile local firewall. The firewall is not started by default, but an init script is installed. ## Tasks Everything is in the `tasks/main.yml` file. ## Available variables * `minifirewall_int`: which network interface to protect (default: detected default ipv4 interface) * `minifirewall_ipv6_enabled`: (default: `on`) * `minifirewall_int_lan`: (default: IP/32) * `minifirewall_trusted_ips`: with IP/hosts should be trusted for full access (default: none) * `minifirewall_privilegied_ips`: with IP/hosts should be trusted for restricted access (default: none) * `minifirewall_tail_included` : source a "tail" file at the end of the main config file (default: `False`) * `minifirewall_tail_force` : overwrite the "tail" file (default: `True`) * `minifirewall_restart_if_needed` : should the restart handler be executed (default: `True`) * `minifirewall_restart_force` : force restart minifirewall at the end of the role execution (default: `False`) * `minifirewall_autostart` : enable minifirewall start at boot time (default: `False`) The full list of variables (with default values) can be found in `defaults/main.yml`. **Some IP/hosts must be configured or the server will be inaccessible via network.** ## minifirewall-tail Compiles a `minifirewall.tail` file based on templates and source it at the end of minifirewall configuration. Templates are looked up in that order : 1. `{{ playbook_dir}}/templates/minifirewall-tail/minifirewall.{{ inventory_hostname}}.tail.j2` 2. `{{ playbook_dir}}/templates/minifirewall-tail/minifirewall.{{ host_group}}.tail.j2` (NB : `host_group` is not a core variable, it must be defined in `group_vars` files.) 3. `{{ playbook_dir}}/templates/minifirewall-tail/minifirewall.default.tail.j2` If nothing is found, the role falls back to the template embedded in the role : `templates/minifirewall.default.tail.j2`