diff --git a/manifests/base.pp b/manifests/base.pp index 6dddedf..dda9f26 100644 --- a/manifests/base.pp +++ b/manifests/base.pp @@ -25,21 +25,9 @@ class sshd::base { case $::sshrsakey { '': { info("no sshrsakey on ${::fqdn}") } default: { - @@sshkey{$::fqdn: - ensure => present, - tag => 'fqdn', - type => ssh-rsa, - key => $::sshrsakey, - } - # In case the node has uses a shared network address, - # we don't define a sshkey resource using an IP address - if $sshd::shared_ip == 'no' { - @@sshkey{$sshd::sshkey_ipaddress: - ensure => present, - tag => 'ipaddress', - type => ssh-rsa, - key => $::sshrsakey, - } + # only export sshkey when storedconfigs is enabled + if $::sshd::use_storedconfigs { + include ::sshd::sshkey } } } diff --git a/manifests/init.pp b/manifests/init.pp index cf0d9f6..145f166 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -52,7 +52,8 @@ class sshd( $hostkey_type = versioncmp($::ssh_version, '6.5') ? { /(1|0)/ => [ 'rsa', 'ed25519' ], /-1/ => [ 'rsa', 'dsa' ] - } + }, + $use_storedconfigs = true ) { validate_bool($manage_shorewall) diff --git a/manifests/sshkey.pp b/manifests/sshkey.pp new file mode 100644 index 0000000..df37a66 --- /dev/null +++ b/manifests/sshkey.pp @@ -0,0 +1,21 @@ +# deploys the +class sshd::sshkey { + + @@sshkey{$::fqdn: + ensure => present, + tag => 'fqdn', + type => 'ssh-rsa', + key => $::sshrsakey, + } + + # In case the node has uses a shared network address, + # we don't define a sshkey resource using an IP address + if $sshd::shared_ip == 'no' { + @@sshkey{$::sshd::sshkey_ipaddress: + ensure => present, + tag => 'ipaddress', + type => 'ssh-rsa', + key => $::sshrsakey, + } + } +} diff --git a/templates/sshd_config/Ubuntu_quantal.erb b/templates/sshd_config/Ubuntu_quantal.erb new file mode 120000 index 0000000..6502bfc --- /dev/null +++ b/templates/sshd_config/Ubuntu_quantal.erb @@ -0,0 +1 @@ +Ubuntu.erb \ No newline at end of file diff --git a/templates/sshd_config/Ubuntu_raring.erb b/templates/sshd_config/Ubuntu_raring.erb new file mode 120000 index 0000000..6502bfc --- /dev/null +++ b/templates/sshd_config/Ubuntu_raring.erb @@ -0,0 +1 @@ +Ubuntu.erb \ No newline at end of file diff --git a/templates/sshd_config/Ubuntu_saucy.erb b/templates/sshd_config/Ubuntu_saucy.erb new file mode 120000 index 0000000..6502bfc --- /dev/null +++ b/templates/sshd_config/Ubuntu_saucy.erb @@ -0,0 +1 @@ +Ubuntu.erb \ No newline at end of file diff --git a/templates/sshd_config/Ubuntu_trusty.erb b/templates/sshd_config/Ubuntu_trusty.erb new file mode 120000 index 0000000..6502bfc --- /dev/null +++ b/templates/sshd_config/Ubuntu_trusty.erb @@ -0,0 +1 @@ +Ubuntu.erb \ No newline at end of file diff --git a/templates/sshd_config/Ubuntu_utopic.erb b/templates/sshd_config/Ubuntu_utopic.erb new file mode 120000 index 0000000..6502bfc --- /dev/null +++ b/templates/sshd_config/Ubuntu_utopic.erb @@ -0,0 +1 @@ +Ubuntu.erb \ No newline at end of file diff --git a/templates/sshd_config/Ubuntu_vivid.erb b/templates/sshd_config/Ubuntu_vivid.erb new file mode 120000 index 0000000..6502bfc --- /dev/null +++ b/templates/sshd_config/Ubuntu_vivid.erb @@ -0,0 +1 @@ +Ubuntu.erb \ No newline at end of file diff --git a/templates/sshd_config/Ubuntu_wily.erb b/templates/sshd_config/Ubuntu_wily.erb new file mode 120000 index 0000000..6502bfc --- /dev/null +++ b/templates/sshd_config/Ubuntu_wily.erb @@ -0,0 +1 @@ +Ubuntu.erb \ No newline at end of file diff --git a/templates/sshd_config/Ubuntu_xenial.erb b/templates/sshd_config/Ubuntu_xenial.erb new file mode 120000 index 0000000..6502bfc --- /dev/null +++ b/templates/sshd_config/Ubuntu_xenial.erb @@ -0,0 +1 @@ +Ubuntu.erb \ No newline at end of file