summaryrefslogtreecommitdiff
path: root/test/confs/5670
blob: f4252668e625cf32d82be610ad933a09b2385a90 (plain)
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
# Exim test configuration 5655
# OCSP stapling, server, multiple chain-element OCSP.  Both GnuTLS and OpenSSL.

.include DIR/aux-var/tls_conf_prefix

primary_hostname = server1.example.com

# ----- Main settings -----

acl_smtp_mail = check_mail
acl_smtp_rcpt = check_recipient

log_selector = +tls_peerdn

queue_only
queue_run_in_order

tls_advertise_hosts = *

CADIR = DIR/aux-fixed/exim-ca
DRSA = CADIR/example.com
DECDSA = CADIR/example_ec.com

tls_certificate = DRSA/server1.example.com/fullchain.pem
tls_privatekey =  DRSA/server1.example.com/server1.example.com.unlocked.key

.ifndef CONTROL
tls_ocsp_file =   PEM DRSA/server1.example.com/fullchain.ocsp.resp.pem
.else
tls_ocsp_file =   PEM DIR/tmp/ocsp/double_r.ocsp.pem
.endif


.ifdef _HAVE_GNUTLS
tls_require_ciphers = ${if eq {TRUSTED}{TLS1.2} {NORMAL:!VERS-ALL:+VERS-TLS1.2} {}}
.endif
.ifdef _HAVE_OPENSSL
.ifdef  TRUSTED
openssl_options = ${if eq {TRUSTED}{TLS1.2} {+no_tlsv1_3} {}}
.endif
.endif

# ------ ACL ------

begin acl

check_mail:
  accept   logwrite = acl_mail: ocsp in status: $tls_in_ocsp \
    (${listextract {${eval:$tls_in_ocsp+1}} \
		{notreq:notresp:vfynotdone:failed:verified}})

check_recipient:
  accept


# ----- Routers -----

begin routers

client:
  driver = manualroute
  condition = ${if !eq {SERVER}{server}}
  route_list = * 127.0.0.1
  self = send
  transport = remote_delivery
  errors_to = ""

srvr:
  driver = accept
  retry_use_local_part
  transport = local_delivery


# ----- Transports -----

begin transports

remote_delivery:
  driver =			smtp
  port =			PORT_D
  hosts_require_tls =		*

.ifdef _HAVE_GNUTLS
  tls_require_ciphers =		${if eq {TRUSTED}{TLS1.2} \
				  {NONE:\
				      +SIGN-RSA-SHA256:+VERS-TLS-ALL:+ECDHE-RSA:+DHE-RSA:+RSA\
				  :+CIPHER-ALL:+MAC-ALL:+COMP-NULL:+CURVE-ALL:+CTYPE-X509} \
				  {}}
.endif
.ifdef _HAVE_OPENSSL
  tls_require_ciphers =		RSA
.endif
  tls_verify_certificates =	CADIR/example.com/server1.example.com/ca_chain.pem
  hosts_require_ocsp =		*
  tls_verify_cert_hostnames =	:

local_delivery:
  driver = appendfile
  file = DIR/test-mail/$local_part
  create_file = DIR/test-mail
  headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
  user = CALLER

# End