nit: document that `fout` must be open for reading too
[users/heiko/exim.git] / test / confs / 2002
1 # Exim test configuration 2002
2
3 .include DIR/aux-var/tls_conf_prefix
4
5 timezone = UTC
6 primary_hostname = myhost.test.ex
7
8 # ----- Main settings -----
9
10 acl_smtp_rcpt = check_recipient
11
12 log_selector = +tls_peerdn
13
14 queue_only
15 queue_run_in_order
16
17 tls_advertise_hosts = 127.0.0.1 : HOSTIPV4
18
19 tls_certificate = DIR/aux-fixed/exim-ca/example.com/server1.example.com/server1.example.com.pem
20 tls_privatekey = DIR/aux-fixed/exim-ca/example.com/server1.example.com/server1.example.com.unlocked.key
21
22 tls_verify_hosts = HOSTIPV4
23 tls_verify_certificates = DIR/aux-fixed/exim-ca/example.com/server2.example.com/ca_chain.pem
24
25
26 # ------ ACL ------
27
28 begin acl
29
30 check_recipient:
31   accept  hosts = :
32   deny    hosts = HOSTIPV4
33          !encrypted = AES256-SHA : \
34                       AES256-GCM-SHA384 : \
35                       IDEA-CBC-MD5 : \
36                       DES-CBC3-SHA : \
37                       DHE_RSA_AES_256_CBC_SHA1 : \
38                       DHE_RSA_3DES_EDE_CBC_SHA : \
39                       RSA_AES_256_CBC_SHA1 : \
40                       ECDHE_RSA_AES_256_GCM_SHA384
41   warn    logwrite =  ${if def:tls_in_ourcert \
42                 {Our cert SN: <${certextract{subject}{$tls_in_ourcert}}>} \
43                 {We did not present a cert}}
44   accept  condition = ${if !def:tls_in_peercert}
45           logwrite =  Peer did not present a cert
46   accept  logwrite =  Peer cert:
47           logwrite =  ver ${certextract {version}{$tls_in_peercert}}
48           logwrite =  SR  <${certextract {serial_number}{$tls_in_peercert}}>
49           logwrite =  SN  <${certextract {subject}      {$tls_in_peercert}}>
50           logwrite =  IN  <${certextract {issuer}       {$tls_in_peercert}}>
51           logwrite =  IN/O <${certextract {issuer,O}    {$tls_in_peercert}}>
52           logwrite =  NB/r <${certextract {notbefore,raw}       {$tls_in_peercert}}>
53           logwrite =  NB   <${certextract {notbefore}   {$tls_in_peercert}}>
54           logwrite =  NB/i <${certextract {notbefore,int}{$tls_in_peercert}}>
55           logwrite =  NA/i <${certextract {notafter,int}        {$tls_in_peercert}}>
56           logwrite =  NA   <${certextract {notafter}    {$tls_in_peercert}}>
57           logwrite =  SA  <${certextract {sig_algorithm}{$tls_in_peercert}}>
58           logwrite =  SG  <${certextract {signature}    {$tls_in_peercert}}>
59           logwrite =       ${certextract {subj_altname} {$tls_in_peercert} {SAN <$value>}{(no SAN)}}
60 #         logwrite =       ${certextract {ocsp_uri}     {$tls_in_peercert} {OCU <$value>}{(no OCU)}}
61           logwrite =       ${certextract {crl_uri}      {$tls_in_peercert} {CRU <$value>}{(no CRU)}}
62           logwrite =  md5    fingerprint ${md5:$tls_in_peercert}
63           logwrite =  sha1   fingerprint ${sha1:$tls_in_peercert}
64           logwrite =  sha256 fingerprint ${sha256:$tls_in_peercert}
65           logwrite =  der_b64 ${base64:$tls_in_peercert}
66
67
68 # ----- Routers -----
69
70 begin routers
71
72 abc:
73   driver = accept
74   retry_use_local_part
75   transport = local_delivery
76   headers_add = tls-certificate-verified: $tls_certificate_verified
77
78
79 # ----- Transports -----
80
81 begin transports
82
83 local_delivery:
84   driver = appendfile
85   file = DIR/test-mail/$local_part
86   headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
87   user = CALLER
88
89 # End