Tutorial: Crie seu próprio servidor de e-mail temporário descartável

  • Autor Autor moiseseccam
  • Data de início Data de início
Este tópico foi traduzido automaticamente do espanhol. Ver original
Bom tutorial! Isso já é algo mais pro que os temporários de 5 min kkkkk
 
Muito boas a todos. Muitas vezes não queremos introduzir o nosso endereço de e-mail em lugares desconhecidos, mas também não temos o controle das páginas de e-mail temporário, já que todos podem ver a nossa informação. Ou simplesmente você precisa de uma maneira de ter vários e-mails com o mesmo domínio (em especial os que revendem contas de Netflix, Spotify, etc)

Ver o anexo 641933

Nesta oportunidade farei o tutorial para que consiga ter um servidor próprio de e-mail temporário.

Para fins práticos, vou usar um VPS barato da Hetzner com localização nos Estados Unidos e com Ubuntu 20.04
Ver o anexo 641936

Materiais
  • 1 domínio ou subdomínio
  • 1 VPS ou servidor com Linux
Requisitos prévios do domínio
O domínio deve ter os seguintes registros.
  • Um registro A para o IP do servidor
  • Um registro MX para o domínio do e-mail.
No meu caso, estou usando Cloudflare como DNS​

Requisitos do servidor
  • Ter instalado o poderoso Docker
  • Ter instalado docker-compose
  • Ter as seguintes portas abertas: 80, 443, 25, 995, 587, 110, 465

Uma vez que estejamos seguros de ter os requisitos instalados, vamos com a instalação.

Baixamos o seguinte projeto do GitHub: https://github.com/Orange-Cyberdefense/disposable-mailbox-docker
Ver o anexo 641938

Baixamos e subimos para o nosso servidor, depois descompactamos. No meu caso, descompactei em uma pasta chamada tempmail. Para isto usarei o domínio sendlayer.fun que me deram faltando poucos dias para o seu vencimento.
Ver o anexo 641940

Abrimos o arquivo .env para editá-lo. Em FQDN colocamos o nosso domínio, em EMAIL colocamos o nosso e-mail e em LETSENCRYPT yes se quisermos SSL, caso não queira https, deixe assim por padrão em no.
Ver o anexo 641942

Depois vamos ao arquivo /web/www/disposable-mailbox/config.php para editá-lo
Ver o anexo 641943

Onde diz $config['domains'] colocamos o nosso domínio entre aspas dentro do parêntese array

Onde diz $config['mailHostname'] você coloca o mesmo domínio entre aspas. Se quiser que as mensagens sejam mostradas com o HTML formatado, recomendo que comente a última linha colocando // ao iniciar essa linha.
Ver o anexo 641945

Agora que já temos tudo configurado, vamos à pasta inicial onde se encontra o arquivo docker-compose.yml
Executamos o comando docker-compose up -d
Ver o anexo 641946

Esperamos que as dependências sejam baixadas e que sejam instaladas completamente. Quando tiverem terminado o processo e quiserem comprovar que tudo está funcionando, rodem o comando docker ps
Deveriam sair 2 imagens, uma chamada como o nome da pasta mais o sufixo _web e outra com o sufixo _mail. Algo assim como na imagem.
Ver o anexo 641947

E se entrarmos no domínio, já deveríamos ter a nossa web com um endereço aleatório, pronta para receber mensagens.
Ver o anexo 641949

Aqui um exemplo de como as mensagens chegam para mim. Você pode modificar o front ao seu gosto ou mudar as traduções.
Ver o anexo 641951


Se desejar, pode modificar um pouco o código-fonte para que peça senha ao entrar na página e só você possa visualizar o conteúdo dos e-mails, mas isso é outro tópico :v
Ver o anexo 641952

Se quiserem ver o resultado final, deixo os dados

Site: https://sendlayer.fun
Nome de usuário: david
Senha: DavidMorales

Domínio Expirado
Olá amigo, tenho uma dúvida, é possível executar este tutorial sem um VPS, em troca seria usado uma hospedagem?
 
Olá amigo, tenho uma dúvida, é possível executar este tutorial sem um VPS, em troca seria usado uma hospedagem?

Para uma hospedagem com cPanel, você pode usar T-mail

 
Interessante contribuição 🪡
 
Boa informação 🙌🏼
 
Uma solução rápida para sair do sufoco seria editar o index.php e adicionar no início uma autenticação básica hardcodeando o usuário e senha.

PHP:
$valid_passwords = array ("usuario" => "contraseña");
$valid_users = array_keys($valid_passwords);

$user = $_SERVER['PHP_AUTH_USER'];
$pass = $_SERVER['PHP_AUTH_PW'];

$validated = (in_array($user, $valid_users)) && ($pass == $valid_passwords[$user]);

if (!$validated) {
  header('WWW-Authenticate: Basic realm="My Realm"');
  header('HTTP/1.0 401 Unauthorized');
  die ("No estas autorizado Prro");
}
E qual seria a opção com mais dificuldade 😀 ou normal vai estar "seguro"
 
Obrigado pelo tutorial
 

Tópicos similares

Voltar
Topo