+ file { '/etc/ssl/debian/keys/thishost.key':
+ ensure => absent,
+ }
+ file { '/etc/ssl/debian/keys/thishost-server.key':
+ ensure => absent,
+ }
+ file { '/etc/ssl/debian/keys':
+ ensure => absent,
+ force => true,
+ }
+ file { '/etc/ssl/private/thishost.key':
+ source => "puppet:///modules/ssl/clientcerts/${::fqdn}.key",
+ mode => '0440',
+ group => ssl-cert,
+ require => Package['ssl-cert'],
+ }
+ file { '/etc/ssl/private/thishost-server.key':
+ source => "puppet:///modules/exim/certs/${::fqdn}.key",
+ mode => '0440',
+ group => ssl-cert,
+ require => Package['ssl-cert'],
+ }
+
+ $updatecacertsdsa = '/usr/local/sbin/update-ca-certificates-dsa'
+ if (versioncmp($::lsbmajdistrelease, '9') >= 0) {
+ file { $updatecacertsdsa:
+ ensure => absent,
+ }
+ $updatecacerts = '/usr/sbin/update-ca-certificates'
+ } else {
+ file { $updatecacertsdsa:
+ mode => '0555',
+ source => 'puppet:///modules/ssl/update-ca-certificates-dsa',
+ }
+ $updatecacerts = $updatecacertsdsa
+ }
+
+ exec { 'retire_debian_links':
+ command => 'find -lname "../servicecerts/*" -exec rm {} +',
+ cwd => '/etc/ssl/certs',
+ refreshonly => true,
+ notify => Exec['refresh_normal_hashes'],
+ }
+ exec { 'refresh_debian_hashes':
+ command => 'c_rehash /etc/ssl/debian/certs',
+ refreshonly => true,
+ require => Package['openssl'],
+ }
+
+ exec { 'refresh_normal_hashes':
+ # NOTE 1: always use update-ca-certificates to manage hashes in
+ # /etc/ssl/certs otherwise /etc/ssl/ca-certificates.crt will
+ # get a hash overriding the hash that would have been generated
+ # for another certificate ... which is problem, comrade
+ # NOTE 2: always ask update-ca-certificates to freshen (-f) the links
+ command => "/usr/sbin/update-ca-certificates --fresh${extra_ssl_certs_flags}",
+ refreshonly => true,
+ require => Package['ca-certificates'],
+ }
+ exec { 'refresh_ca_debian_hashes':
+ command => "${updatecacerts} --fresh --certsconf /etc/ca-certificates-debian.conf --localcertsdir /dev/null --etccertsdir /etc/ssl/ca-debian --hooksdir /dev/null",