Назад | Перейти на главную страницу

Тестируете SMTP-сервер с SSL?

Я хочу быть уверен, что соединение SSL / TLS действительно выполняется с моим SMTP-сервером через порт 465. (Сервер работает на Ubuntu 14.04)

С помощью:-

openssl s_client -connect example.co.uk:465

Я получаю ответы, показанные ниже ...

Обратите внимание, я получаю сообщение: -

«Проверить код возврата: 20 (невозможно получить сертификат местного эмитента)»

Тем не менее, я могу продолжить диалог с EHLO и AUTH LOGIN.

Означает ли это, что я "не" нахожусь в безопасном соединении и продолжаю пользоваться незашифрованным?

Спасибо, Джон

CONNECTED(00000003)
---
Certificate chain
 0 s:/CN=example.co.uk
   i:/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
 1 s:/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
   i:/O=Digital Signature Trust Co./CN=DST Root CA X3
---
Server certificate
-----BEGIN CERTIFICATE-----
<removed for clarity>
-----END CERTIFICATE-----
subject=/CN=example.co.uk
issuer=/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
---
No client certificate CA names sent
---
SSL handshake has read 3050 bytes and written 509 bytes
---
New, TLSv1/SSLv3, Cipher is ECDHE-RSA-DES-CBC3-SHA
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : ECDHE-RSA-DES-CBC3-SHA
    Session-ID: 5728D30BFCCB912A3DEC177610B5CF260F35B9E0F2E6F8E51FC8B59B80E377FD
    Session-ID-ctx: 
    Master-Key: 2E2B2E3A9AD05E4F8DF346C3E0C017ED2E8203D8C8391391F8F0042065FE7688DA8D836B5C31E3A5F9C77E8353CFA10C
    Key-Arg   : None
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time: 1462293259
    Timeout   : 300 (sec)
    Verify return code: 20 (unable to get local issuer certificate)
---
220 example.co.uk - Xeams SMTP server; Version: 4.9 - build: 5819; 5/3/16 5:34 PM
250-april.example.co.uk. Please to meet you
250-SIZE 20971520
250-AUTH LOGIN
250-AUTH=LOGIN
250 OK
---
220 example.co.uk - Xeams SMTP server; Version: 4.9 - build: 5819; 5/3/16 5:37 PM
EHLO example.co.uk
250-april.example.co.uk. Please to meet you
250-SIZE 20971520
250-AUTH LOGIN
250-AUTH=LOGIN
250 OK
AUTH LOGIN
334 VXNlcm5hbWU6

Он зашифрован, но не аутентифицирован.

Означает ли это, что я "не" нахожусь в безопасном соединении и продолжаю пользоваться незашифрованным?

Нет, это нормально зашифровано. Но это не подтверждено. Итак, хотя мы знаем, что у нас есть ЗАШИФРОВАННАЯ беседа, мы не знаем, С КОГО.

Это показывает, что соединение зашифровано:

New, TLSv1/SSLv3, Cipher is ECDHE-RSA-DES-CBC3-SHA

Попробуйте testssl.sh

Ты используешь s_client без указания пути к доверенным центрам сертификации. И OpenSSL больше не доверяет никаким центрам сертификации по умолчанию. я считать когда-то это было так, но затем остановилось 5+ лет назад. И с тех пор эта ошибка «невозможно найти локального эмитента» - это то, что вы получаете практически при каждом подключении.

Но при этом сказано: просто идите прямо к чему-то лучшему и специально разработанному для тестирования и оценки соединений SSL / TLS: http://testssl.sh/.

Это хорошая оболочка для OpenSSL.

Вы также можете попробовать это для проверки зашифрованного SMTP: http://checktls.com/, https://www.htbridge.com/ssl/.

вывод вашего вопроса, предположите, что вы используете SSL для этой связи.

Вывод без использования SSL будет выглядеть так:

$ openssl s_client -connect alexus.biz:80
CONNECTED(00000003)
139684765820832:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:s23_clnt.c:769:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 247 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
---
$