<!-- review: finished -->

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

# SMTP

O módulo habilita suporte para o protocolo de email SMTP, permitindo que o servidor
faça proxy do tráfego de email de saída entre clientes e servidores de email. Ele
estabelece conexões com servidores SMTP, suporta autenticação segura usando
métodos LOGIN ou PLAIN, fornece criptografia STARTTLS e SSL/TLS, e roteia
requisições de clientes baseado nos resultados de autenticação.

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

## Diretivas

<a id="index-0"></a>

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

### smtp_auth

| [Sintaxe](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)   | `smtp_auth` method ...;   |
|-------------------------------------------------------------------------------------------|---------------------------|
| Padrão                                                                                    | `smtp_auth plain login;`  |
| [Contexto](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)  | mail, server              |

Define métodos permitidos de [autenticação SASL](https://datatracker.ietf.org/doc/html/rfc2554) para clientes SMTP. Os métodos suportados são:

| `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). Para que este método funcione, a senha deve ser armazenada sem criptografia. |
| `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`        | Autenticação não é necessária                                                                                                                |

Métodos de autenticação de texto simples (`AUTH PLAIN` e `AUTH LOGIN`)
estão sempre habilitados, embora se os métodos `plain` e `login` não forem especificados,
`AUTH PLAIN` e `AUTH LOGIN` não serão automaticamente incluídos em
[smtp_capabilities](#m-smtp-capabilities).

<a id="index-1"></a>

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

### smtp_capabilities

| [Sintaxe](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)   | `smtp_capabilities` extension ...;   |
|-------------------------------------------------------------------------------------------|--------------------------------------|
| Padrão                                                                                    | —                                    |
| [Contexto](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)  | mail, server                         |

Define a lista de extensões do protocolo SMTP que é passada para o cliente em resposta ao comando EHLO. Os métodos de autenticação especificados na diretiva [smtp_auth](#m-smtp-auth) e [STARTTLS](https://datatracker.ietf.org/doc/html/rfc3207) são automaticamente adicionados a esta lista dependendo do valor da diretiva [starttls](https://pt.angie.software//angie/docs/configuration/modules/mail/mail_ssl.md#m-starttls).

Faz sentido especificar as extensões suportadas pelo MTA para o qual os clientes são direcionados via proxy (se essas extensões estão relacionadas a comandos usados após autenticação, quando o Angie transparentemente faz proxy da conexão do cliente para o backend).

<a id="index-2"></a>

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

### smtp_client_buffer

| [Sintaxe](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)   | `smtp_client_buffer` size;   |
|-------------------------------------------------------------------------------------------|------------------------------|
| Padrão                                                                                    | `smtp_client_buffer 4k|8k;`  |
| [Contexto](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)  | mail, server                 |

Define o tamanho do buffer usado para ler comandos SMTP. Por padrão, o tamanho do buffer é igual a uma página de memória. Isso é 4K ou 8K, dependendo da plataforma.

<a id="index-3"></a>

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

### smtp_greeting_delay

| [Sintaxe](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)   | `smtp_greeting_delay` time;   |
|-------------------------------------------------------------------------------------------|-------------------------------|
| Padrão                                                                                    | `smtp_greeting_delay 0;`      |
| [Contexto](https://pt.angie.software//angie/docs/configuration/configfile.md#configfile)  | mail, server                  |

Permite definir um atraso antes de enviar uma saudação SMTP para rejeitar clientes que falham em aguardar pela saudação antes de enviar comandos SMTP.
