]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - modules/ssh/manifests/init.pp
reshuffle things around
[dsa-puppet.git] / modules / ssh / manifests / init.pp
index 75fb47597466e4c181b174559659154067eb0d98..452ce5dfbaaa24e91e047650d03b00e9dc4aceee 100644 (file)
@@ -4,13 +4,47 @@ class ssh {
                 openssh-server: ensure => installed;
         }
 
+        case $hostname {
+                bartok, beethoven: {
+                    $keyinfo = allnodeinfo("sshRSAHostKey", "ipHostNumber")
+                }
+        }
+
+
        file { "/etc/ssh/ssh_config":
                source  => [ "puppet:///ssh/ssh_config" ],
                require => Package["openssh-client"]
                 ;
               "/etc/ssh/sshd_config":
                content => template("ssh/sshd_config.erb"),
-               require => Package["openssh-server"]
+               require => Package["openssh-server"],
+                notify  => Exec["ssh restart"]
+                ;
+              "/etc/ssh/userkeys":
+               ensure  => directory,
+               owner   => root,
+               group   => root,
+               mode    => 755,
+                ;
+              "/etc/ssh/userkeys/root":
+                content => template("ssh/authorized_keys.erb"),
+                mode    => 444,
+                require => Package["openssh-server"]
                 ;
        }
+
+        exec { "ssh restart":
+            path        => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin",
+            refreshonly => true,
+        }
+
+        ferm::rule { "dsa-ssh":
+                description     => "Allow SSH from DSA",
+                rule            => "proto tcp mod state state (NEW) dport (ssh) @subchain 'ssh' { saddr (\$SSH_SOURCES) ACCEPT; }"
+        }
+        ferm::rule { "dsa-ssh-v6":
+                description     => "Allow SSH from DSA",
+                domain          => "ip6",
+                rule            => "proto tcp mod state state (NEW) dport (ssh) @subchain 'ssh' { saddr (\$SSH_V6_SOURCES) ACCEPT; }"
+        }
 }