X-Git-Url: https://git.exim.org/users/heiko/exim.git/blobdiff_plain/afda344b580b54a4513569720aec3260cd5ba546..cb6df646091bdc096e35f75be91d361cc38d06fc:/test/confs/2102 diff --git a/test/confs/2102 b/test/confs/2102 index 3caab6f7c..6ae1514e9 100644 --- a/test/confs/2102 +++ b/test/confs/2102 @@ -1,13 +1,9 @@ # Exim test configuration 2102 -exim_path = EXIM_PATH -host_lookup_order = bydns +.include DIR/aux-var/tls_conf_prefix + +timezone = UTC primary_hostname = myhost.test.ex -rfc1413_query_timeout = 0s -spool_directory = DIR/spool -log_file_path = DIR/spool/log/%slog -gecos_pattern = "" -gecos_name = CALLER_NAME # ----- Main settings ----- @@ -20,13 +16,26 @@ queue_run_in_order tls_advertise_hosts = 127.0.0.1 : HOSTIPV4 -tls_certificate = DIR/aux-fixed/cert1 -tls_privatekey = DIR/aux-fixed/cert1 +.ifdef ORDER +tls_require_ciphers = ORDER +.endif + +CA = DIR/aux-fixed/exim-ca +DRSA = CA/example.com +DECDSA = CA/example_ec.com + +tls_certificate = DRSA/server1.example.com/server1.example.com.pem \ + : DECDSA/server1.example_ec.com/server1.example_ec.com.pem +tls_privatekey = DRSA/server1.example.com/server1.example.com.unlocked.key \ + : DECDSA/server1.example_ec.com/server1.example_ec.com.unlocked.key tls_verify_hosts = HOSTIPV4 -tls_verify_certificates = DIR/aux-fixed/cert2 +tls_verify_certificates = DRSA/server2.example.com/ca_chain.pem +.ifdef _OPT_OPENSSL_NO_TLSV1_3_X +openssl_options = +no_tlsv1_3 +.endif # ------ ACL ------ begin acl @@ -34,12 +43,38 @@ begin acl check_recipient: accept hosts = : deny hosts = HOSTIPV4 - !encrypted = AES256-SHA : \ - IDEA-CBC-MD5 : \ - DES-CBC3-SHA : \ - DHE_RSA_AES_256_CBC_SHA1 : \ - DHE_RSA_3DES_EDE_CBC_SHA - accept + !encrypted = * + logwrite = cipher: $tls_in_cipher +# This appears to lie. Despite what's on the wire, it returns the last cert loaded. +# Fixed in OpenSSL 1.1.1 ? Testcase golden logfile has the incorrect value. + warn logwrite = ${if def:tls_in_ourcert \ + {Our cert SN: <${certextract{subject}{$tls_in_ourcert}}>} \ + {We did not present a cert}} + accept condition = ${if !def:tls_in_peercert} + logwrite = Peer did not present a cert + accept logwrite = Peer cert: + logwrite = ver ${certextract {version}{$tls_in_peercert}} + logwrite = SR <${certextract {serial_number}{$tls_in_peercert}}> + logwrite = SN <${certextract {subject} {$tls_in_peercert}}> + logwrite = IN <${certextract {issuer} {$tls_in_peercert}}> + logwrite = IN/O <${certextract {issuer,O} {$tls_in_peercert}}> + logwrite = NB/r <${certextract {notbefore,raw} {$tls_in_peercert}}> + logwrite = NB <${certextract {notbefore} {$tls_in_peercert}}> + logwrite = NB/i <${certextract {notbefore,int}{$tls_in_peercert}}> + logwrite = NA/i <${certextract {notafter,int} {$tls_in_peercert}}> + logwrite = NA <${certextract {notafter} {$tls_in_peercert}}> + logwrite = SA <${certextract {sig_algorithm}{$tls_in_peercert}}> + logwrite = SG <${certextract {signature} {$tls_in_peercert}}> + logwrite = ${certextract {subj_altname} {$tls_in_peercert} {SAN <$value>}{(no SAN)}} + logwrite = ${certextract {ocsp_uri} {$tls_in_peercert} {OCU <$value>}{(no OCU)}} + logwrite = ${certextract {crl_uri} {$tls_in_peercert} {CRU <$value>}{(no CRU)}} + logwrite = md5 fingerprint ${md5:$tls_in_peercert} + logwrite = sha1 fingerprint ${sha1:$tls_in_peercert} + logwrite = sha256 fingerprint ${sha256:$tls_in_peercert} + logwrite = der_b64 ${base64:$tls_in_peercert} + logwrite = cipher: $tls_in_cipher + logwrite = cipher_ $tls_in_cipher_std + logwrite = ver: $tls_in_ver # ----- Routers ----- @@ -59,7 +94,7 @@ begin transports local_delivery: driver = appendfile - file = DIR/test-mail/$local_part + file = DIR/test-mail/${bless:$local_part} headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn user = CALLER