9c2b41d0f9
fixes #51
210 lines
4.9 KiB
YAML
210 lines
4.9 KiB
YAML
# -*- coding: utf-8 -*-
|
|
# vim: ft=yaml
|
|
---
|
|
# FirewallD pillar examples:
|
|
firewalld:
|
|
enabled: true
|
|
IndividualCalls: 'no'
|
|
LogDenied: 'off'
|
|
AutomaticHelpers: 'system'
|
|
FirewallBackend: 'nftables'
|
|
FlushAllOnReload: 'yes'
|
|
RFC3964_IPv4: 'yes'
|
|
AllowZoneDrifting: 'no'
|
|
|
|
ipset:
|
|
manage: true
|
|
pkg: ipset
|
|
|
|
# ipset: # Deprecated. Will be removed in future releases
|
|
# ipsetpackag: ipset # Deprecated. Will be removed in future releases
|
|
|
|
backend:
|
|
manage: true
|
|
pkg: nftables
|
|
|
|
# installbackend: true # Deprecated. Will be removed in future releases
|
|
# backendpackage: nftables # Deprecated. Will be removed in future releases
|
|
|
|
default_zone: public
|
|
|
|
services:
|
|
sshcustom:
|
|
short: sshcustom
|
|
description: >-
|
|
SSH on port 3232 and 5252. Secure Shell (SSH) is a protocol for logging
|
|
into and executing commands on remote machines. It provides secure
|
|
encrypted communications. If you plan on accessing your machine
|
|
remotely via SSH over a firewalled interface, enable this option. You
|
|
need the openssh-server package installed for this option to be useful.
|
|
ports:
|
|
tcp:
|
|
- 3232
|
|
- 5252
|
|
modules:
|
|
- some_module_to_load
|
|
protocols:
|
|
- igmp
|
|
source_ports:
|
|
tcp:
|
|
- 21
|
|
destinations:
|
|
ipv4:
|
|
- 224.0.0.251
|
|
- 224.0.0.252
|
|
ipv6:
|
|
- ff02::fb
|
|
- ff02::fc
|
|
|
|
zabbixcustom:
|
|
short: Zabbixcustom
|
|
description: "zabbix custom rule"
|
|
ports:
|
|
tcp:
|
|
- "10051"
|
|
salt-minion:
|
|
short: salt-minion
|
|
description: "salt-minion"
|
|
ports:
|
|
tcp:
|
|
- "8000"
|
|
|
|
ipsets:
|
|
fail2ban-ssh:
|
|
short: fail2ban-ssh
|
|
description: fail2ban-ssh ipset
|
|
type: 'hash:ip'
|
|
options:
|
|
maxelem:
|
|
- 65536
|
|
timeout:
|
|
- 300
|
|
hashsize:
|
|
- 1024
|
|
entries:
|
|
- 10.0.0.1
|
|
fail2ban-ssh-ipv6:
|
|
short: fail2ban-ssh-ipv6
|
|
description: fail2ban-ssh-ipv6 ipset
|
|
type: 'hash:ip'
|
|
options:
|
|
family:
|
|
- inet6
|
|
maxelem:
|
|
- 65536
|
|
timeout:
|
|
- 300
|
|
hashsize:
|
|
- 1024
|
|
entries:
|
|
- 2a01::1
|
|
|
|
zones:
|
|
public:
|
|
short: Public
|
|
description: >-
|
|
For use in public areas. You do not trust the other computers on
|
|
networks to not harm your computer. Only selected incoming connections
|
|
are accepted.
|
|
services:
|
|
- http
|
|
- https
|
|
- ssh
|
|
- salt-minion
|
|
# Anything in zone definition ending with services will get merged into services
|
|
other_services:
|
|
- zabbixcustom
|
|
protocols:
|
|
- igmp
|
|
rich_rules:
|
|
- family: ipv4
|
|
source:
|
|
address: 8.8.8.8/24
|
|
accept: true
|
|
- family: ipv4
|
|
ipset:
|
|
name: fail2ban-ssh
|
|
reject:
|
|
type: icmp-port-unreachable
|
|
- accept:
|
|
limit: "3/m"
|
|
log:
|
|
level: warning
|
|
limit: "3/m"
|
|
prefix: "http fw limit 3/m"
|
|
service: http
|
|
|
|
ports:
|
|
# {%- if grains['id'] == 'salt.example.com' %}
|
|
- comment: salt-master
|
|
port: 4505
|
|
protocol: tcp
|
|
- comment: salt-python
|
|
port: 4506
|
|
protocol: tcp
|
|
# {%- endif %}
|
|
- comment: zabbix-agent
|
|
port: 10050
|
|
protocol: tcp
|
|
- comment: bacula-client
|
|
port: 9102
|
|
protocol: tcp
|
|
- comment: vsftpd
|
|
port: 21
|
|
protocol: tcp
|
|
source_ports:
|
|
- comment: something
|
|
port: 2222
|
|
protocol: tcp
|
|
- comment: something_else
|
|
port: 4444
|
|
protocol: tcp
|
|
|
|
rich_public:
|
|
short: rich_public
|
|
description: "Example"
|
|
# Rich rules can be specified as a dictionary. All keys from standard rich rules
|
|
# can be used. Special keys "ipsets" and "services", if defined, take precedence.
|
|
# They will be auto-expanded into separate rich rules per value in the list.
|
|
rich_rules:
|
|
http-priority:
|
|
accept: true
|
|
ipsets:
|
|
- other-ipset
|
|
priority: 15
|
|
services:
|
|
- http
|
|
ssh-csg:
|
|
accept: true
|
|
ipsets:
|
|
- fail2ban-ssh
|
|
- other-ipset
|
|
services:
|
|
- ssh
|
|
|
|
direct:
|
|
chain:
|
|
MYCHAIN:
|
|
ipv: ipv4
|
|
table: raw
|
|
rule:
|
|
INTERNETACCESS:
|
|
ipv: ipv4
|
|
table: filter
|
|
chain: FORWARD
|
|
priority: "0"
|
|
args: >-
|
|
-i iintern
|
|
-o iextern
|
|
-s 192.168.1.0/24
|
|
-m conntrack
|
|
--ctstate NEW,RELATED,ESTABLISHED
|
|
-j ACCEPT
|
|
passthrough:
|
|
MYPASSTHROUGH:
|
|
ipv: ipv4
|
|
args: >-
|
|
-t raw
|
|
-A MYCHAIN
|
|
-j DROP
|