Como configurar um servidor de email numa Máquina Virtual Starlight™

Para abrir a porta 25 na tua Máquina Virtual (VM), vai a Starlight Manager > escolhe o separador "Mail Bridge" > carrega no botão ‘Adicionar Mail Bridge’.

Depois de definires o registo PTR e ativares a porta 25, podes configurar o teu servidor SMTP preferido. Em baixo estão exemplos para Postfix, Exim e Sendmail. Usa o IP da VM mostrado no teu Starlight Manager e certifica-te de que o teu nome de domínio para o registo PTR corresponde ao domínio do remetente (ex.: mail.example.com).

Instalar e configurar o Postfix

# for Debian/Ubuntu

sudo apt update

sudo apt install postfix mailutils -y



# for Almalinux/Rocky/Cloudlinux/EL

# check RPM-based distros to check

# if Postfix is installed

rpm -qa | grep postfix

# if it is not, run the command below to install Postfix

sudo dnf install postfix



Quando o Postfix estiver instalado, podes iniciar o serviço e garantir que ele arranca após o reinício do servidor:

sudo systemctl start postfix

sudo systemctl enable postfix

Depois, podes configurar o serviço. Todas as opções necessárias para o serviço estão localizadas no diretório /etc/postfix e o ficheiro principal de configuração é /etc/postfix/main.cf

Executa o comando sudo nano /etc/postfix/main.cf para começar a editar o ficheiro principal de configuração e adiciona ou atualiza estas linhas:

inet_interfaces = all

# myhostname declares mail server’s hostname

myhostname = mail.example.com

# mydomain declares the domain that actually handles emails

domain = example.com

# mail_spool_directory declares the directory where mailbox files are placed

mail_spool_directory = /var/mail

myorigin = /etc/mailname

mydestination = $myhostname, localhost.$mydomain, localhost

relayhost =

inet_protocols = all

smtp_banner = $myhostname ESMTP



Reinicia o Postfix para aplicar as alterações:

sudo systemctl restart postfix



Testa o envio de emails:

echo "Test message" | mail -s "Test Email" user@recipient.com

Instalar e configurar o Exim 4

# for Ubuntu/Debian

sudo apt update

sudo apt install exim4 -y



O comando abaixo mostra uma interface de assistente para configurar o software. Permite aos utilizadores decidir se o Exim deve dividir a configuração por vários ficheiros ou guardá-la num só ficheiro:

sudo dpkg-reconfigure exim4-config

Se usares a primeira opção, a configuração será guardada nas subdiretórias /etc/exim4/conf.d. Se escolheres um ficheiro de configuração, este será /etc/exim4/exim4.conf

Quando todas as configurações estiverem feitas, executa systemctl restart exim4para que as alterações tenham efeito.

Edita /etc/exim4/update-exim4.conf.conf para garantir:

# dc_local_interfaces declares your mail service IP (e.g. 203.0.113.10)

dc_local_interfaces='203.0.113.10'

# dc_readhost declares your system mail name

dc_readhost='example.com'

# dc_other_hostnames declares system hostname

dc_other_hostnames='mail.example.com'



Reinicia o Exim para aplicar as alterações:

sudo systemctl restart exim4


Testa a entrega de email executando o comando abaixo:

echo "Mail test" | mail -s "Exim Test" user@recipient.com

Instalar e configurar o Sendmail

# for Ubuntu/Debian

sudo apt update

sudo apt install sendmail sendmail-bin -y

# for Almalinux/Cloudlinux/RHEL

yum install sendmail sendmail-cf mailutils


O ficheiro principal de configuração do Sendmail é /etc/mail/sendmail.cf. Evita editar este ficheiro diretamente. Se precisares de editar a configuração, edita antes o ficheiro /etc/mail/sendmail.mc, faz uma cópia de segurança do ficheiro original e usa uma das alternativas abaixo para gerar um novo ficheiro de configuração:

1) Usa o makefile incluído /etc/mail para criar uma nova configuração:

make all -C /etc/mail/

 

Todos os ficheiros gerados em /etc/mail serão regenerados se necessário.

2) Em alternativa, podes usar o m4processador de macros para criar um novo /etc/mail/sendmail.cf. O m4processador de macros não está instalado por defeito. Antes de o usares para criar /etc/mail/sendmail.cf, instala o pacote m4 como root:

# for Almalinux/Cloudlinux/RHEL

yum install m4


# for Ubuntu/Debian

apt install m4


Os seguintes ficheiros de configuração do Sendmail estão localizados no diretório /etc/mail/:

  • access- especifica que sistemas podem usar o Sendmail para envio de emails

  • domaintable- mapeamento de nomes de domínio

  • local-host-names - aliases para o host do servidor

  • mailertable- instruções que substituem o encaminhamento para domínios específicos

  • virtusertable- especifica uma forma de aliasing específica para domínios, permitindo alojar vários domínios virtuais na máquina.


Em baixo, podes ver exemplos de como os ficheiros de configuração podem ser editados:

# editing the server host aliases:

echo "mail.example.com" > /etc/mail/local-host-names


# binding to Mail IP by editing /etc/mail/sendmail.mc:
DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Addr=203.0.113.10')dnl


# rebuilding the config:
sudo m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf


# testing:

echo "Hello from Sendmail" | mail -s "Sendmail test" user@recipient.com

Vários dos ficheiros de configuração mencionados acima têm de guardar a sua informação em ficheiros de base de dados antes de qualquer alteração ter efeito. Para incluir quaisquer alterações feitas nos ficheiros de configuração, executa o comando makemap hash /etc/mail/<name> < /etc/mail/<name> como root. Aqui, <name> representa o nome da configuração a ser atualizada.

Reinicia o processo Sendmail executando o comando systemctl restart sendmail.

É necessário um email válido