Isso é um pouco contraditório, mas em termos de segurança, não diferencio entre um servidor interno e um servidor externo. Cedo ou tarde, alguém cometerá um erro em um firewall, o gerenciamento insistirá em que um servidor seja exposto por causa de um cliente importante, Betty na contabilidade de alguma forma obterá um cliente VPN na máquina doméstica infectada, etc.
Dito isto, as camadas são suas amigas e você deve colocar na lista negra por padrão.
Camadas - você deve ter várias camadas de segurança. Por exemplo, um firewall de hardware e um firewall de software. Teoricamente, eles servem ao mesmo objetivo, mas ter várias camadas protege contra erros e atenua as conseqüências de uma única camada ser explorada.
Outro aspecto das camadas é o "caseiro", que é essencialmente várias DMZs. Em algum momento, você precisa ter algum nível de confiança entre suas máquinas e as pessoas que acessam suas contas. Se você pode restringir esses pontos de interação, pode controlar rigidamente o tipo de tráfego em que confia a qualquer momento. Por exemplo, se você separar os servidores de interface / aplicativo dos servidores de banco de dados, reduz o nível de confiança. Se seus servidores de aplicativos ficarem comprometidos, esses invasores ganharão uma posição mínima em sua infraestrutura (ou seja, para continuar o ataque e tentar explorar seus outros servidores, eles só terão esses pontos de confiança estabelecidos).
Em relação à lista negra, por padrão, você deve basicamente encerrar tudo e exigir justificativa (mesmo que seja apenas por você) para cada porta que abrir, nome de usuário que permita acesso, aplicativo que instalar etc.