

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Uso da interface SMTP do Amazon SES para enviar e-mail
<a name="send-email-smtp"></a>

Para enviar e-mail de produção pelo Amazon SES, você pode usar a interface SMTP (Simple Mail Transfer Protocol) ou a API do Amazon SES. Para obter mais informações sobre a API do Amazon SES, consulte [Uso da API do Amazon SES para enviar e-mail](send-email-api.md). Esta seção descreve a interface SMTP.

O Amazon SES envia e-mails usando o SMTP, que é o protocolo de e-mail mais comum na Internet. Você pode enviar e-mails por meio do Amazon SES usando diversas linguagens de programação e software habilitados para SMTP para conectar-se à interface SMTP do Amazon SES. Esta seção explica como obter suas credenciais SMTP do Amazon SES, como enviar e-mails usando a interface SMTP e como configurar vários programas de software e servidores de e-mail para usar o Amazon SES para envio de e-mail.

Para obter as soluções para problemas comuns que podem ser encontrados quando você usa o Amazon SES pela interface SMTP, consulte [Problemas de SMTP do Amazon SES](troubleshoot-smtp.md). 

## Requisitos para enviar e-mail por SMTP
<a name="send-email-smtp-requirements"></a>

Para enviar e-mails usando a interface SMTP do Amazon SES, você precisará do seguinte:
+ O endereço do endpoint SMTP. Para obter uma lista de endpoints SMTP do Amazon SES, consulte [Conexão com um endpoint SMTP do Amazon SES](smtp-connect.md).
+ O número de porta da interface SMTP. O número da porta varia de acordo com o método de conexão. Para obter mais informações, consulte [Conexão com um endpoint SMTP do Amazon SES](smtp-connect.md).
+ Nome de usuário e senha do SMTP. As credenciais SMTP são exclusivas de cada região da AWS . Se você planeja usar a interface SMTP para enviar e-mails em várias regiões da AWS , precisa obter credenciais SMTP para cada região.
**Importante**  
Suas credenciais SMTP não são idênticas às suas chaves de AWS acesso ou às credenciais que você usa para entrar no console do Amazon SES. Para obter informações sobre como gerar suas credenciais SMTP, consulte [Obtenção de credenciais SMTP do Amazon SES](smtp-credentials.md).
+ Software cliente que pode se comunicar usando Transport Layer Security (TLS). Para obter mais informações, consulte [Conexão com um endpoint SMTP do Amazon SES](smtp-connect.md).
+ Um endereço de e-mail que você verificou com o Amazon SES. Para obter mais informações, consulte [Identidades verificadas no Amazon SES](verify-addresses-and-domains.md).
+ Aumento de cotas de envio, se você quiser enviar grandes quantidades de e-mail. Para obter mais informações, consulte [Gerenciamento de limites do envio do Amazon SES](manage-sending-quotas.md).

## Métodos para enviar e-mail por SMTP
<a name="send-email-methods"></a>

Você pode enviar e-mail por SMTP usando qualquer um dos seguintes métodos:
+ Para configurar software habilitado para SMTP para enviar e-mail por meio da interface SMTP do Amazon SES, consulte [Envio de e-mails pelo Amazon SES usando pacotes de software](send-email-smtp-software-package.md).
+ Para programar uma aplicação para enviar e-mails por meio do Amazon SES, consulte [Envio de e-mails de modo programático pela interface SMTP do Amazon SES](send-using-smtp-programmatically.md).
+ Para configurar seu servidor de e-mails existente para enviar todos os e-mail de saída pelo Amazon SES, consulte [Integração do Amazon SES com seu servidor de e-mail existente](send-email-smtp-existing-server.md).
+ Para interagir com a interface SMTP do Amazon SES usando a linha de comando, o que pode ser útil para testes, consulte [Teste de sua conexão com a interface SMTP do Amazon SES usando a linha de comando](send-email-smtp-client-command-line.md).

