Como proteger um servidor HestiaCP
Última atualização:
O HestiaCP gerencia o próprio firewall: ele mesmo escreve as regras do iptables, e as jails do fail2ban dele bloqueiam por ali. Isso o torna simples de operar, e também significa que qualquer outra ferramenta precisa conviver com o Hestia reconstruindo o firewall.
Esta página explica como funciona o firewall do Hestia e como o agente do InfraFence trabalha ao lado dele num servidor HestiaCP. As informações sobre o HestiaCP vêm da documentação e do código-fonte dele e são de novembro de 2026.
Como funciona o firewall do HestiaCP
- As regras que você define na página Firewall do Hestia (ou com
v-add-firewall-rule) são aplicadas pelo `v-update-firewall`. Ele esvazia a cadeia INPUT, a reconstrói a partir das regras do Hestia e define a política de INPUT como DROP. - As jails do fail2ban do Hestia bloqueiam pelos comandos do próprio Hestia, em cadeias
fail2ban-<name>que o Hestia liga ao INPUT para cada serviço. - O Hestia também gerencia listas de ipset, para listas de bloqueio e de permissão. A documentação do firewall dele avisa que ele apaga as regras do iptables que não foram adicionadas pelo Hestia ou pelo script
custom.shdele.
Ou seja, uma regra adicionada à mão com iptables não sobrevive à próxima alteração de firewall no Hestia. Qualquer ferramenta que adiciona as próprias regras precisa colocá-las de volta.
Como o agente convive com ele
- As regras dele ficam nas próprias cadeias (
INFRAFENCEe as outras), que a reconstrução do INPUT pelo Hestia não toca. Só o salto a partir do INPUT se perde quando o Hestia esvazia a cadeia. - Ele recoloca esse salto em até um minuto, antes de qualquer regra que possa aceitar tráfego, então os bloqueios dele também valem para as portas que o Hestia abriu. Ele nunca adiciona uma regra de aceitação, então nunca abre nada que o Hestia fechou.
- O fail2ban fica intocado. As cadeias
fail2ban-<name>e as jails do Hestia não são alteradas: os dois só descartam tráfego, então não entram em conflito. - Se o Hestia reconstrói o firewall sem parar, o agente informa um evento de conflito de firewall, para você saber onde olhar (Coexistência).
O que o agente faz num servidor HestiaCP
- Ele reconhece o HestiaCP por
/usr/local/hestiae lê a versão emhestia.conf, e o painel mostra as duas coisas. - Ele nunca altera a configuração do servidor web. O Hestia gerencia o nginx e o Apache, então o agente não adiciona regras de ModSecurity nem bloqueios por user agent; os bots marcados como Bloquear são bloqueados no firewall (Bots).
- Ele lê o log de acesso de todos os sites, a partir da configuração do servidor web que o Hestia escreve, e ignora os arquivos
.bytesque o Hestia usa para contar o tráfego (Firewall web). - Ele procura malware em todos os sites:
/home/<user>/web/<domain>/public_htmlé encontrado sozinho, com o seu domínio (Malware). - Ele pode verificar os seus sites para o selo de monitoramento gravando o arquivo de verificação na raiz web do site (Selo de monitoramento).
- Ele para a força bruta no SSH no firewall, pode fechar portas de banco de dados abertas para a internet quando você pede pelo painel e monitora tráfego de saída, DNS e integridade de arquivos, como em qualquer servidor Linux.
Instalar o agente no HestiaCP
- Rode antes a verificação somente leitura: o
--dry-rundo instalador aponta o que poderia atrapalhar e não altera nada. - No painel, Servidores › Adicionar servidor cria um token de instalação, válido por uma hora.
- Rode o comando de instalação como root via SSH. Nada no Hestia precisa mudar.
curl -fsSL https://github.com/infrafence/infrafence-agent/releases/latest/download/install.sh | sudo bash -s -- --dry-runO HestiaCP roda em Debian e Ubuntu, ambos entre as 15 distribuições em que o agente é testado antes de cada versão (Distribuições suportadas).
Teste grátis em 1 servidor
O Starter protege um servidor por completo, grátis e sem cartão de crédito.
- 01
Crie uma conta gratuita e abra Servidores › Adicionar servidor para obter o token de instalação. Ele vale por uma hora.
Criar o token - 02
Depois execute isto como root no servidor:
curl -fsSL https://github.com/infrafence/infrafence-agent/releases/latest/download/install.sh | sudo bash -s -- --token <TOKEN>
