Projet

Général

Profil

Paste
Télécharger au format
Statistiques
| Branche: | Révision:

root / manifests / rules / out / dns.pp @ d1864b10

Historique | Voir | Annoter | Télécharger (785 octets)

1 09cba182 Steve Traylen
# @summary manage out dns
2
# @param dns_server specify dns_server name
3 d4de1bfe tr
class nftables::rules::out::dns (
4 9d1ee648 Tim Meusel
  Array[Stdlib::IP::Address] $dns_server = [],
5 d4de1bfe tr
) {
6 9d1ee648 Tim Meusel
  unless empty($dns_server) {
7
    $dns_server.each |$index,$dns| {
8
      $content = $dns ? {
9
        Stdlib::IP::Address::V6 => "ip6 daddr ${dns}",
10
        Stdlib::IP::Address::V4 => "ip daddr ${dns}",
11 d4de1bfe tr
      }
12 9d1ee648 Tim Meusel
      nftables::rule { "default_out-dnstcp-${index}":
13
        content => "${content} tcp dport 53 accept",
14 d4de1bfe tr
      }
15 9d1ee648 Tim Meusel
      nftables::rule { "default_out-dnsudp-${index}":
16
        content => "${content} udp dport 53 accept",
17 d4de1bfe tr
      }
18
    }
19
  } else {
20 11bf7237 Steve Traylen
    nftables::rule {
21 d4de1bfe tr
      'default_out-dnsudp':
22
        content => 'udp dport 53 accept';
23
      'default_out-dnstcp':
24
        content => 'tcp dport 53 accept';
25
    }
26 9da28f8c tr
  }
27
}