<!-- review: finished -->

<a id="adc-mail-smtp"></a>

# SMTP

Модуль обеспечивает поддержку почтового протокола SMTP, позволяя серверу
проксировать исходящий почтовый трафик между клиентами и почтовыми серверами. Он
устанавливает соединения с серверами SMTP, поддерживает безопасную
аутентификацию с помощью методов LOGIN или PLAIN, обеспечивает шифрование через
STARTTLS и SSL/TLS и маршрутизирует клиентские запросы на основе результатов
аутентификации.

<a id="adc-directives-62"></a>

## Директивы

<a id="adc-m-smtp-auth"></a>

### smtp_auth

| [Синтаксис](https://angie.software//angie/docs/configuration/configfile.md#configfile)   | `smtp_auth` метод ...;   |
|------------------------------------------------------------------------------------------|--------------------------|
| По умолчанию                                                                             | `smtp_auth plain login;` |
| [Контекст](https://angie.software//angie/docs/configuration/configfile.md#configfile)    | mail, server             |

Задает разрешенные методы [SASL-аутентификации](https://datatracker.ietf.org/doc/html/rfc2554) SMTP-клиентов. Поддерживаемые методы:

| `plain`       | [AUTH PLAIN](https://datatracker.ietf.org/doc/html/rfc4616)                                                                             |
|---------------|-----------------------------------------------------------------------------------------------------------------------------------------|
| `login`       | [AUTH LOGIN](https://datatracker.ietf.org/doc/html/draft-murchison-sasl-login-00)                                                       |
| `cram-md5`    | [AUTH CRAM-MD5](https://datatracker.ietf.org/doc/html/rfc2195). Для работы этого метода пароль должен храниться в незашифрованном виде. |
| `external`    | [AUTH EXTERNAL](https://datatracker.ietf.org/doc/html/rfc4422)                                                                          |
| `xoauth2`     | [AUTH XOAUTH2](https://developers.google.com/gmail/imap/xoauth2-protocol)                                                               |
| `oauthbearer` | [AUTH OAUTHBEARER](https://datatracker.ietf.org/doc/html/rfc7628)                                                                       |
| `none`        | Аутентификация не требуется                                                                                                             |

Методы аутентификации с передачей пароля открытым текстом (`AUTH PLAIN` и `AUTH LOGIN`) включены всегда, однако если методы `plain` и `login` не указаны, то `AUTH PLAIN` и `AUTH LOGIN` не будут автоматически добавляться в [smtp_capabilities](https://angie.software//angie/docs/configuration/modules/mail/mail_smtp.md#m-smtp-capabilities).

<a id="adc-m-smtp-capabilities"></a>

### smtp_capabilities

| [Синтаксис](https://angie.software//angie/docs/configuration/configfile.md#configfile)   | `smtp_capabilities` расширение ...;   |
|------------------------------------------------------------------------------------------|---------------------------------------|
| По умолчанию                                                                             | —                                     |
| [Контекст](https://angie.software//angie/docs/configuration/configfile.md#configfile)    | mail, server                          |

Позволяет указать список расширений протокола SMTP, выдаваемый клиенту в ответе на команду EHLO. В зависимости от значения директивы [starttls](https://angie.software//angie/docs/configuration/modules/mail/mail_ssl.md#m-starttls) к этому списку автоматически добавляются методы аутентификации, указанные в директиве [smtp_auth](https://angie.software//angie/docs/configuration/modules/mail/mail_smtp.md#m-smtp-auth), и [STARTTLS](https://datatracker.ietf.org/doc/html/rfc3207).

В данной директиве имеет смысл указать расширения, поддерживаемые MTA, на который проксируются клиенты (если эти расширения относятся к командам, используемым после аутентификации, когда Angie прозрачно проксирует подключение клиента на бэкенд).

<a id="adc-m-smtp-client-buffer"></a>

### smtp_client_buffer

| [Синтаксис](https://angie.software//angie/docs/configuration/configfile.md#configfile)   | `smtp_client_buffer` размер;   |
|------------------------------------------------------------------------------------------|--------------------------------|
| По умолчанию                                                                             | `smtp_client_buffer 4k|8k;`    |
| [Контекст](https://angie.software//angie/docs/configuration/configfile.md#configfile)    | mail, server                   |

Задает размер буфера для чтения SMTP-команд. По умолчанию размер одного буфера равен размеру страницы. В зависимости от платформы это или 4K, или 8K.

<a id="adc-m-smtp-greeting-delay"></a>

### smtp_greeting_delay

| [Синтаксис](https://angie.software//angie/docs/configuration/configfile.md#configfile)   | `smtp_greeting_delay` размер;   |
|------------------------------------------------------------------------------------------|---------------------------------|
| По умолчанию                                                                             | `smtp_greeting_delay 0;`        |
| [Контекст](https://angie.software//angie/docs/configuration/configfile.md#configfile)    | mail, server                    |

Позволяет задать задержку перед отправкой SMTP-приветствия, чтобы отклонить клиентов, не дожидающихся приветствия до начала отправки SMTP-команд.
