Nos últimos dias, tentei configurar o Exim4 para lidar com todos os e-mails enviados de um aplicativo da web.
Parece estar funcionando, mas não descobri como codificar o nome do host que será enviado com EHLO? (não quero definir /etc/hostname
)
Encontrei a variável MAIN_HARDCODE_PRIMARY_HOSTNAME
mencionada na configuração, mas não encontrei uma maneira de configurá-la. Essa variável é a maneira mais simples de definir o nome do host ou existe uma maneira melhor de fazer isso?
Abaixo está a instalação/configuração completa. Estou faltando alguma coisa?
Exim version 4.92
Debian Buster 10
Instalar
apt-get install exim4-daemon-light
Configurar Exim4
dpkg-reconfigure exim4-config
Type: internet site
FQDN: smtp.mydomain.com
SMTP listener: (empty)
Mail destinations: (empty)
Domain relay: (empty)
Machine relay: (empty)
DNS queries minimal: No
Delivery method: Maildir
Split conf files: No
Habilite o TLS e gere certificados
printf "MAIN_TLS_ENABLE = true\n" >> /etc/exim4/exim4.conf.localmacros
/usr/share/doc/exim4-base/examples/exim-gencert
verifique o DNS reverso (IP -> smtp.mydomain.com)
https://mxtoolbox.com/ReverseLookup.aspx
Obter IPv6
ip -6 addr | grep inet6 | awk -F '[ \t]+|/' '{print $3}' | grep -v ^::1 | grep -v ^fe80
/etc/hosts
[ipv4] smtp.mydomain.com
[ipv6] smtp.mydomain.com
descomente em '/etc/exim4/exim4.conf.template'
# plain_server:
# driver = plaintext
# public_name = PLAIN
# server_condition = "${if crypteq{$3}{${extract{1}{:}{${lookup{$2}lsearch{CON$
# server_set_id = $2
# server_prompts = :
# .ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS
# server_advertise_condition = ${if eq{$tls_cipher}{}{}{*}}
# .endif
adicionar usuário/pass -> '/etc/exim4/passwd'
/usr/share/doc/exim4-base/examples/exim-adduser
DKIM/SPF
Eu configurei chaves DKIM no servidor e DKIM/SPF no DNS e ambos funcionam