ernestas-poskus.iptables

ansible-iptables zur Konfiguration der internen & externen Netzwerksicherheit

Build Status RHEL Fedora Ubuntu Debian BSD License

Installation

ansible-galaxy install ernestas-poskus.iptables

Anforderungen

Keine.

Abhängigkeiten

Keine.

Rollenvariablen

---
# Standarddatei für ansible-iptables

##########################
# IPv4-Konfiguration
##########################

# Standardaktion für: :INPUT DROP
iptables_initial_input_action: DROP

# Standardaktion für: :FORWARD ACCEPT
iptables_initial_forward_action: ACCEPT

# Standardaktion für: :OUTPUT ACCEPT
iptables_initial_output_action: ACCEPT

# Schleifenrückschnitt erlauben (localhost)
iptables_allow_loopback: true

# Erlaubte etablierte und verwandte Verbindungen
iptables_allow_established_connections: true

# DNS-Auflösung erlauben
iptables_allow_dns: false

# NTP-Verkehr für die Zeitsynchronisation erlauben
iptables_allow_ntp: true

# ICMP-Ping-Anfragen erlauben
iptables_allow_icmp: true

# Unterstützte interne Netzwerkliste:
# - IP-Adressen
# - HOSTS (iptables_internal_ips_from_hosts sollte aktiviert sein)
iptables_internal_network: []

# Interne IP von einem gegebenen Host auflösen
iptables_internal_ips_from_hosts: false

# Interne Hosts-Schnittstelle
iptables_internal_hosts_interface: "{{ ansible_default_ipv4.interface }}"

# Interne Netzwerkkonfiguration
iptables_internal_ports:
  - '1024:65535'
  - '111' # Portmapper
  - '161:162' # einfaches Netzwerk-Management-Protokoll (SNMP)
  - '22' # ssh

# Interne Netzwerkprotokolle
iptables_internal_protocols:
  - 'tcp'
  - 'udp'

# Externe Netzwerkkonfiguration
iptables_external_ports:
  - '22' # ssh

# Externe Netzwerkprotokolle
iptables_external_protocols:
  - 'tcp'

# Zusätzliche Regeln für iptables
iptables_additional_rules: []

# Protokolliere verworfene Pakete
iptables_log_dropped_packets: false

# Protokollierlimit für verworfene Pakete in Minuten
iptables_log_dropped_limit: 15

# LOGGING Protokollstufe für verworfene Pakete
iptables_log_logging_level: 4

##########################
# IPv6-Konfiguration
##########################

# Standardaktion für: :INPUT DROP
iptables6_initial_input_action: DROP

# Standardaktion für: :FORWARD ACCEPT
iptables6_initial_forward_action: ACCEPT

# Standardaktion für: :OUTPUT ACCEPT
iptables6_initial_output_action: ACCEPT

# Schleifenrückschnitt erlauben (localhost)
iptables6_allow_loopback: true

# Erlaubte etablierte und verwandte Verbindungen
iptables6_allow_established_connections: true

# DNS-Auflösung erlauben
iptables6_allow_dns: false

# NTP-Verkehr für die Zeitsynchronisation erlauben
iptables6_allow_ntp: true

# ICMP-Ping-Anfragen erlauben
iptables6_allow_icmp: true

# Unterstützte interne Netzwerkliste:
# - IP-Adressen
# - HOSTS (iptables6_internal_ips_from_hosts sollte aktiviert sein)
iptables6_internal_network: []

# Interne IP von einem gegebenen Host auflösen
iptables6_internal_ips_from_hosts: false

# Interne Hosts-Schnittstelle
iptables6_internal_hosts_interface: "{{ ansible_default_ipv4.interface }}"

# Interne Netzwerkkonfiguration
iptables6_internal_ports:
  - '1024:65535'
  - '111' # Portmapper
  - '161:162' # einfaches Netzwerk-Management-Protokoll (SNMP).
  - '22' # ssh

# Interne Netzwerkprotokolle
iptables6_internal_protocols:
  - 'tcp'
  - 'udp'

# Externe Netzwerkkonfiguration
iptables6_external_ports:
  - '22' # ssh

# Externe Netzwerkprotokolle
iptables6_external_protocols:
  - 'tcp'

# Zusätzliche Regeln für iptables
iptables6_additional_rules: []

