]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - modules/portforwarder/manifests/init.pp
variable assignment does not clone string...
[dsa-puppet.git] / modules / portforwarder / manifests / init.pp
index cf83ba593a4d9f2633f2e13acd3126f44cc8c5cc..e7009b22e986313cff3af8d3ec155b534b048b30 100644 (file)
@@ -1,30 +1,29 @@
 class portforwarder {
-    # do not depend on xinetd, yet.  it might uninstall other inetds
-    # for now this will have to be done manually
-    file {
-        "/etc/ssh/userkeys/portforwarder":
-            content => template("portforwarder/authorized_keys.erb"),
-            mode    => 444,
-            ;
-        "/etc/xined.d":
-            ensure  => directory,
-            owner   => root,
-            group   => root,
-            mode    => 755,
-            ;
-        "/etc/xinetd.d/dsa-portforwader":
-            content => template("portforwarder/xinetd.erb"),
-            notify  => Exec["xinetd reload"]
-            ;
-    }
+       # do not depend on xinetd, yet.  it might uninstall other inetds
+       # for now this will have to be done manually
 
-    exec {
-        "xinetd reload":
-            path        => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin",
-            refreshonly => true,
-            ;
-    }
+       if ! $::portforwarder_key {
+               exec { 'create-portforwarder-key':
+                       command => '/bin/su - portforwarder -c \'mkdir -p -m 02700 .ssh && ssh-keygen -C "`whoami`@`hostname` (`date +%Y-%m-%d`)" -P "" -f .ssh/id_rsa -q\'',
+                       onlyif  => '/usr/bin/getent passwd portforwarder > /dev/null && ! [ -e /home/portforwarder/.ssh/id_rsa ]'
+               }
+       }
+
+       file { '/etc/ssh/userkeys/portforwarder':
+               content => template('portforwarder/authorized_keys.erb'),
+       }
+       file { '/etc/xinetd.d':
+               ensure  => directory,
+               owner   => root,
+               group   => root,
+               mode    => '0755',
+       }
+       file { '/etc/xinetd.d/dsa-portforwader':
+               content => template('portforwarder/xinetd.erb'),
+               notify  => Exec['service xinetd reload']
+       }
+
+       exec { 'service xinetd reload':
+               refreshonly => true,
+       }
 }
-# vim:set et:
-# vim:set ts=4:
-# vim:set shiftwidth=4: