Testsuite: avoid cipher vs. cert validity problem
[users/heiko/exim.git] / test / confs / 5893
1 # Exim test configuration 5893
2
3 SERVER =
4 OPTION =
5
6 .include DIR/aux-var/tls_conf_prefix
7
8 primary_hostname = myhost.test.ex
9
10 # ----- Main settings -----
11
12 domainlist local_domains = test.ex : *.test.ex
13
14 acl_smtp_helo = check_helo
15 acl_smtp_rcpt = check_recipient
16 log_selector = +received_recipients +tls_resumption +tls_peerdn
17
18 openssl_options = +no_sslv2 +no_sslv3 +single_dh_use OPTION
19 tls_advertise_hosts = *
20
21 # Set certificate only if server
22
23 CDIR=DIR/aux-fixed/exim-ca/example.com
24
25 tls_certificate = CDIR/server1.example.com/server1.example.com.chain.pem
26 tls_privatekey =  CDIR/server1.example.com/server1.example.com.unlocked.key
27 tls_ocsp_file =   CDIR/server1.example.com/server1.example.com.ocsp.good.resp
28
29 tls_resumption_hosts = 127.0.0.1
30
31
32 # ------ ACL ------
33
34 begin acl
35
36 check_helo:
37   accept  condition =   ${if def:tls_in_cipher}
38           logwrite =    tls_in_resumption\t${listextract {$tls_in_resumption} {_RESUME_DECODE}}
39           logwrite =    our cert subject\t${certextract {subject}{$tls_in_ourcert}}
40           logwrite =    peer cert subject\t${certextract {subject}{$tls_in_peercert}}
41           logwrite =    peer cert verified\t${tls_in_certificate_verified}
42           logwrite =    peer dn\t${tls_in_peerdn}
43           logwrite =    ocsp\t${tls_in_ocsp}
44           logwrite =    cipher\t${tls_in_cipher}
45           logwrite =    bits\t${tls_in_bits}
46   accept
47
48 check_recipient:
49   accept  domains =     +local_domains
50   deny    message =     relay not permitted
51
52 log_resumption:
53   accept condition =    ${if def:tls_out_cipher}
54          condition =    ${if eq {$event_name}{tcp:close}}
55          logwrite =     tls_out_resumption ${listextract {$tls_out_resumption} {_RESUME_DECODE}}
56           logwrite =    our cert subject\t${certextract {subject}{$tls_out_ourcert}}
57           logwrite =    peer cert subject\t${certextract {subject}{$tls_out_peercert}}
58           logwrite =    peer cert verified\t${tls_out_certificate_verified}
59           logwrite =    peer dn\t${tls_out_peerdn}
60           logwrite =    ocsp\t${tls_out_ocsp}
61           logwrite =    cipher\t${tls_out_cipher}
62           logwrite =    bits\t${tls_out_bits}
63
64
65 # ----- Routers -----
66
67 begin routers
68
69 client:
70   driver =      accept
71   condition =   ${if eq {SERVER}{server}{no}{yes}}
72   transport =   send_to_server${if eq{$local_part}{abcd}{2}{1}}
73
74 server:
75   driver = redirect
76   data = :blackhole:
77
78 # ----- Transports -----
79
80 begin transports
81
82 send_to_server1:
83   driver =                      smtp
84   allow_localhost
85   hosts =                       127.0.0.1
86   port =                        PORT_D
87   helo_data =                   helo.data.changed
88 .ifdef VALUE
89   tls_resumption_hosts =        *
90 .else
91   tls_resumption_hosts =        :
92 .endif
93   tls_verify_certificates =     CDIR/CA/CA.pem
94   tls_verify_cert_hostnames =   ${if match {$local_part}{^noverify} {*}{:}}
95   tls_try_verify_hosts =        *
96   event_action =                ${acl {log_resumption}}
97
98 send_to_server2:
99   driver = smtp
100   allow_localhost
101   hosts = HOSTIPV4
102   port = PORT_D
103   hosts_try_fastopen =  :
104   tls_verify_certificates =     CDIR/CA/CA.pem
105   tls_verify_cert_hostnames =   :
106   event_action =                ${acl {log_resumption}}
107
108
109 # ----- Retry -----
110
111
112 begin retry
113
114 * * F,5d,10s
115
116
117 # End