# Protokolliere verworfene Pakete
iptables6_log_dropped_packets: false

# Protokollierlimit für verworfene Pakete in Minuten
iptables6_log_dropped_limit: 15

# LOGGING Protokollstufe für verworfene Pakete
iptables6_log_logging_level: 4

# NAT
iptables_nat_prerouting: ACCEPT
iptables_nat_output: ACCEPT
iptables_nat_postrouting: ACCEPT

iptables4_nat_additional_rules: []

iptables6_nat_additional_rules: []

Beispiel-Playbook

Internes Netzwerk von gegebenen Hosts erstellen

- name: Konfigurieren von iptables
  hosts: all
  sudo: ja
  roles:
    - role: ernestas-poskus.iptables
      iptables_internal_network: "{{ groups['all'] }}"
      iptables_internal_ips_from_hosts: true # bei Verwendung von Hosts muss dies aktiviert sein
      iptables_log_dropped_packets: true
      iptables_log_dropped_limit: 1

Internes Netzwerk von gegebener IP-Liste erstellen

- name: Konfigurieren von iptables
  hosts: all
  sudo: ja
  roles:
    - role: ernestas-poskus.iptables
      iptables_internal_network:
       - 192.168.0.1
       - 192.168.0.2
       - 192.168.0.3
      iptables_log_dropped_packets: true
      iptables_log_dropped_limit: 1

Lizenz

Copyright (c) 2016, Ernestas Poskus Alle Rechte vorbehalten.

Die Weitergabe und Nutzung in Quell- und Binärform, mit oder ohne Änderungen, ist erlaubt, solange die folgenden Bedingungen erfüllt sind:

  • Die Weitergabe des Quellcodes muss den oben stehenden Copyright-Hinweis, diese Liste der Bedingungen und den folgenden Haftungsausschluss enthalten.

  • Die Weitergabe in Binärform muss den oben stehenden Copyright-Hinweis, diese Liste der Bedingungen und den folgenden Haftungsausschluss in der Dokumentation und/oder anderen Materialien, die mit der Verteilung bereitgestellt werden, reproduzieren.

  • Weder der Name von ansible-iptables noch die Namen seiner Mitwirkenden dürfen verwendet werden, um Produkte zu fördern oder zu bewerben, die aus dieser Software abgeleitet sind, ohne vorherige schriftliche Genehmigung.

DIESE SOFTWARE WIRD VON DEN COPYRIGHT-BEHEFTERN UND MITARBEITERN "WIE BESEHEN" BEREITGESTELLT, UND ALLE AUSDRÜCKLICHEN ODER IMPLIZIERTEN GARANTIEN, EINSCHLIEßLICH, ABER NICHT BESCHRÄNKT AUF, DIE IMPLIED GARANTIEN DER MARKTFÄHIGKEIT UND EIGNUNG FÜR EINEN BESTIMMTEN ZWECK WERDEN ABGELEHNT. IN KEINEM FALL SIND DIE COPYRIGHT-INHABER ODER MITARBEITER FÜR DIREKTE, INDIREKTE, ZUFÄLLIGE, SPEZIELLE, EXEMPLARISCHE ODER FOLGE- SCHÄDEN VERANTWORTLICH (WIE EINSCHLIEßLICH, ABER NICHT BESCHRÄNKT AUF, BESCHAFFUNG VON ERSATZWAREN ODER DIENSTLEISTUNGEN; VERLOST VON NUTZUNG, DATEN ODER GEWINNEN; ODER BETRIEBSSTÖRUNGEN) JEDER ART UND AUF JEDER THEORIE DER HAFTUNG, OB IM VERTRAG, STRIKTER HAFTUNG ODER DELIKT (EINSCHLIESSLICH FAHRLÄSSIGKEIT ODER ANDERES) ENTSTEHEN IN IRGENDEINER WEISE AUS DER NUTZUNG DIESE SOFTWARE, SELBST WENN AUF DIE MÖGLICHKEIT SOLCHER SCHÄDEN HINGEWIESEN WURDE.

Autoreninformation

Twitter: @ernestas_poskus

Über das Projekt

iptables management role for configuring internal & external networks

Installieren
ansible-galaxy install ernestas-poskus.iptables
GitHub Repository
Lizenz
bsd-3-clause
Downloads
81
Besitzer
pragmatic & ambitious