diff options
Diffstat (limited to 'modules/xinetd')
| -rw-r--r-- | modules/xinetd/manifests/init.pp | 10 | ||||
| -rw-r--r-- | modules/xinetd/manifests/port_forward.pp | 8 | ||||
| -rw-r--r-- | modules/xinetd/manifests/service.pp | 9 | ||||
| -rw-r--r-- | modules/xinetd/templates/port_forward | 15 |
4 files changed, 32 insertions, 10 deletions
diff --git a/modules/xinetd/manifests/init.pp b/modules/xinetd/manifests/init.pp index 1865df91..a86aaeee 100644 --- a/modules/xinetd/manifests/init.pp +++ b/modules/xinetd/manifests/init.pp @@ -4,14 +4,4 @@ class xinetd { service { 'xinetd': subscribe => Package['xinetd'] } - - define service($content) { - include xinetd - file { "/etc/xinetd.d/$name": - require => Package['xinetd'], - content => $content, - notify => Service['xinetd'] - } - } } - diff --git a/modules/xinetd/manifests/port_forward.pp b/modules/xinetd/manifests/port_forward.pp new file mode 100644 index 00000000..2717466e --- /dev/null +++ b/modules/xinetd/manifests/port_forward.pp @@ -0,0 +1,8 @@ +define xinetd::port_forward($target_ip, $target_port, $port, $proto = 'tcp') { + include xinetd + file { "/etc/xinetd.d/${name}": + require => Package['xinetd'], + content => template('xinetd/port_forward'), + notify => Service['xinetd'] + } +} diff --git a/modules/xinetd/manifests/service.pp b/modules/xinetd/manifests/service.pp new file mode 100644 index 00000000..24caafd9 --- /dev/null +++ b/modules/xinetd/manifests/service.pp @@ -0,0 +1,9 @@ +define xinetd::service($content) { + include xinetd + file { "/etc/xinetd.d/${name}": + require => Package['xinetd'], + content => $content, + notify => Service['xinetd'] + } +} + diff --git a/modules/xinetd/templates/port_forward b/modules/xinetd/templates/port_forward new file mode 100644 index 00000000..99518dcd --- /dev/null +++ b/modules/xinetd/templates/port_forward @@ -0,0 +1,15 @@ +service <%= @name %> +{ + disable = no + type = UNLISTED +<%- if @proto == 'tcp' -%> + socket_type = stream +<%- else -%> + socket_type = dgram +<%- end -%> + protocol = <%= @proto %> + user = nobody + wait = no + redirect = <%= @target_ip %> <%= @target_port %> + port = <%= @port %> +} |
