You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -339,6 +339,14 @@ Determins if a tls key is generated
339
339
340
340
Default value: `false`
341
341
342
+
##### `tls_static_key`
343
+
344
+
Data type: `Boolean`
345
+
346
+
Determins if a tls key is generated
347
+
348
+
Default value: `false`
349
+
342
350
##### `crl_days`
343
351
344
352
Data type: `Integer`
@@ -375,7 +383,7 @@ Name of the corresponding openvpn endpoint
375
383
376
384
##### `compression`
377
385
378
-
Data type: `Enum['comp-lzo', '']`
386
+
Data type: `String`
379
387
380
388
Which compression algorithim to use
381
389
@@ -517,6 +525,14 @@ Activates tls-auth to Add an additional layer of HMAC authentication on top of t
517
525
518
526
Default value: `false`
519
527
528
+
##### `tls_crypt`
529
+
530
+
Data type: `Boolean`
531
+
532
+
Encrypt and authenticate all control channel packets with the key from keyfile. (See --tls-auth for more background.)
533
+
534
+
Default value: `false`
535
+
520
536
##### `x509_name`
521
537
522
538
Data type: `Optional[String]`
@@ -662,45 +678,53 @@ The following parameters are available in the `openvpn::client_specific_config`
662
678
663
679
##### `server`
664
680
665
-
Data type: `String`
681
+
Data type: `String[1]`
666
682
667
683
Name of the corresponding openvpn endpoint
668
684
669
685
##### `iroute`
670
686
671
-
Data type: `Array[String]`
687
+
Data type: `Array[String[1]]`
672
688
673
689
Array of iroute combinations.
674
690
675
691
Default value: []
676
692
677
693
##### `iroute_ipv6`
678
694
679
-
Data type: `Array[String]`
695
+
Data type: `Array[String[1]]`
680
696
681
697
Array of IPv6 iroute combinations.
682
698
683
699
Default value: []
684
700
685
701
##### `route`
686
702
687
-
Data type: `Array[String]`
703
+
Data type: `Array[String[1]]`
688
704
689
705
Array of route combinations pushed to client.
690
706
691
707
Default value: []
692
708
693
709
##### `ifconfig`
694
710
695
-
Data type: `Variant[Boolean, String]`
711
+
Data type: `Optional[String[1]]`
696
712
697
713
IP configuration to push to the client.
698
714
699
-
Default value: `false`
715
+
Default value: `undef`
716
+
717
+
##### `ifconfig_ipv6`
718
+
719
+
Data type: `Optional[String[1]]`
720
+
721
+
IPv6 configuration to push to the client.
722
+
723
+
Default value: `undef`
700
724
701
725
##### `dhcp_options`
702
726
703
-
Data type: `Array[String]`
727
+
Data type: `Array[String[1]]`
704
728
705
729
DHCP options to push to the client.
706
730
@@ -716,12 +740,20 @@ Default value: `false`
716
740
717
741
##### `ensure`
718
742
719
-
Data type: `Enum[present, absent]`
743
+
Data type: `Enum['present', 'absent']`
720
744
721
745
Sets the client specific configuration file status (present or absent)
722
746
723
747
Default value: present
724
748
749
+
##### `manage_client_configs`
750
+
751
+
Data type: `Boolean`
752
+
753
+
Manage dependencies on Openvpn::Client ressources
754
+
755
+
Default value: `true`
756
+
725
757
### openvpn::deploy::client
726
758
727
759
Collect the exported configs for an Host and ensure a running Openvpn Service
@@ -982,6 +1014,30 @@ Logfile for this openvpn server
982
1014
983
1015
Default value: `false`
984
1016
1017
+
##### `manage_logfile_directory`
1018
+
1019
+
Data type: `Boolean`
1020
+
1021
+
Manage the directory that the logfile is located in
1022
+
1023
+
Default value: `false`
1024
+
1025
+
##### `logdirectory_user`
1026
+
1027
+
Data type: `String[1]`
1028
+
1029
+
The owner user of the logfile directory
1030
+
1031
+
Default value: 'nobody'
1032
+
1033
+
##### `logdirectory_group`
1034
+
1035
+
Data type: `String[1]`
1036
+
1037
+
The owner group of the logfile directory
1038
+
1039
+
Default value: 'nobody'
1040
+
985
1041
##### `port`
986
1042
987
1043
Data type: `String`
@@ -1000,7 +1056,7 @@ Default value: `undef`
1000
1056
1001
1057
##### `proto`
1002
1058
1003
-
Data type: `Enum['tcp', 'udp']`
1059
+
Data type: `Enum['tcp', 'tcp4', 'tcp6', 'udp', 'udp4', 'udp6']`
1004
1060
1005
1061
What IP protocol is being used.
1006
1062
@@ -1160,19 +1216,35 @@ Default value: 7505
1160
1216
1161
1217
##### `up`
1162
1218
1163
-
Data type: `String`
1219
+
Data type: `Optional[String[1]]`
1164
1220
1165
-
Script which we want to run when openvpn server starts
1221
+
Script which we want to run when openvpn server starts. If the path to the scirpt does not contain a slash, it will be assumed to be in `openvpn/${name}/scripts` directory.
1166
1222
1167
-
Default value: ''
1223
+
Default value: `undef`
1168
1224
1169
1225
##### `down`
1170
1226
1171
-
Data type: `String`
1227
+
Data type: `Optional[String[1]]`
1172
1228
1173
-
Script which we want to run when openvpn server stops
1229
+
Script which we want to run when openvpn server stops. If the path to the scirpt does not contain a slash, it will be assumed to be in `openvpn/${name}/scripts` directory.
1174
1230
1175
-
Default value: ''
1231
+
Default value: `undef`
1232
+
1233
+
##### `client_connect`
1234
+
1235
+
Data type: `Optional[String[1]]`
1236
+
1237
+
Script which we want to run when a client connects. If the path to the scirpt does not contain a slash, it will be assumed to be in `openvpn/${name}/scripts` directory.
1238
+
1239
+
Default value: `undef`
1240
+
1241
+
##### `client_disconnect`
1242
+
1243
+
Data type: `Optional[String[1]]`
1244
+
1245
+
Script which we want to run when a client disconnects. If the path to the scirpt does not contain a slash, it will be assumed to be in `openvpn/${name}/scripts` directory.
1246
+
1247
+
Default value: `undef`
1176
1248
1177
1249
##### `username_as_common_name`
1178
1250
@@ -1296,19 +1368,19 @@ Default value: ''
1296
1368
1297
1369
##### `ldap_tls_client_cert_file`
1298
1370
1299
-
Data type: `String`
1371
+
Data type: `Optional[Stdlib::Absolutepath]`
1300
1372
1301
1373
LDAP TLS authentication: path to the tls client certificate
1302
1374
1303
-
Default value: ''
1375
+
Default value: `undef`
1304
1376
1305
1377
##### `ldap_tls_client_key_file`
1306
1378
1307
-
Data type: `String`
1379
+
Data type: `Optional[Stdlib::Absolutepath]`
1308
1380
1309
1381
LDAP TLS authentication: path to the tls client key
1310
1382
1311
-
Default value: ''
1383
+
Default value: `undef`
1312
1384
1313
1385
##### `verb`
1314
1386
@@ -1398,6 +1470,14 @@ Activates tls-auth to Add an additional layer of HMAC authentication on top of t
1398
1470
1399
1471
Default value: `false`
1400
1472
1473
+
##### `tls_crypt`
1474
+
1475
+
Data type: `Boolean`
1476
+
1477
+
Encrypt and authenticate all control channel packets with the key from keyfile. (See --tls-auth for more background.)
1478
+
1479
+
Default value: `false`
1480
+
1401
1481
##### `tls_server`
1402
1482
1403
1483
Data type: `Boolean`
@@ -1582,6 +1662,26 @@ A pre-shared static key.
1582
1662
1583
1663
Default value: `undef`
1584
1664
1665
+
##### `scripts`
1666
+
1667
+
Data type: `Hash[String, Hash]`
1668
+
1669
+
Hash of scripts to copy with this instance.
1670
+
For example, to put a script in `/etc/openvpn/test-site/scripts/add-tap-to-bridge.sh` and use it as an `up` script
Copy file name to clipboardExpand all lines: manifests/server.pp
+40-4Lines changed: 40 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -41,8 +41,10 @@
41
41
# @param management Enable management interface
42
42
# @param management_ip IP address where the management interface will listen
43
43
# @param management_port Port where the management interface will listen
44
-
# @param up Script which we want to run when openvpn server starts
45
-
# @param down Script which we want to run when openvpn server stops
44
+
# @param up Script which we want to run when openvpn server starts. If the path to the scirpt does not contain a slash, it will be assumed to be in `openvpn/${name}/scripts` directory.
45
+
# @param down Script which we want to run when openvpn server stops. If the path to the scirpt does not contain a slash, it will be assumed to be in `openvpn/${name}/scripts` directory.
46
+
# @param client_connect Script which we want to run when a client connects. If the path to the scirpt does not contain a slash, it will be assumed to be in `openvpn/${name}/scripts` directory.
47
+
# @param client_disconnect Script which we want to run when a client disconnects. If the path to the scirpt does not contain a slash, it will be assumed to be in `openvpn/${name}/scripts` directory.
46
48
# @param username_as_common_name If true then set username-as-common-name
47
49
# @param client_cert_not_required If true then set client-cert-not-required
48
50
# @param ldap_enabled If ldap is enabled, do stuff
@@ -95,6 +97,20 @@
95
97
# @param remote_cert_tls Enable or disable use of remote-cert-tls for the session. Generally used with client configuration
96
98
# @param nobind Whether or not to bind to a specific port number.#
97
99
# @param secret A pre-shared static key.
100
+
# @param scripts Hash of scripts to copy with this instance.
101
+
# For example, to put a script in `/etc/openvpn/test-site/scripts/add-tap-to-bridge.sh` and use it as an `up` script
0 commit comments