Distribuição / configuração para hospedagem compartilhada

2

Atualmente, estou administrando um servidor Gentoo que hospeda algumas dezenas de sites para amigos e pessoas com interesses em comum. Eu posso estar mudando para um novo servidor em breve, e com isso vem a possibilidade de mudar para outro sistema operacional. Eu gostei da capacidade do Gentoo de me deixar mexer com os flags de USE e automaticamente corrigir o código-fonte do upstream antes que ele seja compilado e instalado, mas ele tem algumas peculiaridades (tail e cron tendo comportamento sutilmente quebrado , deadlocks no código cgroups do kernel , arquivos sendo instalados com permissões quebradas aleatoriamente), e a manutenção pode ser considerável (Não consigo atualizar o perl sem quebrar metade do sistema).

Eu conjecturo que, para um sistema de hospedagem compartilhada, duas coisas são mais importantes: segurança e estabilidade. Embora eu geralmente confie em que meus usuários não façam algo intencionalmente malicioso, não posso confiar neles para nunca permitir que as contas deles sejam comprometidas (por exemplo, instalando e não atualizando um aplicativo da Web para o qual uma vulnerabilidade foi encontrada). Um usuário não deve poder acessar os dados de outros usuários, interferir na acessibilidade de outros sites ou eliminar o servidor.

O CentOS parece ser muito popular em servidores, embora minha experiência pessoal limitada com o rpm / yum fosse bastante desanimadora (levei uma hora para instalar um pacote). Eu ouvi coisas legais sobre o Ubuntu Server também. Ou devo ficar apenas com o que eu estou familiarizado, e espero que meus problemas do Gentoo sejam simplesmente o resultado de uma configuração incorreta ou de um acúmulo acumulado que não se manifestará em uma instalação limpa? (O CentOS e o Ubuntu Server vêm com o SELinux / AppArmor, o Gentoo tem o projeto Hardened Gentoo.)

Existe também a questão da configuração do Apache ... rodar o mod_php com um MPM padrão está fora de questão, já que ele permitirá que os scripts acessem os dados de todos os usuários. O CGI é muito mais lento. Estou usando o itk MPM agora, e parece funcionar bem, mas gostaria de saber se existe uma solução melhor - como os grandes provedores de hospedagem compartilhada (DreamHost, etc.) fazem isso?

    
por Vladimir Panteleev 19.05.2011 / 00:16

2 respostas

2

O CentOS é muito popular devido ao suporte upstream de muitos fornecedores corporativos e à natureza sólida do sistema. Um movimento para qualquer sistema como este vai fazer você se sentir como se estivesse preso em uma jaula. Você é claramente alguém que gosta de tweaking (o que eu posso concordar!). Dito isto, acho que para um sistema de hospedagem compartilhada, o CentOS ou o Ubuntu Server é definitivamente uma abordagem melhor, pois simplifica bastante o gerenciamento.

Em ambos os casos, você precisará investir algum tempo (muito menos do que o tempo necessário para aprender o Gentoo, IMHO) no aprendizado de ferramentas e peculiaridades. Uma vez que você se acostumar a usar o apt ou o yum, ambos são bastante toleráveis para uma instalação simples de software.

Em ambos os casos, se o seu foco é PHP / Apache webhosting, você pode simplesmente construir um sistema usando o CentOS ou o Ubuntu e construir seu próprio Apache / PHP para atender às suas necessidades. Se eu fosse você, passaria algum tempo vendo se os pacotes do sistema oferecem algo parecido com a configuração que você está procurando (eu sei que ambos oferecem vários módulos MPM, por exemplo).

No RedHat EL5, pelo menos, a instalação padrão do mod_php executa todos os scripts PHP como o usuário www-data, o que não permitiria o acesso aos arquivos de todos os usuários (pode haver algo que estou perdendo aqui).

    
por 19.05.2011 / 03:35
0

Seu problema parece ser um erro de configuração para mim. Eu tenho usado o Gentoo há vários anos e até agora o único problema que eu encontrei foi com dependências quebradas temporárias na ramificação instável, que foi corrigida em questão de dias. Meu conselho é ficar com o Gentoo. Você não obterá muito benefício em termos de poder de CPU, mas terá um tempo de manutenção alto, o que o instruirá na maneira como o Linux funciona como um sistema.

Se você lida com uma enorme quantidade de servidores, você deve considerar manter algumas máquinas para que você possa compilar e criar pacotes binários para fácil distribuição. mais tarde. Isso acelerará a implantação de atualizações para o restante dos servidores e, ao mesmo tempo, oferecerá a flexibilidade de manter suas próprias versões do software para servidores.

Quanto ao php, eu iria ficar com o que funciona para você e seus usuários. A escolha do itk mpm depende muito da execução do modo php in nts.

    
por 19.05.2011 / 09:07