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
- Valida usuário cPanel e IP de destino.
- Descobre IP atual da conta em
/var/cpanel/users/<user>. - Processa zonas DNS em
/var/namede, quando presente,chrootde named. - Substitui IP em blocos de
VirtualHostassociados nohttpd.conf. - Atualiza
IP=no arquivo de usuário cPanel. - Atualiza
ip:nos arquivos de userdata por domínio e versões_SSL. - 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.
live feed
abrir issues no githubcarregando andamento...
não foi possivel carregar as issues agora. abra no github pelo link acima.
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
- Shell Script / Bash
- cPanel/WHM
- BIND9
- Apache
- httpd.conf
- sed
- grep
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.