Como configurar um servidor de email completo (Postfix) usando 'Roundcube' (Webmail) no Ubuntu/Debian
Criar um servidor de e-mail em máquinas com Linux pode ser uma das coisas mais essenciais que todo administrador de sistema precisa fazer ao configurar os servidores pela primeira vez, se você não sabe o que isso significa; é simples: se você tiver um site como “example.com ”, poderá criar uma conta de e-mail como “[email protegido] ” para usá-la para enviar/receber e-mails facilmente em vez de usar serviços como Hotmail, Gmail, Yahoo Mail, etc.
Neste artigo, aprenderemos como fazer isso instalando o servidor de e-mail Postfix com o aplicativo de webmail “Roundcube” e suas dependências no Debian 10/9 e Ubuntu 20.04/18.04/16.04 versões LTS.
Nesta página
- Defina um nome de host e crie registros DNS para domínio de correio
- Instalando Apache, MariaDB e PHP no Ubuntu
- Instalando o Postfix Mail Server no Ubuntu
- Testando o servidor de correio Postfix no Ubuntu
- Instalando Dovecot IMAP e POP no Ubuntu
- Instalando o Webmail Roundcube no Ubuntu
- Crie um host virtual Apache para Webmail Roundcube
- Criando usuários de email para acessar emails via Roundcube
Etapa 1: definir um nome de host e criar registros DNS para o domínio
1. Primeiro, defina um nome de host FQDN (Nome de domínio totalmente qualificado) válido para seu servidor Ubuntu usando o comando hostnamectl conforme mostrado.
sudo hostnamectl set-hostname mail.linux-console.net
2. Em seguida, você precisa adicionar registros MX
e A
para seu domínio em seu painel de controle DNS que orienta outros MTAs que seu servidor de e-mail O domínio mail.seudominio.com
é responsável pela entrega de e-mail.
MX record @ mail.linux-console.net
mail.linux-console.net <IP-address>
Etapa 2: Instalando Apache, MariaDB e PHP no Ubuntu
3. Para criar um servidor de e-mail em execução usando “Roundcube ”, teremos que instalar Apache2, MariaDB e PHP primeiro, para fazer isso, execute.
sudo apt-get update -y
sudo apt-get upgrade -y
sudo apt install apache2 apache2-utils mariadb-server mariadb-client php7.4 libapache2-mod-php7.4 php7.4-mysql php-net-ldap2 php-net-ldap3 php-imagick php7.4-common php7.4-gd php7.4-imap php7.4-json php7.4-curl php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl php7.4-gmp php-net-smtp php-mail-mime php-net-idna2 mailutils
No Debian 10/9, você precisa baixar e instalar o repositório SURY PHP PPA para instalar o PHP 7.4 no Debian 10/9 conforme mostrado.
sudo apt -y install lsb-release apt-transport-https ca-certificates
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
sudo apt update
sudo apt install apache2 apache2-utils mariadb-server mariadb-client php7.4 libapache2-mod-php7.4 php7.4-mysql php-net-ldap2 php-net-ldap3 php-imagick php7.4-common php7.4-gd php7.4-imap php7.4-json php7.4-curl php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl php7.4-gmp php-net-smtp php-mail-mime php-net-idna2 mailutils
Etapa 3: Instalando o Postfix Mail Server no Ubuntu
4. Postfix é um agente de transferência de correio (MTA) que é o software responsável pela entrega e recebimento de e-mails, é essencial para criar um servidor de correio completo.
Para instalá-lo no Ubuntu/Debian ou mesmo no Mint, execute:
sudo apt-get install postfix
Durante a instalação, você será solicitado a escolher o tipo de configuração de e-mail, escolha “Site da Internet”.
5. Agora insira o nome de domínio totalmente qualificado que deseja usar para enviar e receber e-mails.
6. Uma vez instalado o Postfix, ele será iniciado automaticamente e criará um novo arquivo /etc/postfix/main.cf. Você pode verificar a versão do Postfix e o status do serviço usando os seguintes comandos.
postconf mail_version
sudo systemctl status postfix
Etapa 4: Testando o Postfix Mail Server no Ubuntu
7. Agora tente verificar se o seu servidor de e-mail está se conectando na porta 25 usando o seguinte comando.
telnet gmail-smtp-in.l.google.com 25
Trying 74.125.200.27...
Connected to gmail-smtp-in.l.google.com.
Escape character is '^]'.
220 mx.google.com ESMTP k12si849250plk.430 - gsmtp
A mensagem acima indica que a conexão foi estabelecida com sucesso. Digite quit para fechar a conexão.
8. Você também pode usar um programa de mail para enviar e ler e-mails usando o seguinte comando.
mail [email
Cc:
Subject: Testing My Postfix Mail Server
I'm sending this email using the postfix mail server from Ubuntu machine
Etapa 5: Instalando Dovecot IMAP e POP no Ubuntu
9. Dovecot é um agente de entrega de correio (MDA), ele entrega os e-mails de/para o servidor de correio, para instalá-lo, execute o seguinte comando.
sudo apt-get install dovecot-imapd dovecot-pop3d
10. Em seguida, reinicie o serviço Dovecot usando o seguinte comando.
sudo systemctl restart dovecot
OR
sudo service dovecot restart
Etapa 6: Instalando o Roundcube Webmail no Ubuntu
11. Roundcube é o servidor de webmail que você usará para gerenciar e-mails em seu servidor, possui uma interface web simples para fazer o trabalho, pode ser personalizado por instalando mais módulos e temas.
wget https://github.com/roundcube/roundcubemail/releases/download/1.4.8/roundcubemail-1.4.8.tar.gz
tar -xvf roundcubemail-1.4.8.tar.gz
sudo mv roundcubemail-1.4.8 /var/www/html/roundcubemail
sudo chown -R www-data:www-data /var/www/html/roundcubemail/
sudo chmod 755 -R /var/www/html/roundcubemail/
12. Em seguida, você precisa criar um novo banco de dados e usuário para Roundcube e conceder todas as permissões a um novo usuário para gravar no banco de dados.
sudo mysql -u root
MariaDB [(none)]> CREATE DATABASE roundcube DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
MariaDB [(none)]> CREATE USER roundcubeuser@localhost IDENTIFIED BY 'password';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON roundcube.* TO roundcubeuser@localhost;
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> quit;
13. Em seguida, importe as tabelas iniciais para o banco de dados Roundcube.
sudo mysql roundcube < /var/www/html/roundcubemail/SQL/mysql.initial.sql
Etapa 7: Crie um host virtual Apache para Webmail Roundcube
14. Crie um host virtual Apache para webmail Roundcube.
sudo nano /etc/apache2/sites-available/roundcube.conf
Adicione a seguinte configuração nele.
<VirtualHost *:80>
ServerName linux-console.net
DocumentRoot /var/www/html/roundcubemail/
ErrorLog ${APACHE_LOG_DIR}/roundcube_error.log
CustomLog ${APACHE_LOG_DIR}/roundcube_access.log combined
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/html/roundcubemail/>
Options FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
15. Em seguida, habilite este host virtual e recarregue o Apache para as alterações.
sudo a2ensite roundcube.conf
sudo systemctl reload apache2
16. Agora você pode acessar o webmail em http://seudominio.com/roundcubemail/installer/
.
16. Em seguida, vá para as configurações do banco de dados e adicione os detalhes do banco de dados.
17. Após fazer todas as alterações, crie um arquivo config.inc.php
.
18. Após finalizar a instalação e os testes finais exclua a pasta installer
e certifique-se da opção enable_installer
em config.inc. php
está desabilitado.
sudo rm /var/www/html/roundcubemail/installer/ -r
19. Agora vá para a página de login e digite o nome de usuário e a senha do usuário.
http://yourdomain.com/roundcubemail/
Etapa 8: Criando usuários de email
20. Para começar a usar o webmail Roundcube, você terá que criar um novo usuário, para isso execute.
sudo useradd myusername
Substitua “meunomedeusuário” pelo nome de usuário desejado e crie uma senha para o novo usuário executando.
sudo passwd myusername
21. Agora volte para a página de login e digite o nome de usuário e a senha do usuário recém-criado.
Você já tentou criar um servidor de e-mail antes? Como foi? Você já usou o Roundcube ou qualquer outro servidor de e-mail antes? O que você acha disso?