Para obter uma lista de códigos de resposta do SMTP, consulte [Códigos de resposta SMTP retornados pelo Amazon SES](troubleshoot-smtp.md#troubleshoot-smtp-response-codes).

## Informações de e-mail a serem fornecidas
<a name="smtp-parameters"></a>

Quando acessa o Amazon SES pela interface SMTP, sua aplicação de cliente SMTP monta a mensagem, portanto, as informações que você precisa fornecer dependerão da aplicação que estiver usando. No mínimo, a troca de SMTP entre um cliente e um servidor requer o seguinte: 
+ um endereço IP de origem
+ um endereço de destino
+ dados da mensagem

Se você estiver usando a interface SMTP e estiver com o encaminhamento de feedback habilitado, suas devoluções, reclamações e notificações de entrega serão enviadas para o endereço "MAIL FROM". Qualquer endereço "Reply-To" que você especificar não será usado.



# Obtenção de credenciais SMTP do Amazon SES
<a name="smtp-credentials"></a>

Você precisa das credenciais SMTP do Amazon SES para acessar a interface SMTP do SES.

As credenciais que você usa para enviar e-mails pela interface SMTP do SES são exclusivas para cada AWS região. Se usar a interface SMTP do SES para enviar e-mails em mais de uma região, você deve gerar um conjunto de credenciais SMTP para cada região que pretende usar.

Sua senha SMTP é diferente da sua chave de acesso AWS secreta. Para obter mais informações sobre credenciais, consulte [Tipos de credenciais do Amazon SES](send-email-concepts-credentials.md).

**nota**  
Para obter uma lista dos endpoints SMTP disponíveis no momento, consulte [Endpoints SMTP](https://docs.aws.amazon.com/general/latest/gr/ses.html#ses_smtp_endpoints) na *Referência geral da AWS*. 

## Obter as credenciais SMTP do SES usando o console do SES
<a name="smtp-credentials-console"></a>

**Requisito**  
Um usuário do IAM pode criar credenciais SMTP do SES, mas a política de usuário deve conceder a ele permissão para usar o IAM em si, pois as credenciais SMTP do SES são criadas com o uso do IAM. Sua política do IAM deve permitir que você execute as seguintes ações do IAM: `iam:ListUsers`, `iam:CreateUser`, `iam:CreateAccessKey` e `iam:PutUserPolicy`. Se você tentar criar credenciais SES SMTP usando o console e seu usuário do IAM não tiver essas permissões, você verá um erro informando que sua conta *“não está autorizada a realizar iam: ListUsers*”.

**Importante**  
As ações do IAM mencionadas acima têm o nível de acesso [Gerenciamento de permissões](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_understand-policy-summary-access-level-summaries.html#access_policies_access-level), que é o nível mais alto do IAM, pois possibilita conceder ou modificar permissões de recursos no serviço. Portanto, para melhorar a segurança da sua AWS conta, é altamente recomendável que você restrinja ou monitore regularmente essas políticas que incluem a classificação do nível de acesso ao gerenciamento de permissões.

**Para criar suas credenciais SMTP**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon SES em [https://console.aws.amazon.com/ses/](https://console.aws.amazon.com/ses/).

1. Selecione **SMTP settings** (Configurações de SMTP) no painel de navegação à esquerda. Isso abrirá a página **Simple Mail Transfer Protocol (SMTP) settings** [Configurações de SMTP (Simple Mail Transfer Protocol)].

1. Selecione **Create SMTP Credentials** (Criar credenciais de SMTP) no canto superior direito. Isso abrirá o console do IAM.

1. (Opcional) Se você precisar visualizar, editar ou excluir usuários de SMTP que já criou, selecione **Manage my existing SMTP credentials** (Gerenciar minhas credenciais SMTP existentes) no canto inferior direito. Isso abrirá o console do IAM. Os detalhes do gerenciamento de credenciais de SMTP são fornecidos seguindo esses procedimentos.

1. Para **Criar usuário para SMTP**, digite um nome para seu usuário SMTP no campo **Nome de usuário**. Como alternativa, você pode usar o valor padrão que é fornecido nesse campo. Ao terminar, escolha **Criar usuário** no canto inferior direito.

1. Selecione **Mostrar** em *Senha SMTP*: as credenciais SMTP são mostradas na tela.

1. Baixe essas credenciais escolhendo **Baixar arquivo .csv** ou copie e armazene-as em local seguro, porque você não poderá visualizar nem salvar as credenciais depois que fechar essa caixa de diálogo.

1. Escolha **Retornar ao console do SES**.

É possível exibir uma lista de credenciais SMTP que você criou usando esse procedimento no console do IAM em **Access management** (Gerenciamento de acesso) e escolhendo **Users** (Usuários). Depois, use a barra de pesquisa para localizar todos os usuários aos quais você atribuiu credenciais SMTP.

Também é possível usar o console do IAM para excluir usuários SMTP existentes. Para saber mais sobre como excluir usuários, consulte [Gerenciar usuários do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_manage.html) no *Guia de conceitos básicos do IAM*.

Se pretender alterar a senha SMTP, exclua o usuário SMTP existente no console do IAM. Depois, para gerar um novo conjunto de credenciais SMTP, realize os procedimentos anteriores.

## Obtendo credenciais SES SMTP convertendo credenciais existentes AWS
<a name="smtp-credentials-convert"></a>

Se você tiver um usuário configurado usando a interface do IAM, poderá derivar as credenciais SES SMTP do usuário a partir de suas credenciais. AWS 

**Importante**  
Não use AWS credenciais temporárias para derivar credenciais SMTP. A interface SMTP do SES não é compatível com credenciais SMTP que tenham sido geradas com base nas credenciais de segurança temporárias. 

**Para que o usuário do IAM possa enviar e-mails usando a interface SMTP do SES**

1. Derive as credenciais SMTP do usuário a partir de suas AWS credenciais usando o algoritmo fornecido nesta seção seguindo estes procedimentos.

   Como você está começando com AWS as credenciais, o nome de usuário SMTP é o mesmo que o ID da chave de AWS acesso, então você só precisa gerar a senha SMTP.

1. Faça login no Console de gerenciamento da AWS e abra o console do IAM em [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Em **Gerenciamento de acesso**, escolha **Políticas** e, em seguida, **Criar política**.

1. No **Editor de políticas**, selecione **JSON** e remova qualquer código de exemplo no editor.

1. Cole a seguinte política de permissões no editor:

------
#### [ JSON ]

****  

   ```
   {
   "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
   "Effect": "Allow",
               "Action": "ses:SendRawEmail",
               "Resource": "*"
           }
       ]
   }
   ```

------

1. Selecione **Avançar**, insira `AmazonSesSendingAccess` no campo **Nome da política** e selecione **Criar política**.

1. Em **Gerenciamento de acesso**, escolha **Grupos de usuários** e, em seguida, **Criar grupo**.

1. Insira `AWSSESSendingGroupDoNotRename` no campo **Nome do grupo de usuários**.

1. Adicione usuários SMTP ao grupo selecionando-os na tabela **Adicionar usuários ao grupo**.

1. Anexe a política `AmazonSesSendingAccess` criada anteriormente selecionando-a na tabela **Anexar políticas de permissões** e selecionando **Criar grupo de usuários**.

Para obter mais informações sobre como usar o SES com o IAM, consulte [Gerenciamento de identidade e acesso no Amazon SES](control-user-access.md).

**nota**  
Embora você possa gerar credenciais SMTP do SES para qualquer usuário do IAM, recomendamos criar um usuário do IAM separado ao gerar suas credenciais SMTP. Para obter mais informações sobre por que é uma prática recomendada criar usuários para fins específicos, consulte [Melhores práticas do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/IAMBestPractices.html).

O pseudocódigo a seguir mostra o algoritmo que converte uma chave de acesso AWS secreta em uma senha SES SMTP.

```
 1. // Modify this variable to include your AWS secret access key
 2. key = "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY";
 3.             
 4. // Modify this variable to refer to the AWS Region that you want to use to send email.
 5. region = "us-west-2";
 6.             
 7. // The values of the following variables should always stay the same.
 8. date = "11111111";
 9. service = "ses";
10. terminal = "aws4_request";
11. message = "SendRawEmail";
12. version = 0x04;
13. 
14. kDate = HmacSha256(date, "AWS4" + key);
15. kRegion = HmacSha256(region, kDate);
16. kService = HmacSha256(service, kRegion);
17. kTerminal = HmacSha256(terminal, kService);
18. kMessage = HmacSha256(message, kTerminal);
19. signatureAndVersion = Concatenate(version, kMessage);
20. smtpPassword = Base64(signatureAndVersion);
```

Algumas linguagens de programação incluem bibliotecas que você pode usar para converter uma chave de acesso secreta do IAM em uma senha SMTP. Esta seção inclui um exemplo de código que você pode usar para converter uma chave de acesso AWS secreta em uma senha SES SMTP usando Python.

**nota**  
O exemplo a seguir usa **f-strings** que foram introduzidos no Python 3.6; se estiver usando uma versão mais antiga, elas não funcionarão.
No exemplo a seguir, a lista de SMTP\$1REGIONS é apenas um exemplo. Sua lista real de regiões pode ser menor ou maior, dependendo das regiões em que você planeja enviar e-mails, pois você precisará de credenciais SMTP para cada Região da AWS.

------
#### [ Python ]

```
#!/usr/bin/env python3

import hmac
import hashlib
import base64
import argparse

SMTP_REGIONS = [
    "us-east-2",  # US East (Ohio)
    "us-east-1",  # US East (N. Virginia)
    "us-west-2",  # US West (Oregon)
    "ap-south-1",  # Asia Pacific (Mumbai)
    "ap-northeast-2",  # Asia Pacific (Seoul)
    "ap-southeast-1",  # Asia Pacific (Singapore)
    "ap-southeast-2",  # Asia Pacific (Sydney)
    "ap-northeast-1",  # Asia Pacific (Tokyo)
    "ca-central-1",  # Canada (Central)
    "eu-central-1",  # Europe (Frankfurt)
    "eu-west-1",  # Europe (Ireland)
    "eu-west-2",  # Europe (London)
    "eu-south-1",  # Europe (Milan)
    "eu-north-1",  # Europe (Stockholm)
    "sa-east-1",  # South America (Sao Paulo)
    "us-gov-west-1",  # AWS GovCloud (US)
    "us-gov-east-1",  # AWS GovCloud (US)
]

# These values are required to calculate the signature. Do not change them.
DATE = "11111111"
SERVICE = "ses"
MESSAGE = "SendRawEmail"
TERMINAL = "aws4_request"
VERSION = 0x04


def sign(key, msg):
    return hmac.new(key, msg.encode("utf-8"), hashlib.sha256).digest()


def calculate_key(secret_access_key, region):
    if region not in SMTP_REGIONS:
        raise ValueError(f"The {region} Region doesn't have an SMTP endpoint.")

    signature = sign(("AWS4" + secret_access_key).encode("utf-8"), DATE)
    signature = sign(signature, region)
    signature = sign(signature, SERVICE)
    signature = sign(signature, TERMINAL)
    signature = sign(signature, MESSAGE)
    signature_and_version = bytes([VERSION]) + signature
    smtp_password = base64.b64encode(signature_and_version)
    return smtp_password.decode("utf-8")


def main():
    parser = argparse.ArgumentParser(
        description="Convert a Secret Access Key to an SMTP password."
    )
    parser.add_argument("secret", help="The Secret Access Key to convert.")
    parser.add_argument(
        "region",
        help="The AWS Region where the SMTP password will be used.",
        choices=SMTP_REGIONS,
    )
    args = parser.parse_args()
    print(calculate_key(args.secret, args.region))


if __name__ == "__main__":
    main()
```

Para obter sua senha SMTP usando esse script, salve o código anterior como `smtp_credentials_generate.py`. Depois, na linha de comando, execute o seguinte comando:

```
python path/to/smtp_credentials_generate.py wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY us-east-1
```

No comando anterior, faça o seguinte:
+ *path/to/*Substitua pelo caminho até o local onde você salvou`smtp_credentials_generate.py`.
+ Substitua *wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY* pela chave de acesso secreta que você deseja converter em uma senha SMTP.
+ *us-east-1*Substitua pela AWS região na qual você deseja usar as credenciais SMTP.

Quando esse script é executado com êxito, a única saída é sua senha SMTP.

------

## Migração de um usuário SMTP de uma política em linha existente para uma política de grupo (recomendação de segurança)
<a name="migrate-inline-policy-to-group"></a>

**Importante**  
Se você criou as credenciais SMTP do SES antes de 6 de setembro de 2024, uma política em linha e uma tag foram anexadas ao seu usuário SMTP. O SES está se afastando das políticas em linha e incentiva você a fazer o mesmo como recomendação de segurança.

Antes de migrar um usuário SMTP de uma política em linha existente para uma política de grupo, você deve primeiro criar um grupo de usuários do IAM com a política de permissões do SES para substituir a política em linha. Se você já criou esse grupo de usuários do IAM ou se ele foi criado automaticamente para as credenciais SMTP criadas a partir de 6 de setembro de 2024, poderá pular diretamente para a *etapa 10* nos procedimentos a seguir.

**Para migrar de uma política em linha existente para um grupo gerenciado**

1. Faça login no Console de gerenciamento da AWS e abra o console do IAM em [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Em **Gerenciamento de acesso**, escolha **Políticas** e, em seguida, **Criar política**.

1. No **Editor de políticas**, selecione **JSON** e remova qualquer código de exemplo no editor.

1. Cole a seguinte política de permissões no editor:

------
#### [ JSON ]

****  

   ```
   {
   "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
   "Effect": "Allow",
               "Action": "ses:SendRawEmail",
               "Resource": "*"
           }
       ]
   }
   ```

------

1. Selecione **Avançar**, insira `AmazonSesSendingAccess` no campo **Nome da política** e selecione **Criar política**.

1. Em **Gerenciamento de acesso**, escolha **Grupos de usuários** e, em seguida, **Criar grupo**.

1. Insira `AWSSESSendingGroupDoNotRename` no campo **Nome do grupo de usuários**.

1. Adicione usuários SMTP ao grupo selecionando-os na tabela **Adicionar usuários ao grupo**.

1. Anexe a política `AmazonSesSendingAccess` criada anteriormente selecionando-a na tabela **Anexar políticas de permissões** e selecionando **Criar grupo de usuários**.

   Agora que você criou o grupo de usuários do IAM com a política de permissões do SES, poderá migrar um usuário SMTP da política em linha atual para essa política de grupo, conforme explicado nas etapas restantes.

1. Em **Gerenciamento de acesso**, escolha **Usuários** e selecione o usuário SMTP que você deseja migrar.

1. Selecione a guia **Grupos** e escolha **Adicionar usuário a grupos**.

1. Selecione o grupo `AWSSESSendingGroupDoNotRename` e, em seguida, **Adicionar usuário aos grupos**.

1. Selecione a guia **Permissões** e confirme se há duas linhas listadas com `AmazonSesSendingAccess` na coluna **Nome da política**, uma com *Em linha* e outra com *Grupo `AWSSESSendingGroupDoNotRename`* listadas na coluna **Anexado via**.

1. Selecione somente a linha que contém `AmazonSesSendingAccess` na coluna **Nome da política** e *Em linha* na coluna **Anexado via**, selecione **Remover** e confirme com **Remover política**.

   Verifique se a linha com *Grupo `AWSSESSendingGroupDoNotRename`* na coluna **Anexado via** permanece.

1. Selecione a guia **Tags** e, em seguida, **Gerenciar tags**.

1. Selecione **Remover** ao lado da linha que contém *InvokedBy*as colunas **Chave** e *SESConsole***Valor**, seguidas de **Salvar alterações**.

**Importante**  
A política `AmazonSesSendingAccess` (como política em linha, de grupo ou ambas) deve permanecer anexada ao usuário SMTP para garantir que o envio não seja afetado. Remova a política em linha somente depois que a política de grupo for anexada ao seu usuário. 

# Conexão com um endpoint SMTP do Amazon SES
<a name="smtp-connect"></a>

Para enviar e-mail usando a interface SMTP do Amazon SES, você conecta com um endpoint SMTP. Para obter uma lista completa dos endpoints SMTP do Amazon SES, consulte [Endpoints e cotas do Amazon Simple Email Service](https://docs.aws.amazon.com/general/latest/gr/ses.html) na *Referência geral da AWS*.

O endpoint SMTP do Amazon SES exige que todas as conexões sejam criptografadas usando Transport Layer Security (TLS). (Observe que o TLS normalmente é chamado pelo nome do seu protocolo antecessor, SSL.) O Amazon SES oferece suporte a dois mecanismos para estabelecer conexão criptografada por TLS: STARTTLS e TLS Wrapper. Verifique a documentação do seu software para determinar se ele oferece suporte ao STARTTLS, TLS Wrapper ou ambos.

O Amazon Elastic Compute Cloud (Amazon EC2) limita o tráfego de e-mail pela porta 25 por padrão. Para evitar erros de tempo limite ao enviar e-mails pelo endpoint SMTP do EC2, envie uma [Solicitação para remover limitações de envio de e-mail](https://aws-portal.amazon.com/gp/aws/html-forms-controller/contactus/ec2-email-limit-rdns-request) para remover essa limitação. Como alternativa, é possível enviar e-mails usando uma porta diferente ou usar um [endpoint da Amazon VPC](send-email-set-up-vpc-endpoints.md).

Quanto a problemas de conexão SMTP, consulte [Problemas de SMTP](troubleshoot-smtp.md).

## STARTTLS
<a name="smtp-connect-starttls"></a>

STARTTLS é um meio de atualizar uma conexão não criptografada para uma conexão criptografada. Existem versões do STARTTLS para diversos protocolos; a versão SMTP é definida em [RFC 3207](https://www.ietf.org/rfc/rfc3207.txt).

Para configurar uma conexão STARTTLS, o cliente SMTP se conecta ao endpoint SMTP do Amazon SES nas portas 25, 587 ou 2587, emite um comando EHLO e aguarda o servidor anunciar que é compatível com a extensão SMTP STARTTLS. Em seguida, o cliente emite o comando STARTTLS, iniciando a negociação de TLS. Quando a negociação estiver concluída, o cliente emitirá um comando EHLO sobre a nova conexão criptografada e a sessão SMTP continuará normalmente.

## TLS Wrapper
<a name="smtp-connect-tlswrapper"></a>

O TLS Wrapper (também conhecido como SMTPS ou Handshake Protocol) é um meio de iniciar uma conexão criptografada sem antes estabelecer uma conexão não criptografada. Com o TLS Wrapper, o endpoint SMTP do Amazon SES não faz negociação de TLS: é responsabilidade do cliente se conectar ao endpoint usando TLS e continuar usando TLS por toda a conversa. O TLS Wrapper é um protocolo mais antigo, mas ainda é compatível com muitos clientes.

Para configurar uma conexão com o TLS Wrapper, o cliente SMTP se conecta ao endpoint SMTP do Amazon SES na porta 465 ou 2465. O servidor apresenta o seu certificado, o cliente emite um comando EHLO e a sessão SMTP continua normalmente.

# Envio de e-mails pelo Amazon SES usando pacotes de software
<a name="send-email-smtp-software-package"></a>

Há diversos pacotes de software comerciais e de código aberto que oferecem suporte ao envio de e-mail por SMTP. Veja alguns exemplos:
+ Plataformas de blogs
+ Agregadores RSS
+ Software de gerenciamento de listas
+ Sistemas de fluxo de trabalho

Você pode configurar qualquer software habilitado para SMTP para enviar e-mail por meio da interface SMTP do Amazon SES. Para obter instruções sobre como configurar o SMTP para um determinado pacote de software, consulte a documentação desse software.

O procedimento a seguir mostra como configurar o envio do Amazon SES no JIRA, uma conhecida solução de rastreamento de problemas. Com esta configuração, o JIRA pode notificar os usuários por e-mail sempre que houver uma alteração no status de um problema de software.

**Para configurar o JIRA para enviar e-mail usando o Amazon SES**

1. Usando seu navegador, faça login no JIRA com as credenciais de administrador.

1. Na janela do navegador, escolha **Administration**.

1. No menu **System**, escolha **Mail**.

1. Na página **Mail administration**, escolha **Mail Servers**.

1. Escolha **Configure new SMTP mail server**.

1. No formulário **Add SMTP Mail Server**, preencha os seguintes campos:

   1. **Name** – Um nome descritivo para esse servidor.

   1. **From address (Endereço de origem)**: o endereço de onde o e-mail será enviado. Você deve verificar esse endereço de e-mail com o Amazon SES antes de poder enviar a partir dele. Para obter mais informações sobre verificação, consulte [Identidades verificadas no Amazon SES](verify-addresses-and-domains.md).

   1. **Email prefix** – Uma string que o JIRA acrescenta para cada linha de assunto antes de enviar.

   1. **Protocol** – Escolha **SMTP**.
**nota**  
Se você não puder se conectar ao Amazon SES usando essa configuração, tente **SECURE\$1SMTP**.

   1. **Host Name (Nome do host)**: consulte [Conexão com um endpoint SMTP do Amazon SES](smtp-connect.md) para ver uma lista de endpoints SMTP do Amazon SES. Por exemplo, se você quiser usar o endpoint do Amazon SES na região Oeste dos EUA (Oregon), o nome do host seria *email-smtp.us-west-2.amazonaws.com*.

   1. **SMTP Port (Porta SMTP)**: 25, 587 ou 2587 (para se conectar usando STARTTLS), ou 465 ou 2465 (para se conectar usando TLS Wrapper).

   1. **TLS** – Marque esta caixa.

   1. **User name (Nome do usuário)**: seu nome de usuário SMTP.

   1. **Password** – Sua senha SMTP.

   Você pode ver as configurações para o TLS Wrapper na imagem a seguir.  
![\[Configuração de e-mail SMTP para o JIRA\]](http://docs.aws.amazon.com/pt_br/ses/latest/dg/images/SMTP_jira.png)

1. Escolha **Test Connection (Testar conexão)**. Se o e-mail de teste que o JIRA envia pelo Amazon SES chegar com sucesso, sua configuração estará concluída.

# Envio de e-mails de modo programático pela interface SMTP do Amazon SES
<a name="send-using-smtp-programmatically"></a>

Para enviar um e-mail usando a interface SMTP do Amazon SES, você pode usar uma linguagem de programação, um servidor de e-mail ou uma aplicação habilitada para SMTP. Antes de começar, realize as tarefas em [Configuração do Amazon Simple Email Service](setting-up.md). Você também precisa obter as seguintes informações: 
+ Suas credenciais SMTP do Amazon SES, que permitem a conexão com o endpoint SMTP do Amazon SES. Para obter suas credenciais SMTP do Amazon SES, consulte [Obtenção de credenciais SMTP do Amazon SES](smtp-credentials.md). 
**Importante**  
Suas credenciais SMTP são diferentes das suas AWS credenciais. Para obter mais informações sobre credenciais, consulte [Tipos de credenciais do Amazon SES](send-email-concepts-credentials.md).
+ O endereço do endpoint SMTP. Para obter uma lista de endpoints SMTP do Amazon SES, consulte [Conexão com um endpoint SMTP do Amazon SES](smtp-connect.md).
+ O número da porta da interface SMTP do Amazon SES, que depende do método de conexão. Para obter mais informações, consulte [Conexão com um endpoint SMTP do Amazon SES](smtp-connect.md).

## Exemplos de código
<a name="send-email-smtp-code-examples"></a>

Você pode acessar a interface SMTP do Amazon SES usando uma linguagem de programação habilitada para SMTP. Você fornece o nome do host e o número da porta SMTP do Amazon SES junto com suas credenciais SMTP e, em seguida, use as funções SMTP genéricas da linguagem de programação para enviar o e-mail.

O Amazon Elastic Compute Cloud (Amazon EC2) restringe o tráfego de e-mail pela porta 25 por padrão. Para evitar erros de tempo limite ao enviar e-mails pelo endpoint SMTP do Amazon EC2, você pode solicitar que essas restrições sejam removidas. Para obter mais informações, consulte [Como faço para remover a restrição na porta 25 da minha instância AWS Lambda ou função do Amazon EC2](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-port-25-throttle/)? no Centro de AWS Conhecimento.

Os exemplos de código nesta seção para Java e PHP usam a porta 587 para evitar esse problema. 

**nota**  
Neste tutorial, você enviará um e-mail a si mesmo, para poder conferir se o recebe. Para fazer mais experimentos ou testes de carga, use o simulador de caixa postal do Amazon SES. Os e-mails enviados ao simulador de caixa postal não contam para sua cota de envio nem para suas taxas de devoluções e reclamações. Para obter mais informações, consulte [Uso do simulador de caixa postal manualmente.](send-an-email-from-console.md#send-email-simulator).

**Selecione uma linguagem de programação para visualizar o exemplo dessa linguagem:**

**Atenção**  
O Amazon SES não recomenda o uso de credenciais estáticas. Consulte [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) para saber como melhorar seu procedimento de segurança ao remover credenciais com codificação rígida do código-fonte. Este tutorial é fornecido apenas com a finalidade de testar a interface SMTP do Amazon SES em um ambiente que não seja de produção.

------
#### [ Java ]

Este exemplo usa o [Eclipse IDE](http://www.eclipse.org/) e a [JavaMail API](https://github.com/javaee/javamail/releases) para enviar e-mails pelo Amazon SES usando a interface SMTP.

Antes de realizar o procedimento a seguir, conclua as tarefas de configuração descritas em [Configuração do Amazon Simple Email Service](setting-up.md).

**Para enviar um e-mail usando a interface SMTP do Amazon SES com Java**

1. Em um navegador da Web, acesse a [JavaMail GitHub página](https://github.com/javaee/javamail/releases). Em **Assets**, escolha **javax.mail.jar** para baixar a versão mais recente do. JavaMail
**Importante**  
Este tutorial requer a JavaMail versão 1.5 ou posterior. Esses procedimentos foram testados usando a JavaMail versão 1.6.1.

1. **Em um navegador da web, acesse a [ GitHub página de ativação de Jacarta](https://github.com/eclipse-ee4j/jaf/releases) e, em [Versão final do JavaBeans Activation Framework 1.2.1](https://github.com/eclipse-ee4j/jaf/releases/tag/1.2.1), baixe o jakarta.activation.jar**

1. Crie um projeto no Eclipse realizando as seguintes etapas:

   1. Inicie o Eclipse.

   1. No Eclipse, escolha **File**, **New** e **Java Project**.

   1. Na caixa de diálogo **Create a Java Project**, digite o nome do projeto e escolha **Next.**

   1. Na caixa de diálogo **Java Settings**, escolha a guia **Libraries**.

   1. ****Selecione **Classpath** e adicione os dois arquivos jar externos **javax.mail.jar e jakarta.activation.jar** usando o botão Adicionar externo. JARs****

   1. Escolha **Adicionar externo JARs**.

   1. Navegue até a pasta na qual você baixou JavaMail. Escolha o arquivo `javax.mail.jar` e **Open**.

   1. Na caixa de diálogo **Java Settings**, escolha **Finish**.

1. No Eclipse, na janela **Package Explorer**, expanda seu projeto.

1. No seu projeto, clique com o botão direito do mouse no diretório **src**, escolha **New** e **Class**.

1. Na caixa de diálogo **New Java Class**, no campo **Name**, digite `AmazonSESSample` e escolha **Finish**.

1. Substitua todo o conteúdo do **Amazon SESSample .java** pelo seguinte código:

   ```
     1. import java.util.Properties;
     2. 
     3. import javax.mail.Message;
     4. import javax.mail.Session;
     5. import javax.mail.Transport;
     6. import javax.mail.internet.InternetAddress;
     7. import javax.mail.internet.MimeMessage;
     8. 
     9. public class AmazonSESSample {
    10. 
    11.     // Replace sender@example.com with your "From" address.
    12.     // This address must be verified.
    13.     static final String FROM = "sender@example.com";
    14.     static final String FROMNAME = "Sender Name";
    15.     
    16.     // Replace recipient@example.com with a "To" address. If your account 
    17.     // is still in the sandbox, this address must be verified.
    18.     static final String TO = "recipient@example.com";
    19.     
    20.     // Replace smtp_username with your Amazon SES SMTP user name.
    21.     static final String SMTP_USERNAME = "smtp_username";
    22.       
    23.     // The name of the Configuration Set to use for this message.
    24.     // If you comment out or remove this variable, you will also need to
    25.     // comment out or remove the header below.
    26.     static final String CONFIGSET = "ConfigSet";
    27.     
    28.     // Amazon SES SMTP host name. This example uses the US West (Oregon) region.
    29.     // See https://docs.aws.amazon.com/ses/latest/DeveloperGuide/regions.html#region-endpoints
    30.     // for more information.
    31.     static final String HOST = "email-smtp.us-west-2.amazonaws.com";
    32.     
    33.     // The port you will connect to on the Amazon SES SMTP endpoint. 
    34.     static final int PORT = 587;
    35.     
    36.     static final String SUBJECT = "Amazon SES test (SMTP interface accessed using Java)";
    37.     
    38.     static final String BODY = String.join(
    39.             System.getProperty("line.separator"),
    40.             "<h1>Amazon SES SMTP Email Test</h1>",
    41.             "<p>This email was sent with Amazon SES using the ", 
    42.             "<a href='https://github.com/javaee/javamail'>Javamail Package</a>",
    43.             " for <a href='https://www.java.com'>Java</a>."
    44.         );
    45. 
    46.     public static void main(String[] args) throws Exception {
    47. 
    48.         // Create a Properties object to contain connection configuration information.
    49.         Properties props = System.getProperties();
    50.         props.put("mail.transport.protocol", "smtp");
    51.         props.put("mail.smtp.port", PORT); 
    52.         props.put("mail.smtp.starttls.enable", "true");
    53.         props.put("mail.smtp.auth", "true");
    54. 
    55.         // Create a Session object to represent a mail session with the specified properties. 
    56.         Session session = Session.getDefaultInstance(props);
    57. 
    58.         // Create a message with the specified information. 
    59.         MimeMessage msg = new MimeMessage(session);
    60.         msg.setFrom(new InternetAddress(FROM,FROMNAME));
    61.         msg.setRecipient(Message.RecipientType.TO, new InternetAddress(TO));
    62.         msg.setSubject(SUBJECT);
    63.         msg.setContent(BODY,"text/html");
    64.         
    65.         // Add a configuration set header. Comment or delete the 
    66.         // next line if you are not using a configuration set
    67.         msg.setHeader("X-SES-CONFIGURATION-SET", CONFIGSET);
    68.             
    69.         // Create a transport.
    70.         Transport transport = session.getTransport();
    71. 
    72.         // Get the password 
    73.         String SMTP_PASSWORD = fetchSMTPPasswordFromSecureStorage();
    74.                     
    75.         // Send the message.
    76.         try
    77.         {
    78.             System.out.println("Sending...");
    79.             
    80.             // Connect to Amazon SES using the SMTP username and password you specified above.
    81.             transport.connect(HOST, SMTP_USERNAME, SMTP_PASSWORD);
    82.             
    83.             // Send the email.
    84.             transport.sendMessage(msg, msg.getAllRecipients());
    85.             System.out.println("Email sent!");
    86.         }
    87.         catch (Exception ex) {
    88.             System.out.println("The email was not sent.");
    89.             System.out.println("Error message: " + ex.getMessage());
    90.         }
    91.         finally
    92.         {
    93.             // Close and terminate the connection.
    94.             transport.close();
    95.         }
    96.     }
    97. 
    98.     static String fetchSMTPPasswordFromSecureStorage() {
    99.         /* IMPLEMENT THIS METHOD */
   100.         // For example, you might fetch it from a secure location or AWS Secrets Manager: https://aws.amazon.com/secrets-manager/
   101.     }
   102. }
   ```

1. No **Amazon SESSample .java**, substitua os seguintes endereços de e-mail pelos seus próprios valores:
**Importante**  
Os endereços de e-mail diferenciam maiúsculas de minúsculas. Certifique-se de que os endereços sejam exatamente os mesmos que você verificou.
   + *sender@example.com*— Substitua pelo seu endereço de e-mail “De”. Você deve verificar esse endereço antes de executar esse programa. Para obter mais informações, consulte [Identidades verificadas no Amazon SES](verify-addresses-and-domains.md).
   + *recipient@example.com*— Substitua pelo seu endereço de e-mail “Para”. Se sua conta ainda estiver na sandbox, você precisará verificar esse endereço antes de usá-lo. Para obter mais informações, consulte [Solicitar acesso à produção (sair da sandbox do Amazon SES)](request-production-access.md).

1. Na **Amazon SESSample .java**, substitua o seguinte pelos seus próprios valores:
   + *smtp\$1username*— Substitua por sua credencial de nome de usuário SMTP. Observe que sua credencial de nome de usuário SMTP é uma string de 20 caracteres de letras e números, e não um nome inteligível.
   + *smtp\$1password*— Implemente ``fetchSMTPPasswordFromSecureStorage`` para obter a senha.

1. (Opcional) Se você quiser usar um endpoint SMTP do Amazon SES em Região da AWS outro*email-smtp.us-west-2.amazonaws.com*, altere o valor da variável `HOST` para o endpoint que você deseja usar. Para obter uma lista das regiões onde o Amazon SES está disponível, consulte [Amazon Simple Email Service (Amazon SES)](https://docs.aws.amazon.com/general/latest/gr/rande.html#ses_region) na *Referência geral da AWS*.

1. (Opcional) Se você quiser usar um conjunto de configurações ao enviar esse e-mail, altere o valor da variável *ConfigSet* pelo nome do conjunto de configurações. Para obter mais informações sobre os conjuntos de configurações, consulte [Uso de conjuntos de configurações no Amazon SES](using-configuration-sets.md).

1. Salve **Amazon SESSample .java.**

1. Para criar o projeto, escolha **Project** e, em seguida, escolha **Build Project**. (Se essa opção estiver desativada, você pode ter a criação automática ativada.)

1. Para iniciar o programa e enviar o e-mail, escolha **Run** e **Run** novamente.

1. Revise a saída. Se o e-mail tiver sido enviado com sucesso, o console exibirá *"E-mail enviado\$1"* Caso contrário, ele exibirá uma mensagem de erro.

1. Entre no cliente de e-mail do endereço de destinatário. Você verá a mensagem que enviou.

------
#### [ PHP  ]

Este exemplo usa a PHPMailer classe para enviar e-mails pelo Amazon SES usando a interface SMTP. 

Antes de realizar o procedimento a seguir, você deve concluir as tarefas de configuração descritas em [Configuração do Amazon Simple Email Service](setting-up.md). Além de configurar o Amazon SES, você deve preencher os seguintes pré-requisitos para enviar e-mail com PHP:

**Pré-requisitos:**
+ **Instalar PHP**: o PHP está disponível em [http://php.net/downloads.php](https://php.net/downloads.php). Depois de instalar o PHP, adicione o caminho para o PHP nas suas variáveis de ambiente, de forma que possa executar o PHP a partir de qualquer prompt de comando.
+ **Instale o gerenciador de dependências do Composer** — Depois de instalar o gerenciador de dependências do Composer, você pode baixar e instalar a PHPMailer classe e suas dependências. Para instalar o Composer, siga as instruções de instalação em [https://getcomposer.org/download](https://getcomposer.org/download).
+ **Instale a PHPMailer classe** — Depois de instalar o Composer, execute o seguinte comando para instalar PHPMailer: 

  ```
  path/to/composer require phpmailer/phpmailer
  ```

  No comando anterior, *path/to/* substitua pelo caminho em que você instalou o Composer.

**Para enviar um e-mail usando a interface SMTP do Amazon SES com PHP**

1. Crie um arquivo chamado **amazon-ses-smtp-sample.php.** Abra o arquivo com um editor de texto e cole o seguinte código:

   ```
    1. <?php
    2. 
    3. // Import PHPMailer classes into the global namespace
    4. // These must be at the top of your script, not inside a function
    5. use PHPMailer\PHPMailer\PHPMailer;
    6. use PHPMailer\PHPMailer\Exception;
    7. 
    8. // If necessary, modify the path in the require statement below to refer to the
    9. // location of your Composer autoload.php file.
   10. require 'vendor/autoload.php';
   11. 
   12. // Replace sender@example.com with your "From" address.
   13. // This address must be verified with Amazon SES.
   14. $sender = 'sender@example.com';
   15. $senderName = 'Sender Name';
   16. 
   17. // Replace recipient@example.com with a "To" address. If your account
   18. // is still in the sandbox, this address must be verified.
   19. $recipient = 'recipient@example.com';
   20. 
   21. // Replace smtp_username with your Amazon SES SMTP user name.
   22. $usernameSmtp = 'smtp_username';
   23. 
   24. // Specify a configuration set. If you do not want to use a configuration
   25. // set, comment or remove the next line.
   26. $configurationSet = 'ConfigSet';
   27. 
   28. // If you're using Amazon SES in a region other than US West (Oregon),
   29. // replace email-smtp.us-west-2.amazonaws.com with the Amazon SES SMTP
   30. // endpoint in the appropriate region.
   31. $host = 'email-smtp.us-west-2.amazonaws.com';
   32. $port = 587;
   33. 
   34. // The subject line of the email
   35. $subject = 'Amazon SES test (SMTP interface accessed using PHP)';
   36. 
   37. // The plain-text body of the email
   38. $bodyText =  "Email Test\r\nThis email was sent through the
   39.     Amazon SES SMTP interface using the PHPMailer class.";
   40. 
   41. // The HTML-formatted body of the email
   42. $bodyHtml = '<h1>Email Test</h1>
   43.     <p>This email was sent through the
   44.     <a href="https://aws.amazon.com/ses">Amazon SES</a> SMTP
   45.     interface using the <a href="https://github.com/PHPMailer/PHPMailer">
   46.     PHPMailer</a> class.</p>';
   47. 
   48. $mail = new PHPMailer(true);
   49. 
   50. try {
   51.     // Specify the SMTP settings.
   52.     $mail->isSMTP();
   53.     $mail->setFrom($sender, $senderName);
   54.     $mail->Username   = $usernameSmtp;
   55.     $mail->Password   = fetchSMTPPasswordFromSecureStorage();
   56.     $mail->Host       = $host;
   57.     $mail->Port       = $port;
   58.     $mail->SMTPAuth   = true;
   59.     $mail->SMTPSecure = 'tls';
   60.     $mail->addCustomHeader('X-SES-CONFIGURATION-SET', $configurationSet);
   61. 
   62.     // Specify the message recipients.
   63.     $mail->addAddress($recipient);
   64.     // You can also add CC, BCC, and additional To recipients here.
   65. 
   66.     // Specify the content of the message.
   67.     $mail->isHTML(true);
   68.     $mail->Subject    = $subject;
   69.     $mail->Body       = $bodyHtml;
   70.     $mail->AltBody    = $bodyText;
   71.     $mail->Send();
   72.     echo "Email sent!" , PHP_EOL;
   73. } catch (phpmailerException $e) {
   74.     echo "An error occurred. {$e->errorMessage()}", PHP_EOL; //Catch errors from PHPMailer.
   75. } catch (Exception $e) {
   76.     echo "Email not sent. {$mail->ErrorInfo}", PHP_EOL; //Catch errors from Amazon SES.
   77. }
   78. function fetchSMTPPasswordFromSecureStorage() {
   79. /* IMPLEMENT THIS METHOD */
   80. // For example, you might fetch it from a secure location or AWS Secrets Manager: https://aws.amazon.com/secrets-manager/
   81. }
   82. 
   83. ?>
   ```

1. Em **amazon-ses-smtp-sample.php**, substitua o seguinte pelos seus próprios valores:
   + *sender@example.com*— Substitua por um endereço de e-mail que você tenha verificado com o Amazon SES. Para obter mais informações, consulte [Identidades](verify-addresses-and-domains.md). Os endereços de e-mail no Amazon SES diferenciam maiúsculas de minúsculas. Certifique-se de que o endereço informado seja exatamente o mesmo que você verificou.
   + *recipient@example.com*— Substitua pelo endereço do destinatário. Se sua conta ainda estiver na sandbox, você precisará verificar esse endereço antes de usá-lo. Para obter mais informações, consulte [Solicitar acesso à produção (sair da sandbox do Amazon SES)](request-production-access.md). Certifique-se de que o endereço informado seja exatamente o mesmo que você verificou.
   + *smtp\$1username*— Substitua por sua credencial de nome de usuário SMTP, que você obteve na página de [configurações SMTP](https://console.aws.amazon.com/ses/home?#smtp-settings:) do console do Amazon SES. Essa **não** é igual ao ID de chave de acesso da AWS . Observe que sua credencial de nome de usuário SMTP é uma string de 20 caracteres de letras e números, e não um nome inteligível.
   + *smtp\$1password*— Implemente ``fetchSMTPPasswordFromSecureStorage`` para obter a senha.
   + (Opcional) *ConfigSet* — Se você quiser usar um conjunto de configurações ao enviar esse e-mail, substitua esse valor pelo nome do conjunto de configurações. Para obter mais informações sobre os conjuntos de configurações, consulte [Uso de conjuntos de configurações no Amazon SES](using-configuration-sets.md).
   + (Opcional) *email-smtp.us-west-2.amazonaws.com* — Se você quiser usar um endpoint SMTP do Amazon SES em uma região diferente do Oeste dos EUA (Oregon), substitua-o pelo endpoint SMTP do Amazon SES na região que você deseja usar. Para obter uma lista de endpoints URLs SMTP em Regiões da AWS que o Amazon SES está disponível, consulte [Amazon Simple Email Service (Amazon SES)](https://docs.aws.amazon.com/general/latest/gr/rande.html#ses_region) no. *Referência geral da AWS*

1. Salve **amazon-ses-smtp-sample.php.**

1. Para executar o programa, abra um prompt de comando no mesmo diretório **amazon-ses-smtp-samplede.php** e digite**php amazon-ses-smtp-sample.php**.

1. Revise a saída. Se o e-mail tiver sido enviado com sucesso, o console exibirá *"E-mail enviado\$1"* Caso contrário, ele exibirá uma mensagem de erro.

1. Entre no cliente de e-mail do endereço de destinatário. Você verá a mensagem que enviou.

------

# Integração do Amazon SES com seu servidor de e-mail existente
<a name="send-email-smtp-existing-server"></a>

Se você administrar atualmente seu próprio servidor de e-mails, poderá usar o endpoint SMTP do Amazon SES para enviar todos os e-mails de saída ao Amazon SES. Não há necessidade de modificar as aplicações e clientes de e-mail existentes; a mudança para o Amazon SES será transparente para eles.

Vários agentes de transferência de e-mail (MTAs) oferecem suporte ao envio de e-mails por meio de retransmissores SMTP. Esta seção fornece orientação geral sobre como configurar alguns populares MTAs para enviar e-mails usando a interface SMTP do Amazon SES.

O endpoint SMTP do Amazon SES exige que todas as conexões sejam criptografadas usando Transport Layer Security (TLS).

**Topics**
+ [Integração do Amazon SES com o Postfix](postfix.md)
+ [Integração do Amazon SES com o Sendmail](send-email-sendmail.md)
+ [Integração do Amazon SES com o IIS SMTP do Microsoft Windows Server](send-email-windows-server.md)

# Integração do Amazon SES com o Postfix
<a name="postfix"></a>

Postfix é uma alternativa ao Message Transfer Agent (MTA) do Sendmail. Para obter informações sobre Postfix, acesse [http://www.postfix.org](http://www.postfix.org). Os procedimentos neste tópico funcionarão com Linux, macOS ou Unix.

**nota**  
☻O Postfix é uma aplicação de terceiros e não é desenvolvido nem suportado pela Amazon Web Services. Os procedimentos nesta seção são fornecidos apenas para fins informativos e estão sujeitos a alterações sem aviso prévio.

## Pré-requisitos
<a name="send-email-postfix-prereqs"></a>

Antes de concluir os procedimentos desta seção, você precisa realizar as seguintes tarefas:
+ Desinstale a aplicação Sendmail, se estiver instalada em seu sistema. O procedimento para concluir esta etapa pode variar dependendo de seu sistema operacional.
**Importante**  
As referências a *sendmail* a seguir referem-se ao comando Postfix`sendmail`. Não as confunda com a aplicação Sendmail.
+ Instale o Postfix. O procedimento para concluir esta etapa pode variar dependendo de seu sistema operacional.
+ Instale um pacote de autenticação SASL. O procedimento para concluir esta etapa pode variar dependendo de seu sistema operacional. Por exemplo, se você usa um sistema RedHat baseado, você deve instalar o `cyrus-sasl-plain` pacote. Se usar um sistema Debian ou Ubuntu, deverá instalar o pacote `libsasl2-modules`.
+ Confirme o endereço de e-mail ou domínio que você usará para enviar e-mails. Para obter mais informações, consulte [Criação da identidade de um endereço de e-mail](creating-identities.md#verify-email-addresses-procedure).
+ Se a sua conta ainda estiver no sandbox, você só poderá enviar e-mail para endereços de e-mail verificados. Para obter mais informações, consulte [Solicitar acesso à produção (sair da sandbox do Amazon SES)](request-production-access.md).

## Configuração do Postfix
<a name="send-email-postfix"></a>

Realize os seguintes procedimentos para configurar seu servidor de e-mail para enviar e-mails por meio do Amazon SES usando o Postfix.

**Para configurar o Postfix**

1. Na linha de comando, digite o seguinte comando:

   ```
   sudo postconf -e "relayhost = [email-smtp.us-west-2.amazonaws.com]:587" \
   "smtp_sasl_auth_enable = yes" \
   "smtp_sasl_security_options = noanonymous" \
   "smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd" \
   "smtp_use_tls = yes" \
   "smtp_tls_security_level = secure" \
   "smtp_tls_note_starttls_offer = yes"
   ```
**nota**  
Se você usa o Amazon SES em uma AWS região diferente do Oeste dos EUA (Oregon), *email-smtp.us-west-2.amazonaws.com* substitua o comando anterior pelo endpoint SMTP da região apropriada. Para obter mais informações, consulte [Regiões e o Amazon SES](regions.md).

1. Em um editor de texto, abra o arquivo `/etc/postfix/master.cf`. Procure a seguinte entrada:

   ```
   -o smtp_fallback_relay=
   ```

   Se você encontrar essa entrada, faça um comentário, colocando um caractere `#` (hash) no início da linha. Salve e feche o arquivo.

   Caso contrário, se essa entrada não estiver presente, continue na próxima etapa.

1. Em um editor de texto, abra o arquivo `/etc/postfix/sasl_passwd`. Se o arquivo ainda não existir, crie-o.

1. Adicione a seguinte linha a `/etc/postfix/sasl_passwd`:

   ```
   [email-smtp.us-west-2.amazonaws.com]:587 SMTPUSERNAME:SMTPPASSWORD
   ```
**nota**  
Substitua *SMTPUSERNAME* e *SMTPPASSWORD* por suas credenciais de login SMTP. Suas credenciais de login SMTP não são iguais ao ID da chave de acesso e à chave de acesso secreta da AWS . Para obter mais informações sobre credenciais, consulte [Obtenção de credenciais SMTP do Amazon SES](smtp-credentials.md).  
Se você usa o Amazon SES em uma AWS região diferente do Oeste dos EUA (Oregon), substitua *email-smtp.us-west-2.amazonaws.com* no exemplo anterior pelo endpoint SMTP da região apropriada. Para obter mais informações, consulte [Regiões e o Amazon SES](regions.md).

   Salve e feche `sasl_passwd`.

1. Em um prompt de comando, digite o comando a seguir para criar um arquivo de banco de dados de hashmap que contém suas credenciais SMTP:

   ```
   sudo postmap hash:/etc/postfix/sasl_passwd
   ```

1. (Opcional) Os arquivos `/etc/postfix/sasl_passwd` e `/etc/postfix/sasl_passwd.db` que você criou nas etapas anteriores não são criptografados. Como esses arquivos contêm suas credenciais do SMTP, recomendamos que você modifique a propriedade e as permissões dos arquivos para restringir o acesso a eles. Para restringir o acesso a esses arquivos:

   1. Em um prompt de comando, digite o comando a seguir para alterar a propriedade dos arquivos:

      ```
      sudo chown root:root /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
      ```

   1. Em um prompt de comando, digite o comando a seguir para alterar as permissões dos arquivos de modo que apenas o usuário raiz possa ler ou gravar neles:

      ```
      sudo chmod 0600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
      ```

1. Diga ao Postfix onde encontrar o certificado CA (necessário para verificar o certificado do servidor do Amazon SES). O comando que você usa nesta etapa varia de acordo com o seu sistema operacional.
   + Se você usa o Amazon Linux, o Red Hat Enterprise Linux ou uma distribuição relacionada, digite o comando a seguir: 

     ```
     sudo postconf -e 'smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt'
     ```
   + Se você usa Ubuntu ou uma distribuição relacionada, digite o comando a seguir:

     ```
     sudo postconf -e 'smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt'
     ```
   + Se você usa macOS, pode gerar o certificado a partir do conjunto de chaves do sistema. Para gerar o certificado, digite o comando a seguir na linha de comando:

     ```
     sudo security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | sudo tee /etc/ssl/certs/ca-bundle.crt > /dev/null
     ```

     Depois que você gerar o certificado, digite o comando a seguir:

     ```
     sudo postconf -e 'smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt'
     ```

1. Digite o comando a seguir para iniciar o servidor do Postfix (ou para recarregar os parâmetros de configuração, se o servidor já estiver em execução):

   ```
   sudo postfix start; sudo postfix reload
   ```

1. Envie um e-mail de teste digitando o seguinte em uma linha de comando, pressionando Enter após cada linha. *sender@example.com*Substitua pelo seu endereço de e-mail do remetente. O endereço From (De) precisa ser verificado para uso com o Amazon SES. *recipient@example.com*Substitua pelo endereço de destino. Se sua conta ainda estiver na sandbox, o endereço do destinatário também precisa ser verificado. Por fim, a última linha da mensagem precisa conter um ponto final (.) sem nenhum outro conteúdo.

   ```
   sendmail -f sender@example.com recipient@example.com
   From: Sender Name <sender@example.com>
   Subject: Amazon SES Test                
   This message was sent using Amazon SES.                
   .
   ```

1. Marque a caixa de correio associada ao endereço de destinatário. Se o e-mail não chegar, verifique sua pasta de spam. Se você ainda não conseguir localizar o e-mail, verifique o log de e-mails no sistema que usou para enviar o e-mail (normalmente localizado em `/var/log/maillog`) para obter mais informações.

## Exemplo de uso avançado
<a name="send-email-postfix-advanced"></a>

Este exemplo mostra como enviar um e-mail que usa um [conjunto de configurações](using-configuration-sets.md) e que usa a codificação MIME multipartes para enviar uma versão da mensagem tanto em texto simples quanto em HTML junto com um anexo. Isso também inclui uma [tag de link](faqs-metrics.md#sending-metric-faqs-clicks-q5), que pode ser usada para categorizar eventos de clique. O conteúdo do e-mail é especificado em um arquivo externo, de modo que você não precise digitar manualmente os comandos na sessão do Postfix.

**Para enviar um e-mail MIME multipartes usando o Postfix**

1. Em um editor de texto, crie um novo arquivo chamado `mime-email.txt`.

1. No arquivo de texto, cole o conteúdo a seguir, substituindo os valores em vermelho pelos valores apropriados para a sua conta:

   ```
   X-SES-CONFIGURATION-SET: ConfigSet
   From:Sender Name <sender@example.com>
   Subject:Amazon SES Test
   MIME-Version: 1.0
   Content-Type: multipart/mixed; boundary="YWVhZDFlY2QzMGQ2N2U0YTZmODU"
   
   --YWVhZDFlY2QzMGQ2N2U0YTZmODU
   Content-Type: multipart/alternative; boundary="3NjM0N2QwMTE4MWQ0ZTg2NTYxZQ"
   
   --3NjM0N2QwMTE4MWQ0ZTg2NTYxZQ
   Content-Type: text/plain; charset=UTF-8
   Content-Transfer-Encoding: quoted-printable
   
   Amazon SES Test
   
   This message was sent from Amazon SES using the SMTP interface.
   
   For more information, see:
   http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-smtp.html
   
   --3NjM0N2QwMTE4MWQ0ZTg2NTYxZQ
   Content-Type: text/html; charset=UTF-8
   Content-Transfer-Encoding: quoted-printable
   
   <html>
     <head>
   </head>
     <body>
       <h1>Amazon SES Test</h1>
         <p>This message was sent from Amazon SES using the SMTP interface.</p>
         <p>For more information, see
         <a ses:tags="samplekey0:samplevalue0;samplekey1:samplevalue1;" 
         href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-smtp.html">
         Using the Amazon SES SMTP Interface to Send Email</a> in the <em>Amazon SES
         Developer Guide</em>.</p>
     </body>
   </html>
   --3NjM0N2QwMTE4MWQ0ZTg2NTYxZQ--
   --YWVhZDFlY2QzMGQ2N2U0YTZmODU
   Content-Type: application/octet-stream
   MIME-Version: 1.0
   Content-Transfer-Encoding: base64
   Content-Disposition: attachment; filename="customers.txt"
   
   SUQsRmlyc3ROYW1lLExhc3ROYW1lLENvdW50cnkKMzQ4LEpvaG4sU3RpbGVzLENh
   bmFkYQo5MjM4OSxKaWUsTGl1LENoaW5hCjczNCxTaGlybGV5LFJvZHJpZ3VleixV
   bml0ZWQgU3RhdGVzCjI4OTMsQW5heWEsSXllbmdhcixJbmRpYQ==
   --YWVhZDFlY2QzMGQ2N2U0YTZmODU--
   ```

   Salve e feche o arquivo.

1. Na linha de comando, digite o seguinte comando. *sender@example.com*Substitua pelo seu endereço de e-mail e *recipient@example.com* substitua pelo endereço de e-mail do destinatário.

   ```
   sendmail -f sender@example.com recipient@example.com < mime-email.txt
   ```

   Se o comando for executado com êxito, ele será encerrado sem fornecer nenhuma saída.

1. Verifique o e-mail na sua caixa de entrada. Se a mensagem não tiver sido entregue, verifique o log de mensagens do seu sistema.

# Integração do Amazon SES com o Sendmail
<a name="send-email-sendmail"></a>

O Sendmail foi lançado no início dos anos 1980 e vem ganhando continuamente melhorias. Ele é um agente de transferência de mensagens (MTA) flexível e configurável com uma grande comunidade de usuários. O Sendmail foi adquirido pela Proofpoint em 2013, mas a Proofpoint continua oferecendo uma versão de código aberto do Sendmail. Você pode fazer download da [versão de código aberto do Sendmail](https://www.proofpoint.com/us/open-source-email-solution) no site da Proofpoint ou por meio dos gerenciadores de pacote da maioria das distribuições do Linux.

As instruções nesta seção mostram como configurar o Sendmail para enviar e-mails por meio do Amazon SES. Este procedimento foi testado em um servidor que executa o Ubuntu 18.04.2 LTS.

**nota**  
O Sendmail é uma aplicação de terceiros e não é desenvolvido nem suportado pela Amazon Web Services. Os procedimentos nesta seção são fornecidos apenas para fins informativos e estão sujeitos a alterações sem aviso prévio.

## Pré-requisitos
<a name="send-email-sendmail-prerequisites"></a>

Antes de concluir o procedimento desta seção, você deverá concluir as seguintes etapas:
+ Instalar o pacote do Sendmail no servidor. 
**nota**  
Dependendo da distribuição do sistema operacional que você usa, talvez também seja necessário instalar os seguintes pacotes: `sendmail-cf`, `m4` e `cyrus-sasl-plain`.
+ Verificar uma identidade para usar como seu endereço de remetente. Para obter mais informações, consulte [Criação da identidade de um endereço de e-mail](creating-identities.md#verify-email-addresses-procedure).

  Se sua conta for na sandbox do Amazon SES, você também deve verificar os endereços aos quais envia e-mails. Para obter mais informações, consulte [Solicitar acesso à produção (sair da sandbox do Amazon SES)](request-production-access.md).

Se estiver usando o Amazon SES para enviar e-mails de uma instância do Amazon EC2, você também deve realizar as seguintes etapas:
+ Você pode precisar atribuir um endereço de IP elástico à sua instância do Amazon EC2 para os provedores de e-mail receptores aceitarem seu e-mail. Para obter mais informações, consulte [Endereços IP elásticos do Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) no *Guia do usuário do Amazon EC2*.
+ Por padrão, o Amazon Elastic Compute Cloud (Amazon EC2) restringe o tráfego de e-mail pela porta 25. Para evitar erros de tempo limite ao enviar e-mails pelo endpoint SMTP do Amazon EC2, você pode solicitar que essas restrições sejam removidas. Para obter mais informações, consulte [Como faço para remover a restrição na porta 25 da minha instância AWS Lambda ou função do Amazon EC2](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-port-25-throttle/)? no Centro de AWS Conhecimento.

  Como alternativa, você pode modificar o procedimento nesta seção para usar a porta 587 em vez da porta 25.

## Configurar o Sendmail
<a name="send-email-sendmail-procedure"></a>

Conclua as etapas nesta seção para configurar o Sendmail para enviar e-mail usando o Amazon SES.

**Importante**  
O procedimento nesta seção pressupõe que você queira usar o Amazon SES no Oeste dos EUA (Oregon). Região da AWS Se você quiser usar uma região diferente, substitua todas as instâncias de *email-smtp.us-west-2.amazonaws.com* neste procedimento pelo endpoint SMTP da região desejada. Para obter uma lista de endpoints URLs SMTP em Regiões da AWS que o Amazon SES está disponível, consulte [Amazon Simple Email Service (Amazon SES)](https://docs.aws.amazon.com/general/latest/gr/rande.html#ses_region) no. *Referência geral da AWS*

**Para configurar o Sendmail**

1. Em um editor de arquivo, abra o arquivo `/etc/mail/authinfo`. Se o arquivo não existir, crie-o.

   Adicione a seguinte linha a*/etc/mail/authinfo*:

   ```
   AuthInfo:email-smtp.us-west-2.amazonaws.com "U:root" "I:smtpUsername" "P:smtpPassword" "M:PLAIN"
   ```

   No exemplo anterior, faça as seguintes alterações:
   + *email-smtp.us-west-2.amazonaws.com*Substitua pelo endpoint SMTP do Amazon SES que você deseja usar.
   + *smtpUsername*Substitua pelo seu nome de usuário SMTP do Amazon SES.
   + *smtpPassword*Substitua pela sua senha SMTP do Amazon SES.
**nota**  
Suas credenciais de login SMTP são diferentes da ID da chave de acesso e da chave de AWS acesso secreta. Para obter mais informações sobre como obter as credenciais de login SMTP, consulte [Obtenção de credenciais SMTP do Amazon SES](smtp-credentials.md).

   Quando terminar, salve `authinfo`.

1. Na linha de comando, digite o comando a seguir para gerar o arquivo `/etc/mail/authinfo.db`:

   ```
   sudo sh -c 'makemap hash /etc/mail/authinfo.db < /etc/mail/authinfo'
   ```

1. Na linha de comando, digite o comando a seguir para adicionar o suporte à retransmissão para o endpoint SMTP do Amazon SES.

   ```
   sudo sh -c 'echo "Connect:email-smtp.us-west-2.amazonaws.com RELAY" >> /etc/mail/access'
   ```

   No comando anterior, *email-smtp.us-west-2.amazonaws.com* substitua pelo endereço do endpoint SMTP do Amazon SES que você deseja usar.

1. Na linha de comando, digite o seguinte comando para regenerar*/etc/mail/access.db*:

   ```
   sudo sh -c 'makemap hash /etc/mail/access.db < /etc/mail/access'
   ```

1. Na linha de comando, digite o comando a seguir para criar backups dos arquivos `sendmail.cf` e `sendmail.mc`:

   ```
   sudo sh -c 'cp /etc/mail/sendmail.cf /etc/mail/sendmail_cf.backup && cp /etc/mail/sendmail.mc /etc/mail/sendmail_mc.backup'
   ```

1. Adicione as linhas a seguir ao arquivo*/etc/mail/sendmail.mc* antes de qualquer `MAILER()` definição.

   ```
   define(`SMART_HOST', `email-smtp.us-west-2.amazonaws.com')dnl
   define(`RELAY_MAILER_ARGS', `TCP $h 25')dnl
   define(`confAUTH_MECHANISMS', `LOGIN PLAIN')dnl
   FEATURE(`authinfo', `hash -o /etc/mail/authinfo.db')dnl
   MASQUERADE_AS(`example.com')dnl
   FEATURE(masquerade_envelope)dnl
   FEATURE(masquerade_entire_domain)dnl
   ```

   No texto anterior, faça o seguinte:
   + *email-smtp.us-west-2.amazonaws.com*Substitua pelo endpoint SMTP do Amazon SES que você deseja usar.
   + *example.com*Substitua pelo domínio que você deseja usar para enviar e-mails.

   Ao concluir, salve o arquivo.
**nota**  
O Amazon EC2 restringe as comunicações pela porta 25 por padrão. Se estiver usando o Sendmail em uma instância do instância do Amazon EC2, preencha a [Solicitação para remover limitações de envio de e-mail](https://aws-portal.amazon.com/gp/aws/html-forms-controller/contactus/ec2-email-limit-rdns-request).

1. Na linha de comando, digite o comando a seguir para tornar *sendmail.cf* gravável:

   ```
   sudo chmod 666 /etc/mail/sendmail.cf
   ```

1. Na linha de comando, digite o comando a seguir para gerar novamente *sendmail.cf*:

   ```
   sudo sh -c 'm4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf'
   ```
**nota**  
Se você encontrar erros como "Comando não encontrado" e "Este arquivo ou diretório não existe", verifique se os pacotes `m4` e `sendmail-cf` estão instalados em seu sistema.

1. Na linha de comando, digite o comando a seguir para redefinir as permissões de *sendmail.cf* como somente leitura:

   ```
   sudo chmod 644 /etc/mail/sendmail.cf
   ```

1. Na linha de comando, digite o comando a seguir para reiniciar o Sendmail:

   ```
   sudo /etc/init.d/sendmail restart
   ```

   *Dependendo da versão do Linux ou do Sendmail, se o indicado acima não funcionar, tente fazer o seguinte:*

   ```
   sudo su service sendmail restart
   ```

1. Conclua as etapas a seguir para enviar um e-mail de teste:

   1. Na linha de comando, insira o seguinte comando:

      ```
      /usr/sbin/sendmail -vf sender@example.com recipient@example.com
      ```

      *sender@example.com*Substitua pelo seu endereço de e-mail do remetente. *recipient@example.com*Substitua pelo endereço Para. Quando terminar, pressione Enter.

   1. Insira o conteúdo de mensagem a seguir. Pressione Enter ao final de cada linha.

      ```
      From: sender@example.com
      To: recipient@example.com
      Subject: Amazon SES test email
      
      This is a test message sent from Amazon SES using Sendmail.
      ```

      Quando terminar de inserir o conteúdo do e-mail, pressione Ctrl\$1D para enviá-lo.

1. Verifique o cliente de e-mail do destinatário para o e-mail. Se você não encontrar o e-mail, verifique a pasta de spam. Se você ainda não conseguir localizar o e-mail, verifique o log do Sendmail no servidor de e-mail. O log geralmente está localizado em*/var/log/mail.log* ou*/var/log/maillog*. 

# Integração do Amazon SES com o IIS SMTP do Microsoft Windows Server
<a name="send-email-windows-server"></a>

Você pode configurar o servidor IIS SMTP do Microsoft Windows Server para enviar e-mails pelo Amazon SES. Essas instruções foram escritas usando o Microsoft Windows Server 2022 em uma instância do Amazon EC2. Você pode usar a mesma configuração no Microsoft Windows Server 2016.

**nota**  
O Windows Server é uma aplicação de terceiros e não é desenvolvido nem suportado pela Amazon Web Services. Os procedimentos nesta seção são fornecidos apenas para fins informativos e estão sujeitos a alterações sem aviso prévio.

**Para integrar o servidor IIS SMTP do Microsoft Windows Server com o Amazon SES**

1. Primeiro, configure o Microsoft Windows Server 2022 usando as instruções a seguir.

   1. No [console de gerenciamento do Amazon EC2](https://console.aws.amazon.com/ec2/home), inicialize uma nova instância do Amazon EC2 baseada no Microsoft Windows Server 2022.

   1. Conecte-se à instância e faça login usando o Remote Desktop, seguindo as instruções em [Conceitos básicos das instâncias do Windows do Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2Win_GetStarted.html).

   1. Inicie o Server Manager Dashboard.

   1. Instale a função **Web Server**. Não deixe de incluir **Ferramentas do IIS 10 Management Compatibility** (uma opção da caixa de seleção **Servidor web**).

   1. Instale o recurso **SMTP Server**.

1. Em seguida, configure o serviço IIS SMTP usando as instruções a seguir.

   1. Volte para Server Manager Dashboard.

   1. No menu **Ferramentas**, escolha **Gerenciador dos Serviços de Informações da Internet (IIS) 10.0**.

   1. Clique com o botão direito em **SMTP Virtual Server \$11** e selecione **Properties**.

   1. Na guia **Access**, em **Relay Restrictions**, escolha **Relay**.

   1. Na caixa de diálogo **Relay Restrictions**, escolha **Add**.

   1. Em **Single Computer**, insira **127.0.0.1** para o endereço IP. Você agora concedeu acesso para este servidor transmitir e-mails ao Amazon SES por meio do serviço SMTP IIS.

      Neste procedimento, consideramos que seus e-mails são gerados neste servidor. Se a aplicação que gera o e-mail for executada em um servidor separado, você deve conceder o acesso de transmissão para esse servidor no IIS SMTP.
**nota**  
Para ampliar a transmissão SMTP para sub-redes privadas, para **Relay Restriction**, use **Single Computer** 127.0.0.1 e **Group of Computers** 172.1.1.0 - 255.255.255.0 (na seção de máscara de rede). Para **Connection**, use **Single Computer** 127.0.0.1 e **Group of Computers** 172.1.1.0 - 255.255.255.0 (na seção de máscara de rede).

1. Por fim, configure o servidor para enviar e-mails pelo Amazon SES usando as instruções a seguir.

   1. Volte para a caixa de diálogo **SMTP Virtual Server \$11 Properties** e selecione a guia **Delivery**.

   1. Na guia **Delivery**, escolha **Outbound Security**.

   1. Selecione **Basic Authentication** (Autenticação básica) e, depois, insira suas credenciais SMTP do Amazon SES. Você pode obter essas credenciais do console do Amazon SES usando o procedimento em [Obtenção de credenciais SMTP do Amazon SES](smtp-credentials.md).
**Importante**  
Suas credenciais SMTP não são iguais à ID da chave de AWS acesso e à chave de acesso secreta. Não tente usar suas AWS credenciais para se autenticar no endpoint SMTP. Para obter mais informações sobre credenciais, consulte [Tipos de credenciais do Amazon SES](send-email-concepts-credentials.md).

   1. Verifique se **TLS encryption** está selecionada.

   1. Volte para a guia **Delivery**.

   1. Escolha **Outbound Connections**.

   1. Na caixa de diálogo **Outbound Connections**, verifique se a porta é 25 ou 587. 

   1. Escolha **Advanced (Avançado)**.

   1. Para nome do **Smart host (Host inteligente)**, insira o endpoint do Amazon SES que você usará (por exemplo, *email-smtp.us-west-2.amazonaws.com*). Para obter uma lista de endpoints URLs em Regiões da AWS que o Amazon SES está disponível, consulte [Amazon Simple Email Service (Amazon SES](https://docs.aws.amazon.com/general/latest/gr/rande.html#ses_region)) no. *Referência geral da AWS*

   1. Volte para Server Manager Dashboard.

   1. No Server Manager Dashboard, clique com o botão direito sobre **SMTP Virtual Server \$11** e reinicie o serviço para pegar a nova configuração.

   1. Envie um e-mail por meio deste servidor. Você pode examinar os cabeçalhos da mensagem para confirmar que foi entregue pelo Amazon SES.

# Teste de sua conexão com a interface SMTP do Amazon SES usando a linha de comando
<a name="send-email-smtp-client-command-line"></a>

Você pode usar os métodos descritos nesta seção a partir da linha de comando para testar sua conexão com o endpoint SMTP do Amazon SES, validar suas credenciais SMTP e solucionar problemas de conexão. Esses procedimentos usam ferramentas e bibliotecas que estão incluídas nos sistemas operacionais mais comuns.

Para obter informações adicionais sobre como solucionar problemas de conexão SMTP, consulte [Problemas de SMTP do Amazon SES](troubleshoot-smtp.md).

## Pré-requisitos
<a name="send-email-smtp-client-command-line-prereqs"></a>

Ao conectar-se à interface SMTP do Amazon SES, é necessário fornecer um conjunto de credenciais SMTP. Essas credenciais SMTP são diferentes das suas credenciais padrão AWS . Os dois tipos de credenciais não são intercambiáveis. Para obter mais informações sobre como obter as credenciais de SMTP, consulte [Obtenção de credenciais SMTP do Amazon SES](smtp-credentials.md).

## Como testar sua conexão com a interface SMTP do Amazon SES
<a name="send-email-smtp-client-command-line-testing"></a>

É possível usar a linha de comando para testar sua conexão com a interface SMTP do Amazon SES sem autenticar e sem enviar nenhuma mensagem. Esse procedimento é útil para solucionar problemas básicos de conectividade. Se sua conexão de teste falhar, consulte [Problemas de SMTP](troubleshoot-smtp.md).

Esta seção inclui procedimentos para testar sua conexão usando o OpenSSL (que está incluído na maioria das distribuições Linux, macOS e Unix e também está disponível para Windows) e `Test-NetConnection` o cmdlet PowerShell em (incluído nas versões mais recentes do Windows).

------
#### [ Linux, macOS, or Unix ]

Há duas maneiras de se conectar à interface SMTP do Amazon SES com OpenSSL: usando SSL explícito na porta 587 ou usando SSL implícito na porta 465.

**Como se conectar à interface SMTP usando SSL explícito**
+ Na linha de comando, insira o seguinte comando para se conectar ao servidor SMTP do Amazon SES:

  ```
  openssl s_client -crlf -quiet -starttls smtp -connect email-smtp.us-west-2.amazonaws.com:587
  ```

  No comando anterior, *email-smtp.us-west-2.amazonaws.com* substitua pela URL do endpoint SMTP do Amazon SES para sua região. AWS Para obter mais informações, consulte [Regiões e o Amazon SES](regions.md).

  Se a conexão for bem-sucedida, você verá um resultado semelhante a este:

  ```
  depth=2 C = US, O = Amazon, CN = Amazon Root CA 1
  verify return:1
  depth=1 C = US, O = Amazon, OU = Server CA 1B, CN = Amazon
  verify return:1
  depth=0 CN = email-smtp.us-west-2.amazonaws.com
  verify return:1
  250 Ok
  ```

  A conexão se fecha automaticamente após cerca de 10 segundos de inatividade.

Como alternativa, é possível usar SSL implícito para se conectar à interface SMTP pela porta 465.

**Como conectar-se à interface SMTP usando SSL implícito**
+ Na linha de comando, insira o seguinte comando para se conectar ao servidor SMTP do Amazon SES:

  ```
  openssl s_client -crlf -quiet -connect email-smtp.us-west-2.amazonaws.com:465
  ```

  No comando anterior, *email-smtp.us-west-2.amazonaws.com* substitua pela URL do endpoint SMTP do Amazon SES para sua região. AWS Para obter mais informações, consulte [Regiões e o Amazon SES](regions.md).

  Se a conexão for bem-sucedida, você verá um resultado semelhante a este:

  ```
  depth=2 C = US, O = Amazon, CN = Amazon Root CA 1
  verify return:1
  depth=1 C = US, O = Amazon, OU = Server CA 1B, CN = Amazon
  verify return:1
  depth=0 CN = email-smtp.us-west-2.amazonaws.com
  verify return:1
  220 email-smtp.amazonaws.com ESMTP SimpleEmailService-d-VCSHDP1YZ A1b2C3d4E5f6G7h8I9j0
  ```

  A conexão se fecha automaticamente após cerca de 10 segundos de inatividade.

------
#### [ PowerShell ]

Você pode usar o NetConnection cmdlet [Test-](https://docs.microsoft.com/en-us/powershell/module/nettcpip/test-netconnection) PowerShell para se conectar ao servidor SMTP do Amazon SES.

**nota**  
O cmdlet `Test-NetConnection` pode determinar se o computador pode se conectar ao endpoint SMTP do Amazon SES. No entanto, isso não testa se o computador pode estabelecer uma conexão SSL implícita ou explícita com o endpoint SMTP. Para testar uma conexão SSL, é possível instalar o OpenSSL para Windows para enviar um e-mail de teste.

**Como conectar-se à interface SMTP usando o cmdlet `Test-NetConnection`**
+ Em PowerShell, insira o seguinte comando para se conectar ao servidor SMTP do Amazon SES:

  ```
  Test-NetConnection -Port 587 -ComputerName email-smtp.us-west-2.amazonaws.com
  ```

  No comando anterior, *email-smtp.us-west-2.amazonaws.com* substitua pela URL do endpoint SMTP do Amazon SES da sua AWS região e *587* substitua pelo número da porta. Para obter mais informações sobre endpoints regionais no Amazon SES, consulte [Regiões e o Amazon SES](regions.md).

  Se a conexão foi bem-sucedida, é exibida uma saída semelhante a este exemplo:

  ```
  ComputerName     : email-smtp.us-west-2.amazonaws.com
  RemoteAddress    : 198.51.100.126
  RemotePort       : 587
  InterfaceAlias   : Ethernet
  SourceAddress    : 203.0.113.46
  TcpTestSucceeded : True
  ```

------

## Uso da linha de comando para enviar e-mail usando a interface SMTP do Amazon SES
<a name="send-email-using-openssl"></a>

Também é possível usar a linha de comando para enviar mensagens usando a interface SMTP do Amazon SES. Esse procedimento é útil para testar credenciais SMTP e para testar a capacidade de destinatários específicos receberem mensagens enviadas usando o Amazon SES.

------
#### [ Linux, macOS, or Unix ]

Quando um remetente de e-mail se conecta a um servidor SMTP, o cliente envia um conjunto padrão de solicitações e o servidor responde a cada solicitação com uma resposta padrão. Esta série de solicitações e respostas é chamada de *conversa SMTP*. Quando você se conecta ao servidor SMTP do Amazon SES usando o OpenSSL, o servidor espera que ocorra uma conversa SMTP.

Ao usar o OpenSSL para se conectar à interface SMTP, é necessário codificar suas credenciais SMTP usando a codificação em base64. Esta seção inclui procedimentos para a codificação das credenciais usando base64.

**Para enviar um e-mail da linha de comando usando a interface SMTP**

1. Digite o seguinte na linha de comando e *email-smtp.us-west-2.amazonaws.com* substitua pela URL do endpoint SMTP do Amazon SES para o seu. Região da AWS Para obter mais informações, consulte[Regiões e o Amazon SES](regions.md). :

   ```
    1. #!/bin/bash
    2. 
    3. # Prompt user to provide following information
    4. read -p "Configuration set: " CONFIGSET
    5. read -p "Enter SMTP username: " SMTPUsername
    6. read -p "Enter SMTP password: " SMTPPassword
    7. read -p "Sender email address: " MAILFROM
    8. read -p "Receiver email address: " RCPT
    9. read -p "Email subject: " SUBJECT
   10. read -p "Message to send: " DATA
   11. 
   12. echo
   13. 
   14. # Encode SMTP username and password using base64
   15. EncodedSMTPUsername=$(echo -n "$SMTPUsername" | openssl enc -base64)
   16. EncodedSMTPPassword=$(echo -n "$SMTPPassword" | openssl enc -base64)
   17. 
   18. # Construct the email
   19. Email="EHLO example.com
   20. AUTH LOGIN
   21. $EncodedSMTPUsername
   22. $EncodedSMTPPassword
   23. MAIL FROM: $MAILFROM
   24. RCPT TO: $RCPT
   25. DATA
   26. X-SES-CONFIGURATION-SET: $CONFIGSET
   27. From: $MAILFROM
   28. To: $RCPT
   29. Subject: $SUBJECT
   30. 
   31. $DATA
   32. .
   33. QUIT"
   34. 
   35. echo "$Email" | openssl s_client -crlf -quiet -starttls smtp -connect email-smtp.us-west-2.amazonaws.com:587
   ```

1. No prompt de cada variável, insira seus valores.

1. 
   + Para enviar usando SSL implícito pela porta 465, use:

     ```
     openssl s_client -crlf -quiet -connect email-smtp.us-west-2.amazonaws.com:465
     ```

   Se a mensagem tiver sido aceita pelo Amazon SES, você verá uma saída semelhante ao seguinte exemplo:

   ```
   250 Ok 01010160d7de98d8-21e57d9a-JZho-416c-bbe1-8ebaAexample-000000
   ```

   A sequência de números e texto que se segue a `250 Ok` é o ID de mensagem do e-mail.
**nota**  
A conexão é fechada automaticamente após cerca de 10 segundos de inatividade.

------
#### [ PowerShell ]

Você pode usar o [Net.Mail. SmtpClient](https://docs.microsoft.com/en-us/dotnet/api/system.net.mail.smtpclient?view=netframework-4.8)classe para enviar e-mail usando SSL explícito pela porta 587.

**nota**  
A classe `Net.Mail.SmtpClient` está oficialmente obsoleta e a Microsoft recomenda o uso de bibliotecas de terceiros. Este código destina-se somente para fins de teste e não deve ser usado para cargas de trabalho de produção.

**Para enviar um e-mail PowerShell usando SSL explícito**

1. Em um editor de texto, crie um novo arquivo. Cole o seguinte código no arquivo:

   ```
   function SendEmail($Server, $Port, $Sender, $Recipient, $Subject, $Body) {
       $Credentials = [Net.NetworkCredential](Get-Credential)
   
       $SMTPClient = New-Object Net.Mail.SmtpClient($Server, $Port)
       $SMTPClient.EnableSsl = $true
       $SMTPClient.Credentials = New-Object System.Net.NetworkCredential($Credentials.Username, $Credentials.Password);
   
       try {
           Write-Output "Sending message..."
           $SMTPClient.Send($Sender, $Recipient, $Subject, $Body)
           Write-Output "Message successfully sent to $($Recipient)"
       } catch [System.Exception] {
           Write-Output "An error occurred:"
           Write-Error $_
       }
   }
   
   function SendTestEmail(){
       $Server = "email-smtp.us-west-2.amazonaws.com"
       $Port = 587
   
       $Subject = "Test email sent from Amazon SES"
       $Body = "This message was sent from Amazon SES using PowerShell (explicit SSL, port 587)."
   
       $Sender = "sender@example.com"
       $Recipient = "recipient@example.com"
   
       SendEmail $Server $Port $Sender $Recipient $Subject $Body
   }
   
   SendTestEmail
   ```

   Ao concluir, salve o arquivo como `SendEmail.ps1`.

1. Faça as seguintes alterações no arquivo que você criou na etapa anterior:
   + *sender@example.com*Substitua pelo endereço de e-mail do qual você deseja enviar a mensagem.
   + *recipient@example.com*Substitua pelo endereço de e-mail para o qual você deseja enviar a mensagem.
   + *email-smtp.us-west-2.amazonaws.com*Substitua pela URL do endpoint SMTP do Amazon SES para sua AWS região. Para obter mais informações, consulte [Regiões e o Amazon SES](regions.md).

1. Em PowerShell, digite o seguinte comando:

   ```
   .\path\to\SendEmail.ps1
   ```

   No comando anterior, *path\$1to\$1SendEmail.ps1* substitua pelo caminho para o arquivo que você criou na etapa 1.

1. Quando solicitado, insira o nome de usuário e senha do SMTP.

Como alternativa, você pode usar o [System.Web.Mail. SmtpMail](https://docs.microsoft.com/en-us/dotnet/api/system.web.mail.smtpmail?view=netframework-4.8)classe para enviar e-mail usando SSL implícito pela porta 465.

**nota**  
A classe `System.Web.Mail.SmtpMail` está oficialmente obsoleta e a Microsoft recomenda o uso de bibliotecas de terceiros. Este código destina-se somente para fins de teste e não deve ser usado para cargas de trabalho de produção.

**Para enviar um e-mail PowerShell usando SSL implícito**

1. Em um editor de texto, crie um novo arquivo. Cole o seguinte código no arquivo:

   ```
   [System.Reflection.Assembly]::LoadWithPartialName("System.Web") > $null
   
   function SendEmail($Server, $Port, $Sender, $Recipient, $Subject, $Body) {
       $Credentials = [Net.NetworkCredential](Get-Credential)
   
       $mail = New-Object System.Web.Mail.MailMessage
       $mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", $Server)
       $mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", $Port)
       $mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", $true)
       $mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", $Credentials.UserName)
       $mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", $Credentials.Password)
       $mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout", $timeout / 1000)
       $mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusing", 2)
       $mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", 1)
   
       $mail.From = $Sender
       $mail.To = $Recipient
       $mail.Subject = $Subject
       $mail.Body = $Body
   
       try {
           Write-Output "Sending message..."
           [System.Web.Mail.SmtpMail]::Send($mail)
           Write-Output "Message successfully sent to $($Recipient)"
       } catch [System.Exception] {
           Write-Output "An error occurred:"
           Write-Error $_
       }
   }
   
   function SendTestEmail(){
       $Server = "email-smtp.us-west-2.amazonaws.com"
       $Port = 465
       
       $Subject = "Test email sent from Amazon SES"
       $Body = "This message was sent from Amazon SES using PowerShell (implicit SSL, port 465)."
   
       $Sender = "sender@example.com"
       $Recipient = "recipient@example.com"
   
       SendEmail $Server $Port $Sender $Recipient $Subject $Body
   }
   
   SendTestEmail
   ```

   Ao concluir, salve o arquivo como `SendEmail.ps1`.

1. Faça as seguintes alterações no arquivo que você criou na etapa anterior:
   + *sender@example.com*Substitua pelo endereço de e-mail do qual você deseja enviar a mensagem.
   + *recipient@example.com*Substitua pelo endereço de e-mail para o qual você deseja enviar a mensagem.
   + *email-smtp.us-west-2.amazonaws.com*Substitua pela URL do endpoint SMTP do Amazon SES para sua AWS região. Para obter mais informações, consulte [Regiões e o Amazon SES](regions.md).

1. Em PowerShell, digite o seguinte comando:

   ```
   .\path\to\SendEmail.ps1
   ```

   No comando anterior, *path\$1to\$1SendEmail.ps1* substitua pelo caminho para o arquivo que você criou na etapa 1.

1. Quando solicitado, insira o nome de usuário e senha do SMTP.

------