Mover arquivos carregados através de um DMZ

1

Estou fazendo a transição de um aplicativo da Web (executado no LAMP) de um único host para uma configuração com o aplicativo php / apache em execução em um servidor voltado para o público em um DMZ. O aplicativo se conecta ao mysql que está em uma rede privada atrás da DMZ. Meu critério principal que me foi dado é manter todos os dados do usuário (no banco de dados ou arquivos enviados pelo usuário) fora da DMZ por completo e só permitir acesso a ele por meio de uma ACL. Ou seja segregando a camada de aplicação da camada de dados, tanto pela rede quanto pela autenticação / acesso.

Eu tenho essa segregação muito bem com o mysql, mas não estou com boas idéias de como acessar o armazenamento de arquivos no servidor de arquivos do servidor web. Eu tenho isso em execução atualmente em uma exportação NFS montada no servidor web, mas isso deixa o servidor de arquivos e todos os seus dados abertos para qualquer pessoa com acesso ao servidor web (basicamente) sem autenticação.

Eu percebo que qualquer solução séria provavelmente envolverá tempo de desenvolvimento significativo, e estou preparado para fazer isso. Também está preparado para gastar algum dinheiro em uma solução pronta, se necessário, para fazer o trabalho da maneira certa. Eu sinto que estou sentindo falta de algo óbvio aqui.

    
por Stephen 30.01.2013 / 07:54

1 resposta

2

Você realmente não pode ter as duas coisas: Se você quiser acessar um recurso no servidor de arquivos do servidor web, você precisa abrir um buraco de firewall para ele.
Não há realmente nenhuma diferença para o NFS versus MySQL - Se alguém invadir seu servidor web, ele pode obter seu banco de dados MySQL (ou pelo menos pegar as credenciais e acessar qualquer DB que o usuário possa acessar). Da mesma forma, se invadirem o servidor da Web, poderão acessar qualquer coisa que o servidor da Web esteja autorizado a acessar, sujeito a quaisquer restrições que você colocar na exportação do NFS.

A melhor coisa que você pode fazer nessa situação é restringir a exportação do NFS à janela prática mínima do servidor de arquivos (protegendo-o de um comprometimento do servidor da Web) e usar autenticação strong para o cliente NFS via Kerberos por exemplo (protegendo-o de uma violação colateral da DMZ). Há também algumas perguntas aqui marcadas com que falam sobre autorização e autenticação preocupações, segurança, etc., que podem lhe dar algumas dicas sobre isso.

    
por 30.01.2013 / 09:04