1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
class mail::tls::hardened inherits mail::tls {
# Hardened config
postfix::config { "smtpd_tls_ciphers": value => 'high' }
postfix::config { "smtp_tls_protocols": value => '!SSLv2, SSLv3, TLSv1' }
postfix::config { "smtp_tls_note_starttls_offer": value => 'yes' }
postfix::config { "smtpd_tls_received_header": value => 'yes' }
postfix::config { "smtpd_tls_mandatory_protocols": value => 'TLSv1' }
postfix::config { "smtpd_tls_session_cache_database": value => 'btree:${queue_directory}/smtpd_scache' }
postfix::config { "smtp_tls_session_cache_database": value => 'btree:${queue_directory}/smtp_scache' }
# DH parameters
postfix::config { "smtpd_tls_eecdh_grade": value => 'strong' }
postfix::config { "smtpd_tls_dh1024_param_file":
value => '/etc/postfix/dh_1024.pem',
require => Exec['openssl-postfix-gendh-1024'],
}
postfix::config { "smtpd_tls_dh512_param_file":
value => '/etc/postfix/dh_512.pem',
require => Exec['openssl-postfix-gendh-512'],
}
exec { 'openssl-postfix-gendh-512':
command => 'openssl gendh -out /etc/postfix/dh_512.pem -2 512',
user => root,
group => root,
creates => '/etc/postfix/dh_512.pem',
}
exec { 'openssl-postfix-gendh-1024':
command => 'openssl gendh -out /etc/postfix/dh_1024.pem -2 1024',
user => root,
group => root,
creates => '/etc/postfix/dh_1024.pem',
}
postfix::config { "smtpd_tls_exclude_ciphers":
value => 'aNULL, MD5, DES, 3DES, DES-CBC3-SHA, RC4-SHA, AES256-SHA, AES128-SHA',
}
}
|