Tenho 23 servidores da Web - preciso limpar todos os servidores - sem perda de serviço nos sites hospedados por eles

12

Ok, é um desafio e estou tendo problemas para planejá-lo principalmente devido à falta de experiência. No entanto, tornou-se uma tarefa no meu trabalho e eu estou fazendo isso principalmente solo, com uma mão extra.

Estou confortável com o Linux e todos esses servidores são Debian ou CentOS. Alguns são VPS, hosts compartilhados e outros são VMs em nuvem. Sou novo na empresa e só consegui tempo nos últimos meses para fazer um balanço de questões pendentes. Todos eles executam plesk ou cpanel.

Descobri que esses servidores nunca foram configurados, apenas comprados e sites criados com uma administração muito básica nos últimos dois anos (limpeza de espaço em disco e tarefas de gerenciamento de domínio / hospedagem principalmente). Não havia iptables configuradas e nenhuma precaução de segurança foi tomada; portanto, esses servidores estão repletos de problemas. Eu acho que a melhor solução aqui é começar de novo e consolidar nossa hospedagem para menos servidores, pois eles acabaram de comprar novos servidores compartilhados por muito tempo. Sinto que podemos oferecer suporte a toda a nossa base de clientes em cerca de 1/4 do nosso cluster.

Meu problema é que não tenho certeza de como planejar essa mudança. Isso exigirá muitos sites em movimento e alterações no DNS. Penso que seria sensato procurar aconselhamento de qualquer bruxo por aí que lide com esse tipo de coisa regularmente ou, pelo menos, tenha a experiência de me indicar a direção certa.

Lama

Lama
fonte
7
"Estou tendo problemas para planejá-lo principalmente devido à falta de experiência." Você absolutamente precisa obter uma cópia de A prática da administração de sistemas e redes (também conhecida como livro de Limoncelli). Seu passo provavelmente tem por guias passo a quase todos os tarefa é provável que você rosto como um administrador de sistema
Journeyman Geek
2
E eu não consideraria o assunto, mas se você puder evitá-lo, o cpanel é notoriamente inseguro. Se você puder, gerencie as coisas da maneira 'adequada'. Claro, tudo depende das suas necessidades.
Journeyman Geek
Muito obrigado por sua ajuda, sua solução abaixo me deu uma boa estrutura para trabalhar. Sou inexperiente, mas não sou noob. Acho que posso resolver isso e o tempo está do meu lado, felizmente. Vou pegar uma cópia desse livro - parece o novo complemento perfeito para a minha biblioteca. (Cresce tão rápido: | Eu nunca pensei!)
Mud
Eu apenas terminei o último módulo de um cyberforensics e gestão de segurança da informação importante. É o livro que eu gostaria de conhecer antes. Isso, Resposta a Incidentes e Cyber ​​Forense de Mandia e Prosise e Cibercrime e Evidência Digital de Eoughan Casey são o que eu recomendei aos meus colegas de classe como razão essencial. É um livro incrível , é provável que me siga para o meu próximo emprego, e talvez o seguinte.
Journeyman Geek

Respostas:

19

Não existe uma solução simples para isso - provavelmente será um caminho longo e irritante para colocar tudo em movimento. Eu começaria com algumas coisas, mas o livro que eu recomendei nos comentários provavelmente entrará em alguns detalhes. Eu vejo quatro estágios principais aqui - inventário, reimplementação, teste e aceitação.

  • O que estou hospedando agora

Se você ainda não o fez, faça um inventário completo do que você tem e do que está usando agora. Identifique o que são recursos críticos e o que está parado lá. Esta pergunta sobre SF pode ser um bom começo, embora, naturalmente, você precise ajustá-la para um ambiente debianisque - talvez assim . Esta é a fase mais crítica .

Servidores 'Web' não são todos iguais - verifique se você está executando algum processo que executa seu próprio servidor Web (como o django) ou se é um servidor Web independente como o apache.

  • reavaliar a configuração atual para melhores práticas

Você está usando versões EOLed do seu sistema operacional e outro software? Você pode migrar? Que problemas você enfrentaria? Existem riscos de segurança conhecidos? Posso padronizar tudo para uma única versão de todo o meu software? Posso automatizar meus processos de implantação e até que ponto (veja fantoches e chef).

  • crie um conjunto de testes para cada servidor

Faça uma lista do que precisa funcionar e como você o testará

  • decidir o que você está mudando

Dessa forma, você pode escolher o melhor processo de P2V ou V2V para suas necessidades.

  • decidir o que consolidar

Você pode optar por executar vários conjuntos de serviços separados anteriormente em um servidor. Você também pode optar por executar VMs. Tanto a execução de VMs muito específicas de tarefas (você pode reiniciar uma sem afetar outras coisas) quanto o agrupamento de tarefas semelhantes (para que você tenha menos sistemas lógicos a manter) têm vantagens

  • configurar um ambiente de teste isolado

Dessa forma, você pode configurar e testar uma movimentação do sistema sem atrapalhar a produção. Você provavelmente poderá fazer isso em talvez um único servidor executando VMs.

  • ter uma área de preparação para sistemas testados

Mova as VMs para a área de preparação e teste-as uma última vez

  • Utilize janelas de manutenção para a transição para os novos sistemas.

Defina um dns ttl curto para os sistemas que foram migrados com êxito e altere o nome do domínio e outras configurações relevantes durante uma janela de manutenção. Teste novamente. Fique de olho em todos os erros após a implantação do novo servidor

  • Não destrua as instalações antigas do servidor até poder verificar se a nova funciona

Cubra-se. Se algo der errado, a curto prazo, você sempre poderá voltar ao servidor antigo.

Journeyman Geek
fonte
Muito obrigado Journeyman Geek, embora realmente eu consideraria você um artesão: D
Mud
3
+ muitos, se eu pudesse, por tudo isso. A única coisa que eu acrescentaria é que, como isso levará um tempo, leve a adesão da gerência a um período de estabilidade enquanto você planeja, testa e executa a mudança. Durante esse período de estabilidade, nenhum novo servidor da web pode ser criado e nenhuma alteração que você não aprova e implementa pessoalmente pode ser feita em qualquer servidor existente. Caso contrário, você está tentando copiar com cuidado e profissionalismo um alvo em movimento louco e estupidamente. Pense também em como você controlará as alterações nos servidores depois de fazer a mudança ou terá que fazer isso novamente em breve.
precisa
Bom ponto MadHatter, eu tenho uma boa linha de comunicação com os superiores, eles entendem que a segurança vem em primeiro lugar com relação aos dados de nossos clientes e que esse processo é inevitável e que só pode ser acompanhado por tanto tempo.
Mud