X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fportforwarder%2Ftemplates%2Fxinetd.erb;h=4f0d2fa53ce4fa4f87ca7e3011394425af416dcc;hb=70091d4278b3b614652c8ef99dc692e89bc28967;hp=4cb2554a8a19fff255311324583a7a2396cf2b8e;hpb=a973a5a968ad30babb42489ebbc4089c6a4c2b2f;p=mirror%2Fdsa-puppet.git diff --git a/modules/portforwarder/templates/xinetd.erb b/modules/portforwarder/templates/xinetd.erb index 4cb2554a8..4f0d2fa53 100644 --- a/modules/portforwarder/templates/xinetd.erb +++ b/modules/portforwarder/templates/xinetd.erb @@ -1,3 +1,8 @@ +## +## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. +## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git +## + <%= lines = [] @@ -14,26 +19,28 @@ template = 'service @@TARGET_HOST@@@@TARGET_PORT@@ group = portforwarder instances = 10 server = /usr/bin/ssh - server_args = -o PreferredAuthentications=publickey -o EscapeChar=none -C @@TARGET_HOST@@ : nothing + server_args = -o PreferredAuthentications=publickey -o EscapeChar=none -o BatchMode=yes -C @@SSH_OPTIONS@@ @@TARGET_HOST@@ forward-to @@TARGET_PORT@@ cps = 0 0 } ' config = YAML.load(File.open('/etc/puppet/modules/portforwarder/misc/config.yaml').read) -if config[fqdn] - config[fqdn].each do |service| +if config[@fqdn] + config[@fqdn].each do |service| target_port = service['target_port'] target_host = service['target_host'] local_bind = service['source_bind_port'] + ssh_options = service['ssh_options'] || "" - lines << "# from #{sourcehost} on local port #{service['source_bind_port']}" + lines << "# to #{target_port.to_s}:target_host from local port #{local_bind.to_s}" if target_port.nil? or target_host.nil? or local_bind.nil? lines << "# insufficient config values" else p = template.clone p.gsub!('@@TARGET_HOST@@', target_host) - p.gsub!('@@TARGET_PORT@@', target_port) - p.gsub!('@@LOCLA_BIND@@', local_bind) + p.gsub!('@@TARGET_PORT@@', target_port.to_s) + p.gsub!('@@LOCAL_BIND@@', local_bind.to_s) + p.gsub!('@@SSH_OPTIONS@@', ssh_options.to_s) lines << p end end