Я работаю с postfix и dovecot, и я нигде не могу найти, как создать эту настройку:
1) разрешить отправку электронных писем извне (telnet), где домен отправителя является доменом локального сервера, а адрес получателя - что угодно (не только локальные получатели)
2) зашифровать протокол
3) создать аутентификацию, чтобы перед отправкой электронной почты на сервер через протокол клиент должен доказать, что ему разрешено отправлять электронные письма с него (ретранслятор?)
По умолчанию postfix запускает SMTP на порту 25, который я могу использовать для отправки электронных писем с любого адреса на любой адрес без какого-либо шифрования или аутентификации. Не думаю, что я этого хочу. Telnet EHLO возвращает
250-PIPELINING
250-SIZE 104857600
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
Затем он также запускает SMTP на порт 587, этот также открыт для всех, но он принимает только электронные письма, у получателей которых есть домены, идентичные домену сервера. Опять нет аутентификации. Telnet EHLO возвращает
250-PIPELINING
250-SIZE 104857600
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
Кроме того, правильно ли я понимаю, что протокол отправки SMTP (587) используется для получения почты от других серверов (и их клиентов) моим клиентам (адреса с моим доменным именем)? Или для такого рода вещей используются только POP и IMAP? Какой из трех протоколов SMTP - 25, 465, 587 я должен использовать для этой настройки?
Ваша конфигурация скручена; вот как должно быть:
SMTP на порту 25
предназначен для получения почты от других серверов локальным получателям без аутентификации. Он должен принимать незашифрованные соединения для совместимости, но разумно разрешить зашифрованные соединения с STARTTLS
всякий раз, когда другой сервер может согласовывать зашифрованное соединение.
подчинение в порту 587
для ваших собственных пользователей почтовые пользовательские агенты (MUA). Это должно потребовать STARTTLS
перед аутентификацией и разрешить отправлять почту только аутентифицированным пользователям. Я рекомендую использовать smtpd_sender_login_maps
чтобы запретить любому пользователю использовать любой адрес отправителя.
Пока SMTP на порту 25
может принимать оба соединения, обычно это ограничено интернет-соединениями потребительского уровня. Кроме того, для этих двух разных сценариев проще иметь отдельные настройки для отдельного порта.
Порт 465
предназначен для TLS-соединений. Работает аналогично подчинение, но соединение начинается напрямую как TLS. Наконец, POP3 и IMAP - это протоколы для чтения почты с использованием MUA, а не для доставки электронной почты.