Sendmail + STARTTLS

Dan Lukes dan at obluda.cz
Mon Jun 24 20:08:28 CEST 2019


On 24.6.2019 10:05, Peter Rosa wrote:
>> nejpravdepodobnejsi duvod je, ze mas mnozinu podporovanych 
>> protokolu/sifer/MAC nastavenou tak, ze se vzdalenym serverem nemate 
>> spolecny prunik.

>>> TLS_Srv_features:. Options=+SSL_OP_CIPHER_SERVER_PREFERENCE; 
>>> CipherList=HIGH:!ADH:!EXPORT56:!aNULL:!DH:!CAMELLIA:!ECDSA:!kECDHe:!SRP:!PSK:!MD5:-kRSA:@STRENGTH; 
>>>
>>> TLS_Clt_features:. 
>>> CipherList=HIGH:!ADH:!EXPORT56:!aNULL:!DH:!CAMELLIA:!ECDSA:!kECDHe:!SRP:!PSK:!MD5:-kRSA:@STRENGTH 
> 
> spolocny prienik sifrovacich algoritmov je s najvacsou pravdepodobnostou 
> presna pricina. Tieto nastavenia su pre mna uplne nove - ja v access z 
> tychto nastaveni nemam nic... 

Muzes je mit i v konfiguraku sendmailu, nebo nikde - pak se pouzije 
"default".

> OTAZKA - Ako zistim algoritmy, ktore podporuje moj server (FreeBSD 11.2, sendmail 8.15.2 z base, OpenSSL 
> 1.0.2o-freebsd z base)?

Sendmail na tohle nema vliv, cele to je o OPenSSL (ktere sendmail 
pouziva) - a to o openssl bazovem (pro pripad, ze mas navic 
nainstalovane i OpenSSL z portu.

Co podporuje "defaultne" zjistis pomoci '/usr/bin/openssl ciphers -v'

Co podporuje s konkretni hodnotou 'CipherList" zjistis pomoci (priklad 
je pro hodnotu vyse uvedenou):

> /usr/bin/openssl ciphers -v 'HIGH:!ADH:!EXPORT56:!aNULL:!DH:!CAMELLIA:!ECDSA:!kECDHe:!SRP:!PSK:!MD5:-kRSA:@STRENGTH'

> ešte doplnam CipherList z /etc/mail/sendmail.cf:
>   O CipherList=HIGH
>   O ServerSSLOptions=+SSL_OP_NO_SSLv2 +SSL_OP_NO_SSLv3
>                      +SSL_OP_CIPHER_SERVER_PREFERENCE
>   O ClientSSLOptions=+SSL_OP_NO_SSLv2 +SSL_OP_NO_SSLv3
> 
> Ak to dobre chapem, tak sa nema pouzit SSLv2 ani SSLv3 - ani ako klient, ani ako server.

Ano.

> Prosim, ako teda zistim, ktore algoritmy mozem napisat do SSL_OP_CIPHER_SERVER_PREFERENCE ?

Nerozumim ? SSL_OP_CIPHER_SERVER_PREFERENCE je option. Do nej se nic 
(zadne algoritmy) nepisou. Ty ho mas uvedeny, ergo ho mas "zapnuty".

Nechtel ses spis optat jake optiony muzes napsat do 
ServerSSLOptions/ClientSSLOptions ? No, treba ty, ktery jsou napsany v 
dokumentaci od sendmailu ;-)

Ale v dokumentaci nejsou zdaleka vsechny. Takze pokud chces opravdu 
vsechny (a ja mam urcit epochybnosti, ze chces) musis na stroji, na 
kterem jsou zdrojaky FreeBSD pustit
> grep -R SSL_OP_ /usr/src/contrib/sendmail/src/readcf.c

> Doplnil som teda moj access a sucasne som v pro.mc zmenil
> LOCAL_CONFIG
> O CipherList=HIGH
> O ServerSSLOptions=+SSL_OP_NO_SSLv2 +SSL_OP_CIPHER_SERVER_PREFERENCE
> O ClientSSLOptions=+SSL_OP_NO_SSLv2
> 
> t.j. vyhodil som +SSL_OP_NO_SSLv3 => zrejme som povolil SSLv3.
> BTW, nestacilo by povolit SSLv3 iba v ClientOptions, t.j. ked sendmail prijima? S posielanim nebol problem... 

ClientOptions se pouzivaji tehdy, kdyz je sendmail v roli klienta - tedy 
- odesila. ServerOptions se pouzivaji tehdy, kdyz je sendmail v roli 
serveru - tedy - prijima.

> Zrejme ste ma teda nasmerovali spravne.

Hlavne, kdyz to funguje.

Ale jeste se vratim k jedne vete:
> A prave SSLv3 je kamen urazu - tie servery, ktore mi nedokazu poslat postu sa preukazuju SSLv3 certifikatom...

To je spatne. SSLvX a TLS vX jsou komunikacni protokoly. V ramci 
navazovani SSL (TLS) spojeni muze(!), ale nemusi byt pouzit certifikat 
nejakeho typu. Certifikaty mohou byt RSA nebo ECC, nasli bychom mozna i 
dalsi kriteria co certifikat muze byt, ale nemohou byt SSL ani TLS.

No, ale tohle nedorozumeni na nalezen reseni evidentne nemelo vliv ;-)


Dan




More information about the Users-l mailing list