Projet

Général

Profil

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

root / REFERENCE.md @ 7f6cacc5

Historique | Voir | Annoter | Télécharger (17,5 ko)

1
# 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
* [`nftables::bridges`](#nftablesbridges): allow forwarding traffic on bridges
11
* [`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
* [`nftables::rules::afs3_callback`](#nftablesrulesafs3_callback): Open call back port for AFS clients
14
* [`nftables::rules::dhcpv6_client`](#nftablesrulesdhcpv6_client)
15
* [`nftables::rules::dns`](#nftablesrulesdns): manage in dns
16
* [`nftables::rules::http`](#nftablesruleshttp): manage in http
17
* [`nftables::rules::https`](#nftablesruleshttps): manage in https
18
* [`nftables::rules::icinga2`](#nftablesrulesicinga2): manage in icinga2
19
* [`nftables::rules::icmp`](#nftablesrulesicmp)
20
* [`nftables::rules::node_exporter`](#nftablesrulesnode_exporter): manage in node exporter
21
* [`nftables::rules::ospf`](#nftablesrulesospf): manage in ospf
22
* [`nftables::rules::ospf3`](#nftablesrulesospf3): manage in ospf3
23
* [`nftables::rules::out::all`](#nftablesrulesoutall): allow all outbound
24
* [`nftables::rules::out::chrony`](#nftablesrulesoutchrony): manage out chrony
25
* [`nftables::rules::out::dhcp`](#nftablesrulesoutdhcp): manage out dhcp
26
* [`nftables::rules::out::dhcpv6_client`](#nftablesrulesoutdhcpv6_client)
27
* [`nftables::rules::out::dns`](#nftablesrulesoutdns): manage out dns
28
* [`nftables::rules::out::http`](#nftablesrulesouthttp): manage out http
29
* [`nftables::rules::out::https`](#nftablesrulesouthttps): manage out https
30
* [`nftables::rules::out::icmp`](#nftablesrulesouticmp)
31
* [`nftables::rules::out::kerberos`](#nftablesrulesoutkerberos): allows outbound access for kerberos
32
* [`nftables::rules::out::mysql`](#nftablesrulesoutmysql): manage out mysql
33
* [`nftables::rules::out::openafs_client`](#nftablesrulesoutopenafs_client): allows outbound access for afs clients
34
* [`nftables::rules::out::ospf`](#nftablesrulesoutospf): manage out ospf
35
* [`nftables::rules::out::ospf3`](#nftablesrulesoutospf3): manage out ospf3
36
* [`nftables::rules::out::postgres`](#nftablesrulesoutpostgres): manage out postgres
37
* [`nftables::rules::out::puppet`](#nftablesrulesoutpuppet): manage outgoing puppet
38
* [`nftables::rules::out::smtp`](#nftablesrulesoutsmtp): manage out smtp
39
* [`nftables::rules::out::ssh`](#nftablesrulesoutssh): manage out ssh
40
* [`nftables::rules::out::ssh::remove`](#nftablesrulesoutsshremove): disable outgoing ssh
41
* [`nftables::rules::out::tor`](#nftablesrulesouttor): manage out tor
42
* [`nftables::rules::out::wireguard`](#nftablesrulesoutwireguard): manage out wireguard
43
* [`nftables::rules::puppet`](#nftablesrulespuppet): manage in puppet
44
* [`nftables::rules::smtp`](#nftablesrulessmtp): manage in smtp
45
* [`nftables::rules::smtp_submission`](#nftablesrulessmtp_submission): manage in smtp submission
46
* [`nftables::rules::smtps`](#nftablesrulessmtps): manage in smtps
47
* [`nftables::rules::ssh`](#nftablesrulesssh): manage in ssh
48
* [`nftables::rules::tor`](#nftablesrulestor): manage in tor
49
* [`nftables::rules::wireguard`](#nftablesruleswireguard): manage in wireguard
50
* [`nftables::services::dhcpv6_client`](#nftablesservicesdhcpv6_client)
51
* [`nftables::services::openafs_client`](#nftablesservicesopenafs_client)
52

    
53
### Defined types
54

    
55
* [`nftables::chain`](#nftableschain): manage a chain
56
* [`nftables::config`](#nftablesconfig): manage a config snippet
57
* [`nftables::rule`](#nftablesrule): manage a chain rule Name should be:   CHAIN_NAME-rulename
58
* [`nftables::rules::dnat4`](#nftablesrulesdnat4): manage a ipv4 dnat rule
59
* [`nftables::rules::masquerade`](#nftablesrulesmasquerade): masquerade all outgoing traffic
60
* [`nftables::rules::snat4`](#nftablesrulessnat4): manage a ipv4 snat rule
61
* [`nftables::set`](#nftablesset): manage a named set
62

    
63
## Classes
64

    
65
### `nftables`
66

    
67
Configure nftables
68

    
69
#### Examples
70

    
71
##### 
72

    
73
```puppet
74
class{'nftables:
75
  out_ntp = false,
76
  out_dns = true,
77
}
78
```
79

    
80
#### Parameters
81

    
82
The following parameters are available in the `nftables` class.
83

    
84
##### `out_all`
85

    
86
Data type: `Boolean`
87

    
88
Allow all outbound connections. If `true` then all other
89
out parameters `out_ntp`, `out_dns`, ... will be assuemed
90
false.
91

    
92
Default value: ``false``
93

    
94
##### `out_ntp`
95

    
96
Data type: `Boolean`
97

    
98
Allow outbound to ntp servers.
99

    
100
Default value: ``true``
101

    
102
##### `out_http`
103

    
104
Data type: `Boolean`
105

    
106
Allow outbound to http servers.
107

    
108
Default value: ``true``
109

    
110
##### `out_https`
111

    
112
Data type: `Boolean`
113

    
114
Allow outbound to https servers.
115

    
116
Default value: ``true``
117

    
118
##### `out_https`
119

    
120
Allow outbound to https servers.
121

    
122
Default value: ``true``
123

    
124
##### `out_icmp`
125

    
126
Data type: `Boolean`
127

    
128
Allow outbound ICMPv4/v6 traffic.
129

    
130
Default value: ``true``
131

    
132
##### `in_ssh`
133

    
134
Data type: `Boolean`
135

    
136
Allow inbound to ssh servers.
137

    
138
Default value: ``true``
139

    
140
##### `in_icmp`
141

    
142
Data type: `Boolean`
143

    
144
Allow inbound ICMPv4/v6 traffic.
145

    
146
Default value: ``true``
147

    
148
##### `nat`
149

    
150
Data type: `Boolean`
151

    
152
Add default tables and chains to process NAT traffic.
153

    
154
Default value: ``true``
155

    
156
##### `log_prefix`
157

    
158
Data type: `String`
159

    
160
String that will be used as prefix when logging packets. It can contain
161
two variables using standard sprintf() string-formatting:
162
 * chain: Will be replaced by the name of the chain.
163
 * comment: Allows chains to add extra comments.
164

    
165
Default value: `'[nftables] %<chain>s %<comment>s'`
166

    
167
##### `reject_with`
168

    
169
Data type: `Variant[Boolean[false], Pattern[
170
    /icmp(v6|x)? type .+|tcp reset/]]`
171

    
172
How to discard packets not matching any rule. If `false`, the
173
fate of the packet will be defined by the chain policy (normally
174
drop), otherwise the packet will be rejected with the REJECT_WITH
175
policy indicated by the value of this parameter.
176

    
177
Default value: `'icmpx type port-unreachable'`
178

    
179
##### `in_out_conntrack`
180

    
181
Data type: `Boolean`
182

    
183
Adds INPUT and OUTPUT rules to allow traffic that's part of an
184
established connection and also to drop invalid packets.
185

    
186
Default value: ``true``
187

    
188
##### `firewalld_enable`
189

    
190
Data type: `Variant[Boolean[false], Enum['mask']]`
191

    
192
Configures how the firewalld systemd service unit is enabled. It might be
193
useful to set this to false if you're externaly removing firewalld from
194
the system completely.
195

    
196
Default value: `'mask'`
197

    
198
##### `out_dns`
199

    
200
Data type: `Boolean`
201

    
202

    
203

    
204
Default value: ``true``
205

    
206
##### `rules`
207

    
208
Data type: `Hash`
209

    
210

    
211

    
212
Default value: `{}`
213

    
214
### `nftables::bridges`
215

    
216
allow forwarding traffic on bridges
217

    
218
#### Parameters
219

    
220
The following parameters are available in the `nftables::bridges` class.
221

    
222
##### `ensure`
223

    
224
Data type: `Enum['present','absent']`
225

    
226

    
227

    
228
Default value: `'present'`
229

    
230
##### `bridgenames`
231

    
232
Data type: `Regexp`
233

    
234

    
235

    
236
Default value: `/^br.+/`
237

    
238
### `nftables::inet_filter`
239

    
240
manage basic chains in table inet filter
241

    
242
### `nftables::ip_nat`
243

    
244
manage basic chains in table ip nat
245

    
246
### `nftables::rules::afs3_callback`
247

    
248
class{'nftables::rules::afs3_callback':
249
  saddr => ['192.168.0.0/16', '10.0.0.222']
250
}
251

    
252
#### Parameters
253

    
254
The following parameters are available in the `nftables::rules::afs3_callback` class.
255

    
256
##### `saddr`
257

    
258
Data type: `Array[Stdlib::IP::Address::V4,1]`
259

    
260
list of source network ranges to a
261

    
262
Default value: `['0.0.0.0/0']`
263

    
264
### `nftables::rules::dhcpv6_client`
265

    
266
The nftables::rules::dhcpv6_client class.
267

    
268
### `nftables::rules::dns`
269

    
270
manage in dns
271

    
272
#### Parameters
273

    
274
The following parameters are available in the `nftables::rules::dns` class.
275

    
276
##### `ports`
277

    
278
Data type: `Array[Integer,1]`
279

    
280

    
281

    
282
Default value: `[53]`
283

    
284
### `nftables::rules::http`
285

    
286
manage in http
287

    
288
### `nftables::rules::https`
289

    
290
manage in https
291

    
292
### `nftables::rules::icinga2`
293

    
294
manage in icinga2
295

    
296
#### Parameters
297

    
298
The following parameters are available in the `nftables::rules::icinga2` class.
299

    
300
##### `ports`
301

    
302
Data type: `Array[Integer,1]`
303

    
304

    
305

    
306
Default value: `[5665]`
307

    
308
### `nftables::rules::icmp`
309

    
310
The nftables::rules::icmp class.
311

    
312
#### Parameters
313

    
314
The following parameters are available in the `nftables::rules::icmp` class.
315

    
316
##### `v4_types`
317

    
318
Data type: `Optional[Array[String]]`
319

    
320

    
321

    
322
Default value: ``undef``
323

    
324
##### `v6_types`
325

    
326
Data type: `Optional[Array[String]]`
327

    
328

    
329

    
330
Default value: ``undef``
331

    
332
##### `order`
333

    
334
Data type: `String`
335

    
336

    
337

    
338
Default value: `'10'`
339

    
340
### `nftables::rules::node_exporter`
341

    
342
manage in node exporter
343

    
344
#### Parameters
345

    
346
The following parameters are available in the `nftables::rules::node_exporter` class.
347

    
348
##### `prometheus_server`
349

    
350
Data type: `Optional[Variant[String,Array[String,1]]]`
351

    
352

    
353

    
354
Default value: ``undef``
355

    
356
##### `port`
357

    
358
Data type: `Integer`
359

    
360

    
361

    
362
Default value: `9100`
363

    
364
### `nftables::rules::ospf`
365

    
366
manage in ospf
367

    
368
### `nftables::rules::ospf3`
369

    
370
manage in ospf3
371

    
372
### `nftables::rules::out::all`
373

    
374
allow all outbound
375

    
376
### `nftables::rules::out::chrony`
377

    
378
manage out chrony
379

    
380
### `nftables::rules::out::dhcp`
381

    
382
manage out dhcp
383

    
384
### `nftables::rules::out::dhcpv6_client`
385

    
386
The nftables::rules::out::dhcpv6_client class.
387

    
388
### `nftables::rules::out::dns`
389

    
390
manage out dns
391

    
392
#### Parameters
393

    
394
The following parameters are available in the `nftables::rules::out::dns` class.
395

    
396
##### `dns_server`
397

    
398
Data type: `Optional[Variant[String,Array[String,1]]]`
399

    
400

    
401

    
402
Default value: ``undef``
403

    
404
### `nftables::rules::out::http`
405

    
406
manage out http
407

    
408
### `nftables::rules::out::https`
409

    
410
manage out https
411

    
412
### `nftables::rules::out::icmp`
413

    
414
The nftables::rules::out::icmp class.
415

    
416
#### Parameters
417

    
418
The following parameters are available in the `nftables::rules::out::icmp` class.
419

    
420
##### `v4_types`
421

    
422
Data type: `Optional[Array[String]]`
423

    
424

    
425

    
426
Default value: ``undef``
427

    
428
##### `v6_types`
429

    
430
Data type: `Optional[Array[String]]`
431

    
432

    
433

    
434
Default value: ``undef``
435

    
436
##### `order`
437

    
438
Data type: `String`
439

    
440

    
441

    
442
Default value: `'10'`
443

    
444
### `nftables::rules::out::kerberos`
445

    
446
allows outbound access for kerberos
447

    
448
### `nftables::rules::out::mysql`
449

    
450
manage out mysql
451

    
452
### `nftables::rules::out::openafs_client`
453

    
454
7000 - afs3-fileserver
455
7002 - afs3-ptserver
456
7003 - vlserver
457

    
458
* **See also**
459
  * https://wiki.openafs.org/devel/AFSServicePorts/
460
    * AFS Service Ports
461

    
462
#### Parameters
463

    
464
The following parameters are available in the `nftables::rules::out::openafs_client` class.
465

    
466
##### `ports`
467

    
468
Data type: `Array[Integer,1]`
469

    
470

    
471

    
472
Default value: `[7000, 7002, 7003]`
473

    
474
### `nftables::rules::out::ospf`
475

    
476
manage out ospf
477

    
478
### `nftables::rules::out::ospf3`
479

    
480
manage out ospf3
481

    
482
### `nftables::rules::out::postgres`
483

    
484
manage out postgres
485

    
486
### `nftables::rules::out::puppet`
487

    
488
manage outgoing puppet
489

    
490
#### Parameters
491

    
492
The following parameters are available in the `nftables::rules::out::puppet` class.
493

    
494
##### `puppetmaster`
495

    
496
Data type: `Variant[String,Array[String,1]]`
497

    
498

    
499

    
500
##### `puppetserver_port`
501

    
502
Data type: `Integer`
503

    
504

    
505

    
506
Default value: `8140`
507

    
508
### `nftables::rules::out::smtp`
509

    
510
manage out smtp
511

    
512
### `nftables::rules::out::ssh`
513

    
514
manage out ssh
515

    
516
### `nftables::rules::out::ssh::remove`
517

    
518
disable outgoing ssh
519

    
520
### `nftables::rules::out::tor`
521

    
522
manage out tor
523

    
524
### `nftables::rules::out::wireguard`
525

    
526
manage out wireguard
527

    
528
#### Parameters
529

    
530
The following parameters are available in the `nftables::rules::out::wireguard` class.
531

    
532
##### `ports`
533

    
534
Data type: `Array[Integer,1]`
535

    
536

    
537

    
538
Default value: `[51820]`
539

    
540
### `nftables::rules::puppet`
541

    
542
manage in puppet
543

    
544
#### Parameters
545

    
546
The following parameters are available in the `nftables::rules::puppet` class.
547

    
548
##### `ports`
549

    
550
Data type: `Array[Integer,1]`
551

    
552

    
553

    
554
Default value: `[8140]`
555

    
556
### `nftables::rules::smtp`
557

    
558
manage in smtp
559

    
560
### `nftables::rules::smtp_submission`
561

    
562
manage in smtp submission
563

    
564
### `nftables::rules::smtps`
565

    
566
manage in smtps
567

    
568
### `nftables::rules::ssh`
569

    
570
manage in ssh
571

    
572
#### Parameters
573

    
574
The following parameters are available in the `nftables::rules::ssh` class.
575

    
576
##### `ports`
577

    
578
Data type: `Array[Integer,1]`
579

    
580

    
581

    
582
Default value: `[22]`
583

    
584
### `nftables::rules::tor`
585

    
586
manage in tor
587

    
588
#### Parameters
589

    
590
The following parameters are available in the `nftables::rules::tor` class.
591

    
592
##### `ports`
593

    
594
Data type: `Array[Integer,1]`
595

    
596

    
597

    
598
Default value: `[9001]`
599

    
600
### `nftables::rules::wireguard`
601

    
602
manage in wireguard
603

    
604
#### Parameters
605

    
606
The following parameters are available in the `nftables::rules::wireguard` class.
607

    
608
##### `ports`
609

    
610
Data type: `Array[Integer,1]`
611

    
612

    
613

    
614
Default value: `[51820]`
615

    
616
### `nftables::services::dhcpv6_client`
617

    
618
The nftables::services::dhcpv6_client class.
619

    
620
### `nftables::services::openafs_client`
621

    
622
The nftables::services::openafs_client class.
623

    
624
## Defined types
625

    
626
### `nftables::chain`
627

    
628
manage a chain
629

    
630
#### Parameters
631

    
632
The following parameters are available in the `nftables::chain` defined type.
633

    
634
##### `table`
635

    
636
Data type: `Pattern[/^(ip|ip6|inet)-[a-zA-Z0-9_]+$/]`
637

    
638

    
639

    
640
Default value: `'inet-filter'`
641

    
642
##### `chain`
643

    
644
Data type: `Pattern[/^[a-zA-Z0-9_]+$/]`
645

    
646

    
647

    
648
Default value: `$title`
649

    
650
##### `inject`
651

    
652
Data type: `Optional[Pattern[/^\d\d-[a-zA-Z0-9_]+$/]]`
653

    
654

    
655

    
656
Default value: ``undef``
657

    
658
##### `inject_iif`
659

    
660
Data type: `Optional[String]`
661

    
662

    
663

    
664
Default value: ``undef``
665

    
666
##### `inject_oif`
667

    
668
Data type: `Optional[String]`
669

    
670

    
671

    
672
Default value: ``undef``
673

    
674
### `nftables::config`
675

    
676
manage a config snippet
677

    
678
#### Parameters
679

    
680
The following parameters are available in the `nftables::config` defined type.
681

    
682
##### `content`
683

    
684
Data type: `Optional[String]`
685

    
686

    
687

    
688
Default value: ``undef``
689

    
690
##### `source`
691

    
692
Data type: `Optional[Variant[String,Array[String,1]]]`
693

    
694

    
695

    
696
Default value: ``undef``
697

    
698
### `nftables::rule`
699

    
700
manage a chain rule
701
Name should be:
702
  CHAIN_NAME-rulename
703

    
704
#### Parameters
705

    
706
The following parameters are available in the `nftables::rule` defined type.
707

    
708
##### `ensure`
709

    
710
Data type: `Enum['present','absent']`
711

    
712

    
713

    
714
Default value: `'present'`
715

    
716
##### `rulename`
717

    
718
Data type: `Pattern[/^[a-zA-Z0-9_]+-[a-zA-Z0-9_]+(-\d+)?$/]`
719

    
720

    
721

    
722
Default value: `$title`
723

    
724
##### `order`
725

    
726
Data type: `Pattern[/^\d\d$/]`
727

    
728

    
729

    
730
Default value: `'50'`
731

    
732
##### `table`
733

    
734
Data type: `Optional[String]`
735

    
736

    
737

    
738
Default value: `'inet-filter'`
739

    
740
##### `content`
741

    
742
Data type: `Optional[String]`
743

    
744

    
745

    
746
Default value: ``undef``
747

    
748
##### `source`
749

    
750
Data type: `Optional[Variant[String,Array[String,1]]]`
751

    
752

    
753

    
754
Default value: ``undef``
755

    
756
### `nftables::rules::dnat4`
757

    
758
manage a ipv4 dnat rule
759

    
760
#### Parameters
761

    
762
The following parameters are available in the `nftables::rules::dnat4` defined type.
763

    
764
##### `daddr`
765

    
766
Data type: `Pattern[/^[12]?\d{1,2}\.[12]?\d{1,2}\.[12]?\d{1,2}\.[12]?\d{1,2}$/]`
767

    
768

    
769

    
770
##### `port`
771

    
772
Data type: `Variant[String,Integer[1,65535]]`
773

    
774

    
775

    
776
##### `rulename`
777

    
778
Data type: `Pattern[/^[a-zA-Z0-9_]+$/]`
779

    
780

    
781

    
782
Default value: `$title`
783

    
784
##### `order`
785

    
786
Data type: `Pattern[/^\d\d$/]`
787

    
788

    
789

    
790
Default value: `'50'`
791

    
792
##### `chain`
793

    
794
Data type: `String[1]`
795

    
796

    
797

    
798
Default value: `'default_fwd'`
799

    
800
##### `iif`
801

    
802
Data type: `Optional[String[1]]`
803

    
804

    
805

    
806
Default value: ``undef``
807

    
808
##### `proto`
809

    
810
Data type: `Enum['tcp','udp']`
811

    
812

    
813

    
814
Default value: `'tcp'`
815

    
816
##### `dport`
817

    
818
Data type: `Optional[Variant[String,Integer[1,65535]]]`
819

    
820

    
821

    
822
Default value: `''`
823

    
824
##### `ensure`
825

    
826
Data type: `Enum['present','absent']`
827

    
828

    
829

    
830
Default value: `'present'`
831

    
832
### `nftables::rules::masquerade`
833

    
834
masquerade all outgoing traffic
835

    
836
#### Parameters
837

    
838
The following parameters are available in the `nftables::rules::masquerade` defined type.
839

    
840
##### `rulename`
841

    
842
Data type: `Pattern[/^[a-zA-Z0-9_]+$/]`
843

    
844

    
845

    
846
Default value: `$title`
847

    
848
##### `order`
849

    
850
Data type: `Pattern[/^\d\d$/]`
851

    
852

    
853

    
854
Default value: `'70'`
855

    
856
##### `chain`
857

    
858
Data type: `String[1]`
859

    
860

    
861

    
862
Default value: `'POSTROUTING'`
863

    
864
##### `oif`
865

    
866
Data type: `Optional[String[1]]`
867

    
868

    
869

    
870
Default value: ``undef``
871

    
872
##### `saddr`
873

    
874
Data type: `Optional[String[1]]`
875

    
876

    
877

    
878
Default value: ``undef``
879

    
880
##### `daddr`
881

    
882
Data type: `Optional[String[1]]`
883

    
884

    
885

    
886
Default value: ``undef``
887

    
888
##### `proto`
889

    
890
Data type: `Optional[Enum['tcp','udp']]`
891

    
892

    
893

    
894
Default value: ``undef``
895

    
896
##### `dport`
897

    
898
Data type: `Optional[Variant[String,Integer[1,65535]]]`
899

    
900

    
901

    
902
Default value: ``undef``
903

    
904
##### `ensure`
905

    
906
Data type: `Enum['present','absent']`
907

    
908

    
909

    
910
Default value: `'present'`
911

    
912
### `nftables::rules::snat4`
913

    
914
manage a ipv4 snat rule
915

    
916
#### Parameters
917

    
918
The following parameters are available in the `nftables::rules::snat4` defined type.
919

    
920
##### `snat`
921

    
922
Data type: `String[1]`
923

    
924

    
925

    
926
##### `rulename`
927

    
928
Data type: `Pattern[/^[a-zA-Z0-9_]+$/]`
929

    
930

    
931

    
932
Default value: `$title`
933

    
934
##### `order`
935

    
936
Data type: `Pattern[/^\d\d$/]`
937

    
938

    
939

    
940
Default value: `'70'`
941

    
942
##### `chain`
943

    
944
Data type: `String[1]`
945

    
946

    
947

    
948
Default value: `'POSTROUTING'`
949

    
950
##### `oif`
951

    
952
Data type: `Optional[String[1]]`
953

    
954

    
955

    
956
Default value: ``undef``
957

    
958
##### `saddr`
959

    
960
Data type: `Optional[String[1]]`
961

    
962

    
963

    
964
Default value: ``undef``
965

    
966
##### `proto`
967

    
968
Data type: `Optional[Enum['tcp','udp']]`
969

    
970

    
971

    
972
Default value: ``undef``
973

    
974
##### `dport`
975

    
976
Data type: `Optional[Variant[String,Integer[1,65535]]]`
977

    
978

    
979

    
980
Default value: ``undef``
981

    
982
##### `ensure`
983

    
984
Data type: `Enum['present','absent']`
985

    
986

    
987

    
988
Default value: `'present'`
989

    
990
### `nftables::set`
991

    
992
manage a named set
993

    
994
#### Parameters
995

    
996
The following parameters are available in the `nftables::set` defined type.
997

    
998
##### `ensure`
999

    
1000
Data type: `Enum['present','absent']`
1001

    
1002

    
1003

    
1004
Default value: `'present'`
1005

    
1006
##### `setname`
1007

    
1008
Data type: `Pattern[/^[-a-zA-Z0-9_]+$/]`
1009

    
1010

    
1011

    
1012
Default value: `$title`
1013

    
1014
##### `order`
1015

    
1016
Data type: `Pattern[/^\d\d$/]`
1017

    
1018

    
1019

    
1020
Default value: `'10'`
1021

    
1022
##### `type`
1023

    
1024
Data type: `Optional[Enum['ipv4_addr', 'ipv6_addr', 'ether_addr', 'inet_proto', 'inet_service', 'mark']]`
1025

    
1026

    
1027

    
1028
Default value: ``undef``
1029

    
1030
##### `table`
1031

    
1032
Data type: `String`
1033

    
1034

    
1035

    
1036
Default value: `'inet-filter'`
1037

    
1038
##### `flags`
1039

    
1040
Data type: `Array[Enum['constant', 'dynamic', 'interval', 'timeout'], 0, 4]`
1041

    
1042

    
1043

    
1044
Default value: `[]`
1045

    
1046
##### `timeout`
1047

    
1048
Data type: `Optional[Integer]`
1049

    
1050

    
1051

    
1052
Default value: ``undef``
1053

    
1054
##### `gc_interval`
1055

    
1056
Data type: `Optional[Integer]`
1057

    
1058

    
1059

    
1060
Default value: ``undef``
1061

    
1062
##### `elements`
1063

    
1064
Data type: `Optional[Array[String]]`
1065

    
1066

    
1067

    
1068
Default value: ``undef``
1069

    
1070
##### `size`
1071

    
1072
Data type: `Optional[Integer]`
1073

    
1074

    
1075

    
1076
Default value: ``undef``
1077

    
1078
##### `policy`
1079

    
1080
Data type: `Optional[Enum['performance', 'memory']]`
1081

    
1082

    
1083

    
1084
Default value: ``undef``
1085

    
1086
##### `auto_merge`
1087

    
1088
Data type: `Boolean`
1089

    
1090

    
1091

    
1092
Default value: ``false``
1093

    
1094
##### `content`
1095

    
1096
Data type: `Optional[String]`
1097

    
1098

    
1099

    
1100
Default value: ``undef``
1101

    
1102
##### `source`
1103

    
1104
Data type: `Optional[Variant[String,Array[String,1]]]`
1105

    
1106

    
1107

    
1108
Default value: ``undef``
1109