Instalar sSMTP com Mailtrap para desenvolvimento de aplicativos da Web no Ubuntu 16.04

Você está aqui:
Tempo estimado de leitura: 3 min

Neste tutorial, você aprenderá a instalar o sSMTP , um simples servidor de encaminhamento.

Mailtrap.io oferece um servidor de email falso para desenvolvedores. Use-o para enviar relatórios ou emails durante a fase de desenvolvimento para endereços reais, mas interceptá-los no Mailtrap.io (eles nunca são entregues ao destinatário final) e ver imediatamente como o seu email HTML é renderizado ou como um novo botão CTO se destaca.

Ao integrar o sSMTP e o Mailtrap, o seu VPS de Desenvolvimento do Ubuntu pode usar o mesmo servidor de envio de e-mail para propósitos gerais de envio, como o relatório de conclusão de trabalhos do cron.

Dessa forma, você pode testar seu aplicativo com endereços de e-mail reais e ter uma ideia de como ele se comporta no lado do cliente, tudo sem sobrecarregar as contas de e-mail pessoais ou de seus colegas de trabalho.

Pré-requisitos

  • Site & Site  VPS com o Ubuntu 16.04 instalado e atualizado.
  • Mailtrap.io conta.
  • Um usuário sudo não-root .
  • Editor de texto de sua escolha, vamos usar nano.
  • Backup ou um instantâneo da sua instalação atual.

Procedimento de instalação

Faça login no seu VPS como um usuário comum. Torne-se um administrador emitindo o seguinte.

sudo su

Em seguida, confirme com sua senha. Instale o pacote sSMTP para o lado do servidor com o mutt como o cliente de email para fins de teste.

apt install ssmtp mutt

Configuração

Agora você precisa fazer com que funcione com sua mailtrapconta.

Você precisará de suas credenciais e nomes de servidores. No nosso caso, o servidor está smtp.mailtrap.iocom porta 2525.

Existem dois arquivos que estamos editando. Primeiro, enquanto ainda estiver logado como root, edite o arquivo de configuração.

nano /etc/ssmtp/ssmtp.conf

Por padrão, parece o seguinte texto.

# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=postmaster

# The place where the mail goes. The actual machine name is required no
# MX records are consulted. Commonly mailhosts are named mail.domain.com
mailhub=mail

# Where will the mail seem to come from?
#rewriteDomain=

# The full hostname
hostname=example.com

# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
#FromLineOverride=YES

Nesse ponto, você pode editar as entradas para corresponder aos seus próprios valores ou apenas substituir todo o conteúdo por suas informações específicas. As entradas capitalizadas contêm seus dados reais. [email protected]é o email do qual você deseja enviar os emails. MAILTRAP_USERNAMEMAILTRAP_PASSWORDsão gerados para você no Mailtrap.io. Ambos são longos e aleatórios. Pesquise na sua caixa de entrada do Mailtrap em SMTP Settings.

[email protected]
mailhub=smtp.mailtrap.io:2525
AuthUser=MAILTRAP_USERNAME
AuthPass=MAILRTRAP_PASSWORD
FromLineOverride=Yes

Salve o arquivo. Com nano pressione ” Ctrl-X” e confirme com ” Y“.

O segundo arquivo que precisa ser editado é para mapear contas de usuários locais para endereços de e-mail externos, invertendo o aliasing. Traga o arquivo para cima.

nano /etc/ssmtp/revaliases

Adicione suas entradas ao final para que fique parecido com este texto.

# sSMTP aliases
#
# Format:       local_account:outgoing_address:mailhub
#
# Example: root:[email protected]:mailhub.your.domain[:port]
# where [:port] is an optional port number that defaults to 25.
root:[email protected]:smtp.mailtrap.io:2525
username:[email protected]:smtp.mailtrap.io:2525

Essencialmente, o sistema deve enviar todos os emails da conta local rootcomo usuário de email [email protected]através do mailtrapservidor. Digite quantos usuários você precisar, cada um em sua própria linha. Se você só precisa rootenviar mensagens, apenas omita outras linhas. Você pode voltar mais tarde e adicionar usuários conforme necessário.

Salve o arquivo. Com nano pressione ” Ctrl-X” e confirme com ” Y“.

Você está feito. Você pode querer vê-lo em ação, enviando-se um e-mail. Para fazer isso, crie sua mensagem e envie-a.

echo "This is the body" | mutt -s "Hello World" [email protected]

Entre na sua conta Mailtrap e verifique sua caixa de entrada de demonstração. O email deve estar esperando lá já.

Conclusão

Finalmente, mude sua sessão de terminal de rootvolta para o usuário normal.

exit

Opcionalmente, adicione [email protected]ao seu crontab. Para fazer um teste rápido, digamos, verificando as subpastas em sua /homepasta a cada minuto, edite o crontab.

crontab -e

Escolha o seu editor, se necessário, e adicione / edite essas linhas no final, para que se pareça com o texto a seguir.

# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command
[email protected]
* * * * * ls /home

Isso é executado a ls /homecada minuto e, como há uma MAILTOentrada adicionada, envia a resposta para esse endereço. Você pode aprender mais sobre tabelas crontab aqui .

Salve-o na saída. Espere um email no Mailtrap a cada minuto.

Esse artigo foi útil?
Não Gostei 0
Visualizações: 94

Ainda não Têm uma Conta?

Então Cadastre-se

Nome de Usuário*
E-mail*
Senha*
Confirmar Senha*

Já têm Uma Conta? Click Aqui.

Já tem uma Conta?

Ainda não tem Conta?