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/hosts127.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-allroutersComo 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/hostnameDeve conter apenas a parte do subdomínio, no nosso caso:
mx1Finalmente, reinicie o servidor para aplicar a alteração:
systemctl rebootFaça login novamente e verifique se o nome do host está correto agora com estes comandos:
hostname
hostname -fA saída deve ser assim:
root@mx1:~$ hostname
mx1
root@mx1:~$ hostname -f
mx1.example.com4.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 --interactiveApó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.masterColoque 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.compelo 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 dovecot4.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.masterAdicione 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-2022Substitua 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.comSubstitua 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 apache24.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,995Nenhuma 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 tcpReceba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.