Projet

Général

Profil

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

root / REFERENCE.md @ 04f5c035

Historique | Voir | Annoter | Télécharger (20,3 ko)

1 e17693e3 Steve Traylen
# Reference
2
3
<!-- DO NOT EDIT: This document was generated by Puppet Strings -->
4
5
## Table of Contents
6
7
### Classes
8
9
* [`nftables`](#nftables): Configure nftables
10 7f6cacc5 Steve Traylen
* [`nftables::bridges`](#nftablesbridges): allow forwarding traffic on bridges
11 e17693e3 Steve Traylen
* [`nftables::inet_filter`](#nftablesinet_filter): manage basic chains in table inet filter
12
* [`nftables::ip_nat`](#nftablesip_nat): manage basic chains in table ip nat
13 7f6cacc5 Steve Traylen
* [`nftables::rules::afs3_callback`](#nftablesrulesafs3_callback): Open call back port for AFS clients
14 b9785000 Steve Traylen
* [`nftables::rules::ceph`](#nftablesrulesceph): Ceph is a distributed object store and file system. Enable this to support Ceph's Object Storage Daemons (OSD), Metadata Server Daemons (MDS)
15
* [`nftables::rules::ceph_mon`](#nftablesrulesceph_mon): Ceph is a distributed object store and file system. Enable this option to support Ceph's Monitor Daemon.
16 7f6cacc5 Steve Traylen
* [`nftables::rules::dhcpv6_client`](#nftablesrulesdhcpv6_client)
17
* [`nftables::rules::dns`](#nftablesrulesdns): manage in dns
18 e17693e3 Steve Traylen
* [`nftables::rules::http`](#nftablesruleshttp): manage in http
19
* [`nftables::rules::https`](#nftablesruleshttps): manage in https
20
* [`nftables::rules::icinga2`](#nftablesrulesicinga2): manage in icinga2
21 7f6cacc5 Steve Traylen
* [`nftables::rules::icmp`](#nftablesrulesicmp)
22 b9785000 Steve Traylen
* [`nftables::rules::nfs`](#nftablesrulesnfs): manage in nfs4
23
* [`nftables::rules::nfs3`](#nftablesrulesnfs3): manage in nfs3
24 7f6cacc5 Steve Traylen
* [`nftables::rules::node_exporter`](#nftablesrulesnode_exporter): manage in node exporter
25 e17693e3 Steve Traylen
* [`nftables::rules::ospf`](#nftablesrulesospf): manage in ospf
26
* [`nftables::rules::ospf3`](#nftablesrulesospf3): manage in ospf3
27
* [`nftables::rules::out::all`](#nftablesrulesoutall): allow all outbound
28 b9785000 Steve Traylen
* [`nftables::rules::out::ceph_client`](#nftablesrulesoutceph_client): Ceph is a distributed object store and file system. Enable this to be a client of Ceph's Monitor (MON), Object Storage Daemons (OSD), Metadat
29 e17693e3 Steve Traylen
* [`nftables::rules::out::chrony`](#nftablesrulesoutchrony): manage out chrony
30
* [`nftables::rules::out::dhcp`](#nftablesrulesoutdhcp): manage out dhcp
31 7f6cacc5 Steve Traylen
* [`nftables::rules::out::dhcpv6_client`](#nftablesrulesoutdhcpv6_client)
32 e17693e3 Steve Traylen
* [`nftables::rules::out::dns`](#nftablesrulesoutdns): manage out dns
33
* [`nftables::rules::out::http`](#nftablesrulesouthttp): manage out http
34
* [`nftables::rules::out::https`](#nftablesrulesouthttps): manage out https
35 7f6cacc5 Steve Traylen
* [`nftables::rules::out::icmp`](#nftablesrulesouticmp)
36
* [`nftables::rules::out::kerberos`](#nftablesrulesoutkerberos): allows outbound access for kerberos
37 e17693e3 Steve Traylen
* [`nftables::rules::out::mysql`](#nftablesrulesoutmysql): manage out mysql
38 b9785000 Steve Traylen
* [`nftables::rules::out::nfs`](#nftablesrulesoutnfs): manage out nfs
39
* [`nftables::rules::out::nfs3`](#nftablesrulesoutnfs3): manage out nfs3
40 7f6cacc5 Steve Traylen
* [`nftables::rules::out::openafs_client`](#nftablesrulesoutopenafs_client): allows outbound access for afs clients
41 e17693e3 Steve Traylen
* [`nftables::rules::out::ospf`](#nftablesrulesoutospf): manage out ospf
42
* [`nftables::rules::out::ospf3`](#nftablesrulesoutospf3): manage out ospf3
43
* [`nftables::rules::out::postgres`](#nftablesrulesoutpostgres): manage out postgres
44
* [`nftables::rules::out::puppet`](#nftablesrulesoutpuppet): manage outgoing puppet
45
* [`nftables::rules::out::smtp`](#nftablesrulesoutsmtp): manage out smtp
46
* [`nftables::rules::out::ssh`](#nftablesrulesoutssh): manage out ssh
47
* [`nftables::rules::out::ssh::remove`](#nftablesrulesoutsshremove): disable outgoing ssh
48
* [`nftables::rules::out::tor`](#nftablesrulesouttor): manage out tor
49
* [`nftables::rules::out::wireguard`](#nftablesrulesoutwireguard): manage out wireguard
50
* [`nftables::rules::puppet`](#nftablesrulespuppet): manage in puppet
51
* [`nftables::rules::smtp`](#nftablesrulessmtp): manage in smtp
52
* [`nftables::rules::smtp_submission`](#nftablesrulessmtp_submission): manage in smtp submission
53
* [`nftables::rules::smtps`](#nftablesrulessmtps): manage in smtps
54
* [`nftables::rules::ssh`](#nftablesrulesssh): manage in ssh
55
* [`nftables::rules::tor`](#nftablesrulestor): manage in tor
56
* [`nftables::rules::wireguard`](#nftablesruleswireguard): manage in wireguard
57 7f6cacc5 Steve Traylen
* [`nftables::services::dhcpv6_client`](#nftablesservicesdhcpv6_client)
58
* [`nftables::services::openafs_client`](#nftablesservicesopenafs_client)
59 e17693e3 Steve Traylen
60
### Defined types
61
62
* [`nftables::chain`](#nftableschain): manage a chain
63
* [`nftables::config`](#nftablesconfig): manage a config snippet
64
* [`nftables::rule`](#nftablesrule): manage a chain rule Name should be:   CHAIN_NAME-rulename
65
* [`nftables::rules::dnat4`](#nftablesrulesdnat4): manage a ipv4 dnat rule
66
* [`nftables::rules::masquerade`](#nftablesrulesmasquerade): masquerade all outgoing traffic
67
* [`nftables::rules::snat4`](#nftablesrulessnat4): manage a ipv4 snat rule
68 7f6cacc5 Steve Traylen
* [`nftables::set`](#nftablesset): manage a named set
69 e17693e3 Steve Traylen
70
## Classes
71
72
### `nftables`
73
74
Configure nftables
75
76
#### Examples
77
78 b9785000 Steve Traylen
##### allow dns out and do not allow ntp out
79 e17693e3 Steve Traylen
80
```puppet
81
class{'nftables:
82
  out_ntp = false,
83
  out_dns = true,
84
}
85
```
86
87 b9785000 Steve Traylen
##### do not flush particular tables, fail2ban in this case
88
89
```puppet
90
class{'nftables':
91
  noflush_tables = ['inet-f2b-table'],
92
}
93
```
94
95 e17693e3 Steve Traylen
#### Parameters
96
97
The following parameters are available in the `nftables` class.
98
99
##### `out_all`
100
101
Data type: `Boolean`
102
103
Allow all outbound connections. If `true` then all other
104
out parameters `out_ntp`, `out_dns`, ... will be assuemed
105
false.
106
107
Default value: ``false``
108
109
##### `out_ntp`
110
111
Data type: `Boolean`
112
113
Allow outbound to ntp servers.
114
115
Default value: ``true``
116
117
##### `out_http`
118
119
Data type: `Boolean`
120
121
Allow outbound to http servers.
122
123
Default value: ``true``
124
125
##### `out_https`
126
127
Data type: `Boolean`
128
129
Allow outbound to https servers.
130
131
Default value: ``true``
132
133
##### `out_https`
134
135
Allow outbound to https servers.
136
137
Default value: ``true``
138
139 7f6cacc5 Steve Traylen
##### `out_icmp`
140
141
Data type: `Boolean`
142
143
Allow outbound ICMPv4/v6 traffic.
144
145
Default value: ``true``
146
147 e17693e3 Steve Traylen
##### `in_ssh`
148
149
Data type: `Boolean`
150
151
Allow inbound to ssh servers.
152
153
Default value: ``true``
154
155 7f6cacc5 Steve Traylen
##### `in_icmp`
156
157
Data type: `Boolean`
158
159
Allow inbound ICMPv4/v6 traffic.
160
161
Default value: ``true``
162
163
##### `nat`
164
165
Data type: `Boolean`
166
167
Add default tables and chains to process NAT traffic.
168
169
Default value: ``true``
170
171 b9785000 Steve Traylen
##### `sets`
172
173
Data type: `Hash`
174
175
Allows sourcing set definitions directly from Hiera.
176
177
Default value: `{}`
178
179 7f6cacc5 Steve Traylen
##### `log_prefix`
180
181
Data type: `String`
182
183
String that will be used as prefix when logging packets. It can contain
184
two variables using standard sprintf() string-formatting:
185
 * chain: Will be replaced by the name of the chain.
186
 * comment: Allows chains to add extra comments.
187
188
Default value: `'[nftables] %<chain>s %<comment>s'`
189
190 b9785000 Steve Traylen
##### `log_limit`
191
192
Data type: `Variant[Boolean[false], String]`
193
194
String with the content of a limit statement to be applied
195
to the rules that log discarded traffic. Set to false to
196
disable rate limiting.
197
198
Default value: `'3/minute burst 5 packets'`
199
200 7f6cacc5 Steve Traylen
##### `reject_with`
201
202 b9785000 Steve Traylen
Data type: `Variant[Boolean[false], Pattern[/icmp(v6|x)? type .+|tcp reset/]]`
203 7f6cacc5 Steve Traylen
204
How to discard packets not matching any rule. If `false`, the
205
fate of the packet will be defined by the chain policy (normally
206
drop), otherwise the packet will be rejected with the REJECT_WITH
207
policy indicated by the value of this parameter.
208
209
Default value: `'icmpx type port-unreachable'`
210
211
##### `in_out_conntrack`
212
213
Data type: `Boolean`
214
215
Adds INPUT and OUTPUT rules to allow traffic that's part of an
216
established connection and also to drop invalid packets.
217
218
Default value: ``true``
219
220 b9785000 Steve Traylen
##### `fwd_conntrack`
221
222
Data type: `Boolean`
223
224
Adds FORWARD rules to allow traffic that's part of an
225
established connection and also to drop invalid packets.
226
227
Default value: ``false``
228
229 7f6cacc5 Steve Traylen
##### `firewalld_enable`
230
231
Data type: `Variant[Boolean[false], Enum['mask']]`
232
233
Configures how the firewalld systemd service unit is enabled. It might be
234
useful to set this to false if you're externaly removing firewalld from
235
the system completely.
236
237
Default value: `'mask'`
238
239 b9785000 Steve Traylen
##### `noflush_tables`
240
241
Data type: `Optional[Array[Pattern[/^(ip|ip6|inet)-[-a-zA-Z0-9_]+$/],1]]`
242
243
If specified only other existings tables will be flushed.
244
If left unset all tables will be flushed via a `flush ruleset`
245
246
Default value: ``undef``
247
248 e17693e3 Steve Traylen
##### `out_dns`
249
250
Data type: `Boolean`
251
252
253
254
Default value: ``true``
255
256 7f6cacc5 Steve Traylen
##### `rules`
257
258
Data type: `Hash`
259
260
261
262
Default value: `{}`
263
264
### `nftables::bridges`
265
266
allow forwarding traffic on bridges
267
268
#### Parameters
269
270
The following parameters are available in the `nftables::bridges` class.
271
272
##### `ensure`
273
274
Data type: `Enum['present','absent']`
275
276
277
278
Default value: `'present'`
279
280
##### `bridgenames`
281
282
Data type: `Regexp`
283
284
285
286
Default value: `/^br.+/`
287
288 e17693e3 Steve Traylen
### `nftables::inet_filter`
289
290
manage basic chains in table inet filter
291
292
### `nftables::ip_nat`
293
294
manage basic chains in table ip nat
295
296 7f6cacc5 Steve Traylen
### `nftables::rules::afs3_callback`
297
298
class{'nftables::rules::afs3_callback':
299
  saddr => ['192.168.0.0/16', '10.0.0.222']
300
}
301
302
#### Parameters
303
304
The following parameters are available in the `nftables::rules::afs3_callback` class.
305
306
##### `saddr`
307
308
Data type: `Array[Stdlib::IP::Address::V4,1]`
309
310
list of source network ranges to a
311
312
Default value: `['0.0.0.0/0']`
313
314 b9785000 Steve Traylen
### `nftables::rules::ceph`
315
316
Ceph is a distributed object store and file system.
317
Enable this to support Ceph's Object Storage Daemons (OSD),
318
Metadata Server Daemons (MDS), or Manager Daemons (MGR).
319
320
### `nftables::rules::ceph_mon`
321
322
Ceph is a distributed object store and file system.
323
Enable this option to support Ceph's Monitor Daemon.
324
325
#### Parameters
326
327
The following parameters are available in the `nftables::rules::ceph_mon` class.
328
329
##### `ports`
330
331
Data type: `Array[Integer,1]`
332
333
334
335
Default value: `[3300, 6789]`
336
337 7f6cacc5 Steve Traylen
### `nftables::rules::dhcpv6_client`
338
339
The nftables::rules::dhcpv6_client class.
340
341
### `nftables::rules::dns`
342
343
manage in dns
344
345
#### Parameters
346
347
The following parameters are available in the `nftables::rules::dns` class.
348
349
##### `ports`
350
351
Data type: `Array[Integer,1]`
352
353
354
355
Default value: `[53]`
356
357 e17693e3 Steve Traylen
### `nftables::rules::http`
358
359
manage in http
360
361
### `nftables::rules::https`
362
363
manage in https
364
365
### `nftables::rules::icinga2`
366
367
manage in icinga2
368
369
#### Parameters
370
371
The following parameters are available in the `nftables::rules::icinga2` class.
372
373
##### `ports`
374
375
Data type: `Array[Integer,1]`
376
377
378
379
Default value: `[5665]`
380
381 7f6cacc5 Steve Traylen
### `nftables::rules::icmp`
382
383
The nftables::rules::icmp class.
384
385
#### Parameters
386
387
The following parameters are available in the `nftables::rules::icmp` class.
388
389
##### `v4_types`
390
391
Data type: `Optional[Array[String]]`
392
393
394
395
Default value: ``undef``
396
397
##### `v6_types`
398
399
Data type: `Optional[Array[String]]`
400
401
402
403
Default value: ``undef``
404
405
##### `order`
406
407
Data type: `String`
408
409
410
411
Default value: `'10'`
412
413 b9785000 Steve Traylen
### `nftables::rules::nfs`
414
415
manage in nfs4
416
417
### `nftables::rules::nfs3`
418
419
manage in nfs3
420
421 7f6cacc5 Steve Traylen
### `nftables::rules::node_exporter`
422
423
manage in node exporter
424
425
#### Parameters
426
427
The following parameters are available in the `nftables::rules::node_exporter` class.
428
429
##### `prometheus_server`
430
431
Data type: `Optional[Variant[String,Array[String,1]]]`
432
433
434
435
Default value: ``undef``
436
437
##### `port`
438
439
Data type: `Integer`
440
441
442
443
Default value: `9100`
444
445 e17693e3 Steve Traylen
### `nftables::rules::ospf`
446
447
manage in ospf
448
449
### `nftables::rules::ospf3`
450
451
manage in ospf3
452
453
### `nftables::rules::out::all`
454
455
allow all outbound
456
457 b9785000 Steve Traylen
### `nftables::rules::out::ceph_client`
458
459
Ceph is a distributed object store and file system.
460
Enable this to be a client of Ceph's Monitor (MON),
461
Object Storage Daemons (OSD), Metadata Server Daemons (MDS),
462
and Manager Daemons (MGR).
463
464
#### Parameters
465
466
The following parameters are available in the `nftables::rules::out::ceph_client` class.
467
468
##### `ports`
469
470
Data type: `Array[Integer,1]`
471
472
473
474
Default value: `[3300, 6789]`
475
476 e17693e3 Steve Traylen
### `nftables::rules::out::chrony`
477
478
manage out chrony
479
480
### `nftables::rules::out::dhcp`
481
482
manage out dhcp
483
484 7f6cacc5 Steve Traylen
### `nftables::rules::out::dhcpv6_client`
485
486
The nftables::rules::out::dhcpv6_client class.
487
488 e17693e3 Steve Traylen
### `nftables::rules::out::dns`
489
490
manage out dns
491
492
#### Parameters
493
494
The following parameters are available in the `nftables::rules::out::dns` class.
495
496
##### `dns_server`
497
498
Data type: `Optional[Variant[String,Array[String,1]]]`
499
500
501
502
Default value: ``undef``
503
504
### `nftables::rules::out::http`
505
506
manage out http
507
508
### `nftables::rules::out::https`
509
510
manage out https
511
512 7f6cacc5 Steve Traylen
### `nftables::rules::out::icmp`
513
514
The nftables::rules::out::icmp class.
515
516
#### Parameters
517
518
The following parameters are available in the `nftables::rules::out::icmp` class.
519
520
##### `v4_types`
521
522
Data type: `Optional[Array[String]]`
523
524
525
526
Default value: ``undef``
527
528
##### `v6_types`
529
530
Data type: `Optional[Array[String]]`
531
532
533
534
Default value: ``undef``
535
536
##### `order`
537
538
Data type: `String`
539
540
541
542
Default value: `'10'`
543
544
### `nftables::rules::out::kerberos`
545
546
allows outbound access for kerberos
547
548 e17693e3 Steve Traylen
### `nftables::rules::out::mysql`
549
550
manage out mysql
551
552 b9785000 Steve Traylen
### `nftables::rules::out::nfs`
553
554
manage out nfs
555
556
### `nftables::rules::out::nfs3`
557
558
manage out nfs3
559
560 7f6cacc5 Steve Traylen
### `nftables::rules::out::openafs_client`
561
562
7000 - afs3-fileserver
563
7002 - afs3-ptserver
564
7003 - vlserver
565
566
* **See also**
567
  * https://wiki.openafs.org/devel/AFSServicePorts/
568
    * AFS Service Ports
569
570
#### Parameters
571
572
The following parameters are available in the `nftables::rules::out::openafs_client` class.
573
574
##### `ports`
575
576
Data type: `Array[Integer,1]`
577
578
579
580
Default value: `[7000, 7002, 7003]`
581
582 e17693e3 Steve Traylen
### `nftables::rules::out::ospf`
583
584
manage out ospf
585
586
### `nftables::rules::out::ospf3`
587
588
manage out ospf3
589
590
### `nftables::rules::out::postgres`
591
592
manage out postgres
593
594
### `nftables::rules::out::puppet`
595
596
manage outgoing puppet
597
598
#### Parameters
599
600
The following parameters are available in the `nftables::rules::out::puppet` class.
601
602
##### `puppetmaster`
603
604
Data type: `Variant[String,Array[String,1]]`
605
606
607
608
##### `puppetserver_port`
609
610
Data type: `Integer`
611
612
613
614
Default value: `8140`
615
616
### `nftables::rules::out::smtp`
617
618
manage out smtp
619
620
### `nftables::rules::out::ssh`
621
622
manage out ssh
623
624
### `nftables::rules::out::ssh::remove`
625
626
disable outgoing ssh
627
628
### `nftables::rules::out::tor`
629
630
manage out tor
631
632
### `nftables::rules::out::wireguard`
633
634
manage out wireguard
635
636
#### Parameters
637
638
The following parameters are available in the `nftables::rules::out::wireguard` class.
639
640
##### `ports`
641
642
Data type: `Array[Integer,1]`
643
644
645
646
Default value: `[51820]`
647
648
### `nftables::rules::puppet`
649
650
manage in puppet
651
652
#### Parameters
653
654
The following parameters are available in the `nftables::rules::puppet` class.
655
656
##### `ports`
657
658
Data type: `Array[Integer,1]`
659
660
661
662
Default value: `[8140]`
663
664
### `nftables::rules::smtp`
665
666
manage in smtp
667
668
### `nftables::rules::smtp_submission`
669
670
manage in smtp submission
671
672
### `nftables::rules::smtps`
673
674
manage in smtps
675
676
### `nftables::rules::ssh`
677
678
manage in ssh
679
680
#### Parameters
681
682
The following parameters are available in the `nftables::rules::ssh` class.
683
684
##### `ports`
685
686
Data type: `Array[Integer,1]`
687
688
689
690
Default value: `[22]`
691
692
### `nftables::rules::tor`
693
694
manage in tor
695
696
#### Parameters
697
698
The following parameters are available in the `nftables::rules::tor` class.
699
700
##### `ports`
701
702
Data type: `Array[Integer,1]`
703
704
705
706
Default value: `[9001]`
707
708
### `nftables::rules::wireguard`
709
710
manage in wireguard
711
712
#### Parameters
713
714
The following parameters are available in the `nftables::rules::wireguard` class.
715
716
##### `ports`
717
718
Data type: `Array[Integer,1]`
719
720
721
722
Default value: `[51820]`
723
724 7f6cacc5 Steve Traylen
### `nftables::services::dhcpv6_client`
725
726
The nftables::services::dhcpv6_client class.
727
728
### `nftables::services::openafs_client`
729
730
The nftables::services::openafs_client class.
731
732 e17693e3 Steve Traylen
## Defined types
733
734
### `nftables::chain`
735
736
manage a chain
737
738
#### Parameters
739
740
The following parameters are available in the `nftables::chain` defined type.
741
742
##### `table`
743
744
Data type: `Pattern[/^(ip|ip6|inet)-[a-zA-Z0-9_]+$/]`
745
746
747
748
Default value: `'inet-filter'`
749
750
##### `chain`
751
752
Data type: `Pattern[/^[a-zA-Z0-9_]+$/]`
753
754
755
756
Default value: `$title`
757
758
##### `inject`
759
760
Data type: `Optional[Pattern[/^\d\d-[a-zA-Z0-9_]+$/]]`
761
762
763
764
Default value: ``undef``
765
766
##### `inject_iif`
767
768
Data type: `Optional[String]`
769
770
771
772
Default value: ``undef``
773
774
##### `inject_oif`
775
776
Data type: `Optional[String]`
777
778
779
780
Default value: ``undef``
781
782
### `nftables::config`
783
784
manage a config snippet
785
786
#### Parameters
787
788
The following parameters are available in the `nftables::config` defined type.
789
790
##### `content`
791
792
Data type: `Optional[String]`
793
794
795
796
Default value: ``undef``
797
798
##### `source`
799
800
Data type: `Optional[Variant[String,Array[String,1]]]`
801
802
803
804
Default value: ``undef``
805
806
### `nftables::rule`
807
808
manage a chain rule
809
Name should be:
810
  CHAIN_NAME-rulename
811
812
#### Parameters
813
814
The following parameters are available in the `nftables::rule` defined type.
815
816
##### `ensure`
817
818
Data type: `Enum['present','absent']`
819
820
821
822
Default value: `'present'`
823
824
##### `rulename`
825
826
Data type: `Pattern[/^[a-zA-Z0-9_]+-[a-zA-Z0-9_]+(-\d+)?$/]`
827
828
829
830
Default value: `$title`
831
832
##### `order`
833
834
Data type: `Pattern[/^\d\d$/]`
835
836
837
838
Default value: `'50'`
839
840
##### `table`
841
842
Data type: `Optional[String]`
843
844
845
846
Default value: `'inet-filter'`
847
848
##### `content`
849
850
Data type: `Optional[String]`
851
852
853
854
Default value: ``undef``
855
856
##### `source`
857
858
Data type: `Optional[Variant[String,Array[String,1]]]`
859
860
861
862
Default value: ``undef``
863
864
### `nftables::rules::dnat4`
865
866
manage a ipv4 dnat rule
867
868
#### Parameters
869
870
The following parameters are available in the `nftables::rules::dnat4` defined type.
871
872
##### `daddr`
873
874
Data type: `Pattern[/^[12]?\d{1,2}\.[12]?\d{1,2}\.[12]?\d{1,2}\.[12]?\d{1,2}$/]`
875
876
877
878
##### `port`
879
880
Data type: `Variant[String,Integer[1,65535]]`
881
882
883
884
##### `rulename`
885
886
Data type: `Pattern[/^[a-zA-Z0-9_]+$/]`
887
888
889
890
Default value: `$title`
891
892
##### `order`
893
894
Data type: `Pattern[/^\d\d$/]`
895
896
897
898
Default value: `'50'`
899
900
##### `chain`
901
902
Data type: `String[1]`
903
904
905
906
Default value: `'default_fwd'`
907
908
##### `iif`
909
910
Data type: `Optional[String[1]]`
911
912
913
914
Default value: ``undef``
915
916
##### `proto`
917
918
Data type: `Enum['tcp','udp']`
919
920
921
922
Default value: `'tcp'`
923
924
##### `dport`
925
926
Data type: `Optional[Variant[String,Integer[1,65535]]]`
927
928
929
930
Default value: `''`
931
932
##### `ensure`
933
934
Data type: `Enum['present','absent']`
935
936
937
938
Default value: `'present'`
939
940
### `nftables::rules::masquerade`
941
942
masquerade all outgoing traffic
943
944
#### Parameters
945
946
The following parameters are available in the `nftables::rules::masquerade` defined type.
947
948
##### `rulename`
949
950
Data type: `Pattern[/^[a-zA-Z0-9_]+$/]`
951
952
953
954
Default value: `$title`
955
956
##### `order`
957
958
Data type: `Pattern[/^\d\d$/]`
959
960
961
962
Default value: `'70'`
963
964
##### `chain`
965
966
Data type: `String[1]`
967
968
969
970
Default value: `'POSTROUTING'`
971
972
##### `oif`
973
974
Data type: `Optional[String[1]]`
975
976
977
978
Default value: ``undef``
979
980
##### `saddr`
981
982
Data type: `Optional[String[1]]`
983
984
985
986
Default value: ``undef``
987
988
##### `daddr`
989
990
Data type: `Optional[String[1]]`
991
992
993
994
Default value: ``undef``
995
996
##### `proto`
997
998
Data type: `Optional[Enum['tcp','udp']]`
999
1000
1001
1002
Default value: ``undef``
1003
1004
##### `dport`
1005
1006
Data type: `Optional[Variant[String,Integer[1,65535]]]`
1007
1008
1009
1010
Default value: ``undef``
1011
1012
##### `ensure`
1013
1014
Data type: `Enum['present','absent']`
1015
1016
1017
1018
Default value: `'present'`
1019
1020
### `nftables::rules::snat4`
1021
1022
manage a ipv4 snat rule
1023
1024
#### Parameters
1025
1026
The following parameters are available in the `nftables::rules::snat4` defined type.
1027
1028
##### `snat`
1029
1030
Data type: `String[1]`
1031
1032
1033
1034
##### `rulename`
1035
1036
Data type: `Pattern[/^[a-zA-Z0-9_]+$/]`
1037
1038
1039
1040
Default value: `$title`
1041
1042
##### `order`
1043
1044
Data type: `Pattern[/^\d\d$/]`
1045
1046
1047
1048
Default value: `'70'`
1049
1050
##### `chain`
1051
1052
Data type: `String[1]`
1053
1054
1055
1056
Default value: `'POSTROUTING'`
1057
1058
##### `oif`
1059
1060
Data type: `Optional[String[1]]`
1061
1062
1063
1064
Default value: ``undef``
1065
1066
##### `saddr`
1067
1068
Data type: `Optional[String[1]]`
1069
1070
1071
1072
Default value: ``undef``
1073
1074
##### `proto`
1075
1076
Data type: `Optional[Enum['tcp','udp']]`
1077
1078
1079
1080
Default value: ``undef``
1081
1082
##### `dport`
1083
1084
Data type: `Optional[Variant[String,Integer[1,65535]]]`
1085
1086
1087
1088
Default value: ``undef``
1089
1090
##### `ensure`
1091
1092
Data type: `Enum['present','absent']`
1093
1094
1095
1096
Default value: `'present'`
1097
1098 7f6cacc5 Steve Traylen
### `nftables::set`
1099
1100
manage a named set
1101
1102
#### Parameters
1103
1104
The following parameters are available in the `nftables::set` defined type.
1105
1106
##### `ensure`
1107
1108
Data type: `Enum['present','absent']`
1109
1110
1111
1112
Default value: `'present'`
1113
1114
##### `setname`
1115
1116
Data type: `Pattern[/^[-a-zA-Z0-9_]+$/]`
1117
1118
1119
1120
Default value: `$title`
1121
1122
##### `order`
1123
1124
Data type: `Pattern[/^\d\d$/]`
1125
1126
1127
1128
Default value: `'10'`
1129
1130
##### `type`
1131
1132
Data type: `Optional[Enum['ipv4_addr', 'ipv6_addr', 'ether_addr', 'inet_proto', 'inet_service', 'mark']]`
1133
1134
1135
1136
Default value: ``undef``
1137
1138
##### `table`
1139
1140
Data type: `String`
1141
1142
1143
1144
Default value: `'inet-filter'`
1145
1146
##### `flags`
1147
1148
Data type: `Array[Enum['constant', 'dynamic', 'interval', 'timeout'], 0, 4]`
1149
1150
1151
1152
Default value: `[]`
1153
1154
##### `timeout`
1155
1156
Data type: `Optional[Integer]`
1157
1158
1159
1160
Default value: ``undef``
1161
1162
##### `gc_interval`
1163
1164
Data type: `Optional[Integer]`
1165
1166
1167
1168
Default value: ``undef``
1169
1170
##### `elements`
1171
1172
Data type: `Optional[Array[String]]`
1173
1174
1175
1176
Default value: ``undef``
1177
1178
##### `size`
1179
1180
Data type: `Optional[Integer]`
1181
1182
1183
1184
Default value: ``undef``
1185
1186
##### `policy`
1187
1188
Data type: `Optional[Enum['performance', 'memory']]`
1189
1190
1191
1192
Default value: ``undef``
1193
1194
##### `auto_merge`
1195
1196
Data type: `Boolean`
1197
1198
1199
1200
Default value: ``false``
1201
1202
##### `content`
1203
1204
Data type: `Optional[String]`
1205
1206
1207
1208
Default value: ``undef``
1209
1210
##### `source`
1211
1212
Data type: `Optional[Variant[String,Array[String,1]]]`
1213
1214
1215
1216
Default value: ``undef``