Configuração de Servidor · 10 min read · Sep 22, 2025

Configuração Perfeita de Multiserver ISPConfig no Ubuntu 20.04 e Debian 10 - Página 3

4 Instalando o primeiro servidor de e-mail

Faça login como root ou execute

su -

para se tornar o usuário root em seu servidor antes de prosseguir. IMPORTANTE: Você deve usar ‘su -‘ e não apenas ‘su’, caso contrário, sua variável PATH será configurada incorretamente pelo Debian.

4.1 Configurar o nome do host

O nome do host do seu servidor deve ser um subdomínio como “mx1.example.com”. Não use um nome de domínio sem uma parte de subdomínio como “example.com” como nome do host, pois isso causará problemas mais tarde com sua configuração de e-mail. Primeiro, você deve verificar o nome do host em /etc/hosts e alterá-lo quando necessário. A linha deve ser: “Endereço IP - espaço - nome do host completo incluindo domínio - espaço - parte do subdomínio”. Para nosso nome do host mx1.example.com, o arquivo deve parecer com isto:

nano /etc/hosts
127.0.0.1 localhost.localdomain   localhost  
# Esta linha deve ser alterada em cada nó para o nome do servidor correto:  
127.0.1.1 mx1.example.com mx1  
# Essas linhas são as mesmas em cada nó:
10.0.64.12 panel.example.com panel  
10.0.64.13 web01.example.com web01  
10.0.64.14 mx1.example.com mx1  
10.0.64.15 mx2.example.com mx2  
10.0.64.16 ns1.example.com ns1  
10.0.64.17 ns2.example.com ns2  
10.0.64.18 webmail.example.com webmail

# As linhas a seguir são desejáveis para hosts compatíveis com IPv6
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Como você pode ver, adicionamos os nomes dos hosts de nossos outros servidores também, para que eles possam se comunicar pela rede interna mais tarde.

Em seguida, edite o arquivo /etc/hostname:

nano /etc/hostname

Deve conter apenas a parte do subdomínio, no nosso caso:

mx1

Finalmente, reinicie o servidor para aplicar a alteração:

systemctl reboot

Faça login novamente e verifique se o nome do host está correto agora com estes comandos:

hostname  
hostname -f

A saída deve ser assim:

root@mx1:~$ hostname  
mx1  
root@mx1:~$ hostname -f  
mx1.example.com

4.2 Instalando o ISPConfig

Agora podemos executar o autoinstalador para todos os pacotes e ISPConfig:

wget -O - https://get.ispconfig.org | sh -s -- --no-dns --no-roundcube --no-mailman --use-php=system --use-unbound --interactive

Após algum tempo, você verá:

WARNING! Este script irá reconfigurar seu servidor completo!  
Deve ser executado em um servidor recém-instalado e toda a configuração atual que você fez provavelmente será perdida!  
Digite 'sim' se você realmente quiser continuar:

Responda “sim” e pressione enter. O instalador agora começará.

Quando a instalação e configuração dos pacotes estiverem concluídas, a senha root para MySQL em mx1 será exibida. Anote isso (junto com o nome do servidor, para evitar qualquer confusão mais tarde).

Agora teremos que responder algumas perguntas, pois estamos usando o modo interativo. Isso é necessário, pois este servidor será adicionado à sua configuração de multiserver.

[INFO] Instalando ISPConfig3.  
[INFO] Sua senha root do MySQL é: kl3994aMsfkkeE  
  
  
--------------------------------------------------------------------------------  
 _____ ___________   _____              __ _          ____  
