cPanel Change Account IP CONCLUÍDO

Resumo técnico

Script Bash para alterar IP dedicado de conta cPanel de ponta a ponta, cobrindo atualização de zonas DNS (/var/named), virtual hosts no Apache (httpd.conf), registro principal da conta (/var/cpanel/users/<user>) e arquivos de userdata por domínio (incluindo variantes SSL).

Escopo executado

  • Reimplementação em Bash do utilitário legado chgacctip (Perl) mantendo compatibilidade funcional.
  • Troca coordenada do IP em múltiplas camadas de configuração do servidor.
  • Atualização de serial SOA nas zonas DNS após alteração de registros A.
  • Controle de lock para evitar edição concorrente de httpd.conf.
  • Suporte a execução com ou sem rebuild/restart de serviços (y|n).
  • Tratamento de edge cases: mesma origem/destino de IP e domínios sem ocorrência do IP antigo.

Fluxo técnico de alteração

  1. Valida usuário cPanel e IP de destino.
  2. Descobre IP atual da conta em /var/cpanel/users/<user>.
  3. Processa zonas DNS em /var/named e, quando presente, chroot de named.
  4. Substitui IP em blocos de VirtualHost associados no httpd.conf.
  5. Atualiza IP= no arquivo de usuário cPanel.
  6. Atualiza ip: nos arquivos de userdata por domínio e versões _SSL.
  7. Se y, executa rotina de rebuild/reload (named, cache userdata, userdomains, rebuild httpd, restart Apache).

Execução prática


# troca sem rebuild de serviços
./cp-chgacctip.sh dominio123 192.168.1.100

# troca com rebuild/restart completo
./cp-chgacctip.sh dominio123 192.168.1.100 y

# caso de IP já igual (valida e segue checando componentes)
./cp-chgacctip.sh dominio123 51.79.52.232

Arquivos e componentes afetados

  • /var/named/*.db (e opcionalmente /var/named/chroot/var/named/*.db)
  • /usr/local/apache/conf/httpd.conf
  • /var/cpanel/users/<username>
  • /var/cpanel/userdata/<username>/* e *_SSL

Operação segura e rollback


# backup recomendado antes da troca
cp -a /var/named/*.db /backup/named/
cp /usr/local/apache/conf/httpd.conf /backup/httpd.conf.bak
cp -a /var/cpanel/users/username /backup/
cp -a /var/cpanel/userdata/username /backup/

Troubleshooting operacional


# validar se usuário existe
ls /var/cpanel/users/username

# lock preso em httpd.conf
rm -f /usr/local/apache/conf/httpd.conf.lock

# rebuilds manuais
rndc reload
/scripts/rebuildhttpdconf
/etc/init.d/httpd graceful

Stack e ferramentas

  • Shell Script / Bash
  • cPanel/WHM
  • BIND9 / named
  • Apache / httpd
  • sed
  • grep

Tags operacionais

  • cPanel
  • Bash
  • DNS
  • Apache

Resultado operacional

  • Redução do risco de inconsistência entre DNS, Apache e metadata cPanel durante troca de IP.
  • Processo reproduzível para operação de migração e remediação de rede.
  • Menor tempo de execução manual em mudanças de infraestrutura com contas dedicadas.

Andamento no GitHub (issues)

Painel em tempo real com as issues mais recentes do repositório.

abertas (amostra): -- fechadas (amostra): -- base: -- ultimas issues

carregando andamento...

Resultados reais

Reescrita em Bash do utilitário clássico chgacctip para trocar IP dedicado de contas cPanel com atualização coordenada de DNS, Apache, userdata e arquivo de usuário.

Arquitetura e organização

Execução e operação

O projeto segue fluxo reprodutível de execução com validação técnica em ambiente de produção/similar.

Screenshots

Falar sobre este projeto

Aplique este modelo no seu ambiente e acelere a entrega com consistência técnica.