X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fssh%2Fmanifests%2Finit.pp;h=452ce5dfbaaa24e91e047650d03b00e9dc4aceee;hb=131d1d904fb3e556c4b46ac3c00c9861ae95e0c1;hp=e560961c024ba8ee37a477cdb6af79ad911e57d5;hpb=b15f62be307ce31ac4211cf5b650d218dd2046f4;p=mirror%2Fdsa-puppet.git diff --git a/modules/ssh/manifests/init.pp b/modules/ssh/manifests/init.pp index e560961c0..452ce5dfb 100644 --- a/modules/ssh/manifests/init.pp +++ b/modules/ssh/manifests/init.pp @@ -4,6 +4,13 @@ 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"] @@ -13,14 +20,31 @@ class ssh { require => Package["openssh-server"], notify => Exec["ssh restart"] ; -# "/etc/ssh/userkeys/root": -# content => template("ssh/authorized_keys.erb" ], -# require => Package["openssh-server"] -# ; + "/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; }" + } }