Are the security benefits really sufficient to warrant two networks and dual homed hosts in the DMZ for a smaller 12-server configuration? The application is a mission critical web app.
Absolutamente . Serviços voltados para publicação devem ser isolados em uma DMZ. Período. Tudo o que a grande e ruim Internet pode alcançar deve ser separado da sua rede interna e de seus serviços. Isso limita drasticamente o escopo e o dano que uma violação de segurança causará. Esta é uma boa aplicação do Princípio do Menor Privilégio e da Separação Funcional.
In most enterprise network configurations I've worked with they dual home the webservers so one NIC sits on the DMZ network and one sits on an Internal (non-internet routable) network.
Eu levaria isso um passo adiante. Do jeito que você descreve, seus servidores teriam o potencial de atuar como uma ponte entre a Internet e o resto de sua rede, ignorando completamente a DMZ no caso de haver uma violação de segurança. Seus servidores devem permanecer na DMZ e ficar acessíveis apenas por meio de um ponto de controle, como um firewall ou VPN. Eles não devem ter uma conexão direta com qualquer coisa na sua rede interna. Isso invalidaria todo o sentido de uma DMZ.
Aqui está um diagrama mostrando o design lógico . A implementação do design lógico é realmente sua. O ponto principal que estou tentando fazer é que você deseja que qualquer acesso entre seus servidores internos e seus servidores DMZ seja embora algum tipo de ponto de estrangulamento onde você possa controlar, monitorar e registrar essas conexões. Aqui está um exemplo que, esperamos, esclarecerá o que estou falando:
Digamos que seu provedor forneceu 203.0.113.0/28 para o espaço de endereço. Você decide dividir em duas sub-redes separadas: 203.0.113.0/29 para máquinas DMZ e 203.0.113.8/29 para máquinas internas. Seu firewall fica entre sua configuração inteira e a internet e possui três interfaces: uma para a conexão upstream de seu provedor, uma para 203.0.113.0/29 e outra para 203.0.113.8/29. Qualquer comunicação entre qualquer uma dessas redes passará pelo firewall, onde você pode fazer as seguintes coisas importantes: A) seletivamente passar apenas o tráfego que você precisa entre os hosts, B) monitorar e registrar esse tráfego. O objetivo real é que não haja comunicação direta entre nenhuma dessas redes. Este é o ideal pelo qual você deve se esforçar.