|_   _|  ___| ___ \ /  __ \            / _(_)        /__  \  
  | | \ `--.| |_/ / | /  \/ ___  _ __ | |_ _  __ _    _/ /  
  | |  `--. \  __/  | |    / _ \| '_ \|  _| |/ _` |  |_ |  
  |_| |_|\__/ / |     | \__/\ (_) | | | | | | (_| | ___\ \  
  \___/\____/_|      \____/\___/|_| |_|_| |_|\__, | \____/  
                                               __/ |  
                                              |___/   
--------------------------------------------------------------------------------  
  
>> Configuração inicial   
  
Sistema Operacional: Debian 10.0 (Buster) ou compatível  
  
    A seguir, haverá algumas perguntas para configuração primária, então tenha cuidado.  
    Os valores padrão estão entre [colchetes] e podem ser aceitos com .  
    Digite "sair" (sem as aspas) para parar o instalador.  
  
  
Selecione o idioma (en,de) [en]: <-- Pressione enter  
  
Modo de instalação (padrão, especialista) [padrão]: <-- especialista  
  
Nome do host totalmente qualificado (FQDN) do servidor, ex: server1.domain.tld  [mx1.example.com]: <-- Pressione Enter  
  
Nome do host do servidor MySQL [localhost]: <-- Pressione Enter  
  
Porta do servidor MySQL [3306]: <-- Pressione Enter  
  
Nome de usuário root do MySQL [root]: <-- Pressione Enter  
  
Senha root do MySQL []: <-- Digite a senha do MySQL que o script acabou de fornecer  
  
Banco de dados MySQL a ser criado [dbispconfig]: <-- Pressione Enter  
  
Charset MySQL [utf8]: <-- Pressione Enter  
  
As próximas duas perguntas são sobre o usuário e senha do banco de dados interno do ISPConfig.  
É recomendável aceitar os padrões, que são 'ispconfig' como nome de usuário e uma senha aleatória.  
Se você usar uma senha diferente, use apenas números e caracteres para a senha.  
  
Nome de usuário do banco de dados mysql do ISPConfig [ispconfig]: <-- Pressione Enter  
  
Senha do banco de dados mysql do ISPConfig [aakl203920459853sak20284204]: <-- Pressione Enter  
  
Este servidor deve se juntar a uma configuração de multiserver ISPConfig existente (s,n) [n]: <-- s  
  
Nome do host do servidor mestre MySQL []: <-- panel.example.com  
  
Porta do servidor mestre MySQL []: <-- Pressione Enter  
  
Nome de usuário root do servidor mestre MySQL [root]: <-- Pressione Enter  
  
Senha root do servidor mestre MySQL []: <-- a senha que você deu ao usuário root externo no servidor mestre.  
  
Nome do banco de dados do servidor mestre MySQL [dbispconfig]: <-- Pressione Enter  
  
Adicionando registro do servidor ISPConfig ao banco de dados.  
  
Configurar E-mail (s,n) [s]: <-- Pressione enter  
  
Configurando Postgrey  
Configurando Postfix  
Gerando uma chave privada RSA  
......................................................................++++  
....................++++  
escrevendo nova chave privada em 'smtpd.key'  
-----  
Você está prestes a ser solicitado a inserir informações que serão incorporadas  
no seu pedido de certificado.  
O que você está prestes a inserir é o que é chamado de Nome Distinto ou DN.  
Existem vários campos, mas você pode deixar alguns em branco  
Para alguns campos haverá um valor padrão,  
Se você digitar '.', o campo ficará em branco.  
-----  
Nome do País (código de 2 letras) [AU]: <-- Pressione enter  
Nome do Estado ou Província (nome completo) [Some-State]: <-- Pressione enter  
Nome da Localidade (ex: cidade) []: <-- Pressione enter  
Nome da Organização (ex: empresa) [Internet Widgits Pty Ltd]: <-- Pressione enter  
Nome da Unidade Organizacional (ex: seção) []: <-- Pressione enter  
Nome Comum (ex: FQDN do servidor ou SEU nome) []: <-- Pressione enter  
Endereço de E-mail []: <-- Pressione enter  
[WARN] autodetect para Mailman falhou  
Forçar configurar Mailman (s,n) [n]: <-- Pressione enter  
  
Ignorando Mailman  
  
Configurando Dovecot  
Criando novo arquivo DHParams, isso leva vários minutos. Não interrompa o script.  
Configurando Spamassassin  
[WARN] autodetect para Amavisd falhou  
Forçar configurar Amavisd (s,n) [n]: <-- Pressione enter  
  
Ignorando Amavisd  
  
Configurando Rspamd  
Configurando Getmail  
Configurando Jailkit  
Configurando Pureftpd  
Configurar Servidor DNS (s,n) [s]: <-- n  
  
A opção do Servidor Web deve ser habilitada quando você quiser executar um servidor web ou quando este nó deve hospedar a interface do ISPConfig.  
Configurar Servidor Web (s,n) [s]: <-- Pressione enter  
  
Configurando Apache  
Configurando vlogger  
[WARN] autodetect para OpenVZ falhou  
Forçar configurar OpenVZ (s,n) [n]: <-- Pressione Enter  
  
Ignorando OpenVZ  
  
Configurar Servidor de Firewall (s,n) [s]: <-- Pressione Enter  
  
Configurando Firewall do Ubuntu  
[WARN] autodetect para Metronome XMPP Server falhou  
Forçar configurar Metronome XMPP Server (s,n) [n]: <-- Pressione Enter  
  
Ignorando Metronome XMPP Server  
  
Configurando Fail2ban  
Instalar Interface Web do ISPConfig (s,n) [n]: <-- Pressione Enter  
  
Você deseja criar certificados SSL para seu servidor? (s,n) [s]: <-- Pressione Enter  
  
Verificando / criando certificado para mx1.example.com  
Usando caminho do certificado /etc/letsencrypt/live/mx1.example.com  
Usando apache para validação do certificado  
Symlink dos certificados SSL do ISPConfig para Postfix? (s,n) [s]: <-- Pressione Enter  
  
Symlink dos certificados SSL do ISPConfig para Pure-FTPd? Criar arquivo dhparam pode levar algum tempo. (s,n) [s]: <-- Pressione Enter  
  
Gerando parâmetros DH, primo seguro de 2048 bits, gerador 2  
Isso vai demorar muito  
......................+...........................................+...............  
Configurando Apps vhost  
Configurando DBServer  
Instalando crontab do ISPConfig  
sem crontab para getmail  
Detectando endereços IP  
Reiniciando serviços ...  
Instalação concluída.  
[INFO] Adicionando versões do php ao ISPConfig.  
[INFO] Verificando se todos os serviços estão em execução.  
[INFO] mysql: OK  
[INFO] clamav-daemon: OK  
[INFO] postfix: OK  
[INFO] bind9: OK  
[INFO] pureftpd: OK  
[INFO] apache2: OK  
[INFO] rspamd: OK  
[INFO] redis-server: OK  
[INFO] dovecot: OK  
[INFO] Instalação pronta.  
[INFO] Sua senha root do MySQL é: kl3994aMsfkkeE  
[INFO] Aviso: Por favor, exclua os arquivos de log em /tmp/ispconfig-ai/var/log/setup-* assim que não precisar mais deles, pois contêm suas senhas!

4.3 Configurando replicação para Dovecot

Vamos usar dsync para sincronizar os e-mails entre mx1 e mx2, para redundância.

As configurações personalizadas para dovecot devem ser armazenadas em /usr/local/ispconfig/server/conf-custom/install/dovecot_custom.conf.master para que você não as perca ao atualizar o ISPConfig.

nano /usr/local/ispconfig/server/conf-custom/install/dovecot_custom.conf.master

Coloque o seguinte lá:

protocol imap {  
 mail_plugins = $mail_plugins quota imap_quota notify replication  
}  
protocol pop3 {  
 mail_plugins = $mail_plugins quota notify replication  
}  
protocol lda {  
 mail_plugins = $mail_plugins sieve quota notify replication  
}  
protocol lmtp {  
 mail_plugins = $mail_plugins sieve quota notify replication  
}  
doveadm_password = /(:&p-J:4e%?\@Q-;VSE#3Dmfm[fVK&r-mx1  
doveadm_port = 12345  
replication_max_conns = 50  
  
ssl_client_ca_dir = /etc/ssl/certs  
  
# O processo replicador deve ser iniciado na inicialização, para que possa começar a replicar usuários imediatamente:  
service replicator {  
 process_min_avail = 1  
}  
  
# Os processos de e-mail precisam ter acesso ao fifo e socket de notificação de replicação.  
service aggregator {  
    fifo_listener replication-notify-fifo {  
        user = vmail  
        mode = 0666  
    }  
  
    unix_listener replication-notify {  
        user = vmail  
        mode = 0666  
    }  
}  
  
# Habilitar comandos de replicador doveadm  
service replicator {  
    unix_listener replicator-doveadm {  
        mode = 0666  
    }  
}  
  
# Criar um listener para o servidor doveadm  
service doveadm {  
    user = vmail  
    inet_listener {  
        port = 12345  
        ssl = yes  
    }  
}  
service config {  
    unix_listener config {  
        user = vmail  
    }  
}  
  
plugin {  
    mail_replica = tcps:mx2.example.com  
}

Substitua doveadm_password pela sua própria senha - faça dela uma string longa e aleatória por razões de segurança.

Substitua

mail_replica = tcps:mx2.example.com

pelo seu próprio nome de host de mx2.

Para aplicar essas alterações, copie o arquivo para a pasta dovecot e reinicie o dovecot:

cp /usr/local/ispconfig/server/conf-custom/install/dovecot_custom.conf.master /etc/dovecot/conf.d/99-ispconfig-custom-config.conf  
systemctl restart dovecot

4.4 Configurando sincronização para Rspamd

Rspamd tem uma boa interface web. Vamos configurar nossos servidores como vizinhos para que você possa visualizar as configurações, estatísticas e outros dados em um painel.

nano /usr/local/ispconfig/server/conf-custom/install/rspamd_options.inc.master

Adicione estas linhas:

# Configuração do template ISPConfig (deve ser atualizada se houver alterações)
# Endereços locais para este servidor.
local_addrs = [
    "127.0.0.0/8",
    "::1",
  ];

# Esta lista é gerada pelo ISPConfig, coloque endereços/rede personalizados em local_networks.inc.
local_networks = "/etc/rspamd/local.d/local_networks.inc";

dns {
    nameserver = ["127.0.0.1:53:10"];
}

# Configuração personalizada:
neighbours {
    mx1 {
        host = "https://mx1.example.com:443";
        path = "/rspamd/";
    }
    mx2 { 
        host = "https://mx2.example.com:443";
        path = "/rspamd/";
    }
}
# Última atualização: 19-01-2022

Substitua os nomes dos hosts pelos nomes corretos para seu servidor de e-mail principal e secundário. Esta configuração deve ser atualizada se o template mudar, então certifique-se de verificar isso ao atualizar o ISPConfig.

Agora vamos adicionar um site para este servidor no ISPConfig. Vá para Sites -> Adicionar novo site e adicione o site “mx1.example.com”. Certifique-se de criar isso no servidor correto (mx1.example.com). Desative o subdomínio automático e ative SSL + Let’s Encrypt. Em seguida, vá para opções e cole isso na seção de diretivas do Apache:

RewriteEngine On  
RewriteRule ^/rspamd$ /rspamd/ [R,L]  
RewriteRule ^/rspamd/(.*) http://127.0.0.1:11334/$1 [P]  
Header set Access-Control-Allow-Origin https://mx2.example.com

Substitua mx2.example.com pelo nome do host do servidor de nomes secundário.

Por fim, precisamos habilitar alguns módulos do Apache e reiniciar nossos serviços:

a2enmod proxy_balancer proxy_http  
systemctl restart rspamd  
systemctl restart apache2

4.5 Protegendo o servidor de e-mail com um certificado SSL válido

Para uma configuração funcional de DSYNC e Roundcube, você precisa ter um certificado SSL válido em vigor para os nomes de host utilizados. Este certificado não pode ser autoassinado. Se você for usar nomes de host adicionais para este servidor, como imap.example.com e smtp.example.com, ou se o instalador não conseguiu criar um certificado válido ao instalar, siga este guia para configurar um certificado válido para seu servidor de e-mail: https://www.howtoforge.com/securing-your-ispconfig-3-managed-mailserver-with-a-valid-lets-encrypt-certificate/

4.6 Configurando o firewall

A última coisa a fazer é configurar nosso firewall.

Faça login na interface do ISPConfig e vá para Sistema -> Firewall. Em seguida, clique em “Adicionar novo registro de firewall”.

Certifique-se de selecionar o servidor correto. Para nosso servidor de e-mail, precisamos abrir as seguintes portas:

TCP:

22,25,80,110,143,443,465,587,993,995

Nenhuma porta UDP precisa ser aberta pela interface.

Também vamos abrir a porta 3306, que é usada para MySQL, e a porta 12345, que é usada para dsync, mas apenas da nossa rede local por razões de segurança. Para fazer isso, execute o seguinte comando a partir da CLI, após a alteração do painel do ISPConfig ser propagada (quando o ponto vermelho desaparecer):

ufw allow from 10.0.64.0/24 to any port 3306 proto tcp  
ufw allow from 10.0.64.0/24 to any port 12345 proto tcp
Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.