Criar uma Rede de Várias Camadas Seguras

Quando você cria uma rede de várias camadas seguras, cria a arquitetura em camadas.

Coloque seus recursos mais confidenciais, como os bancos de dados, na camada interna das sub-redes privadas. Defina regras de segurança para controlar o acesso à rede aos recursos. Roteie o tráfego da internet pública por meio de hosts do bastion e balanceadores de carga.

Determinar sua Estratégia de Sub-rede

Uma sub-rede é uma faixa contígua de endereços IP dentro de uma VCN. Para controlar o tráfego da rede de/para uma sub-rede, você pode anexar listas de segurança, uma tabela de roteamento e um conjunto de opções DHCP.

Considere os seguintes fatores ao determinar sua estratégia de sub-rede:
  • Não é possível alterar o tamanho de uma sub-rede depois de criá-la. Por isso, planeje os tamanhos de todas as sub-redes que você precisa antes de criá-las.
  • Uma sub-rede pode ser privada ou pública. Escolha essa opção quando criar as sub-redes e não for possível alterá-la posteriormente.
  • Uma estratégia típica é criar somente sub-redes privadas.
    • O tráfego da sua rede local pode usar uma conexão do IPSec VPN ou um link do Oracle Cloud Infrastructure FastConnect .
    • O tráfego da internet pública pode ser roteado por meio de um balanceador de carga público.
    • A ligação do tráfego para a internet pública pode ser roteada por meio de um gateway NAT (Network Address translation). O gateway NAT permite que recursos em uma sub-rede privada façam conexões de saída com a internet e recebam dados na mesma conexão. Não permite conexões de entrada da internet.
  • Se a arquitetura do seu aplicativo exigir endereços IP públicos (por exemplo, quando você estiver migrando um aplicativo local para a nuvem), use uma arquitetura que contenha sub-redes privadas e públicas.
  • Crie as sub-redes nos compartimentos nos quais você planeja provisionar os recursos que precisam das sub-redes.
  • Uma sub-rede pode ser específica de um domínio de disponibilidade (AD) ou de uma região regional. As falhas do AD não afetam as sub-redes regionais.

Listas de Segurança do Design

Para cada uma de suas sub-redes, é possível criar regras de segurança que especifiquem a origem, o destino e o tipo de tráfego que deve ser permitido para dentro e fora da sub-rede. Defina essas regras em listas de segurança e anexe as listas de segurança às sub-redes.

Para implementar controle granular sobre entrada e tráfego de rede de saída, você pode criar listas de segurança para sub-redes individuais. Você pode manter as regras que são comuns a todas as sub-redes em uma lista de segurança (global) separada. Veja a seguir alguns tipos de listas de segurança que você pode considerar:
  • Lista de segurança global: essa lista de segurança contém as regras que você deseja usar para todas as sub-redes. Normalmente, essa lista contém algumas regras.
  • Lista de segurança específica de níveis: é possível definir listas de segurança para camadas específicas na arquitetura de várias camadas (por exemplo, a lógica de negócios ou a camada do banco de dados). A elaboração de suas sub-redes cuidadosamente, você pode reduzir bastante o número de regras de segurança necessárias para a comunicação entre camadas. Por exemplo, você pode permitir que a camada lógica de negócios se comunique com a camada do banco de dados criando apenas duas regras de segurança (uma entrada e uma saída).
  • Lista de segurança de família: Essa lista destina-se às regras de segurança que se aplicam às sub-redes que constituem um único serviço ou que se destinam a um único cliente dentro de um domínio de disponibilidade. Por exemplo, as regras que se aplicam às sub-redes Web, aplicação e serviço de balanceador de carga dentro de um domínio de disponibilidade na camada lógica de negócios.
  • Listas de segurança específicas da sub-rede: essas listas contêm regras que são específicas de sub-redes individuais.
  • Lista de segurança temporária: é possível usar uma lista de segurança temporária para regras com as quais você está experimentando ou testando. Por exemplo, ao testar um caso de uso de entrada específico, você pode criar as regras necessárias em uma lista de segurança temporária.

Definir Regras de Segurança

Use regras de segurança para controlar o tráfego da rede de acordo com seus recursos. Cada regra define a direção, origem, destino, porta e protocolo para os quais o tráfego é permitido.

A tabela a seguir é um exemplo das regras que você deve definir por família de sub-rede. Determine as regras necessárias para seus aplicativos.

Família de Sub-rede Regras de Entrada Regras de Saída
DMZ
  • TCP/22 de qualquer lugar
  • TCP/80 de qualquer lugar
  • TCP/443 de qualquer lugar
TCP/22 para a VCN
Balanceador de carga
  • TCP/80 de qualquer lugar
  • TCP/443 de qualquer lugar
  • TCP/80 para a camada intermediária
  • TCP/443 para a camada intermediária
Camada intermediária
  • TCP/80 do balanceador de carga
  • TCP/443 do balanceador de carga
TCP/1521 para a camada do banco de dados
Banco de Dados TCP/1521 a partir da camada intermediária Nenhuma

Observação:

A definição de listas e regras de segurança é a primeira etapa para proteger sua rede. Antes de expor sua rede à internet, considere como tratar negação de serviço distribuído (DDoS), injeção de SQL e outros ataques de rede.

Definir Compartimentos

Use compartimentos para organizar seus recursos da nuvem em contêineres lógicos e controlar o acesso aos recursos. As políticas que você define controlam a capacidade dos usuários de criar e gerenciar recursos em compartimentos específicos.

Criar compartimentos e políticas com base em como seus recursos de nuvem são gerenciados. A meta é garantir que os usuários tenham acesso apenas aos recursos de que precisam com base em suas funções de negócios e TI. Por exemplo, se um grupo de usuários gerenciar a camada intermediária e outro grupo gerenciar a camada do banco de dados, crie um compartimento para cada camada. Mesmo que apenas um usuário humano gerencie as duas camadas, considere usar um compartimento separado para cada camada. Essa abordagem permite que você segregue as permissões facilmente quando necessário.

Os compartimentos também permitem que você rastreie e gerencie o uso de seu orçamento na nuvem. Por exemplo, você pode criar um compartimento para cada departamento da sua organização e monitorar os recursos da nuvem em cada compartimento.

Designe nomes lógicos a seus compartimentos. Usar uma convenção de nomenclatura que permite identificar facilmente a natureza e o estado dos recursos no contêiner.

A tabela a seguir fornece um exemplo dos compartimentos e da estrutura de sub-redes de uma arquitetura de várias camadas típica. Neste exemplo, xxx no nome do compartimento poderia (por exemplo) ser Dev, Test, Stage ou Prod; e yyy pode ser o nome do seu aplicativo ou carga de trabalho. Por exemplo, o nome Prod_Ordering_SharedServices indica que o compartimento contém recursos de produção usados pelos serviços compartilhados da aplicação de Ordenação.

Compartimento Sub-redes Recursos
xxx _ yyy _Networks Nenhuma VCN e gateways
xxx _ yyy _Admin Sub-rede DMZ Hosts bash
xxx _ yyy _BusinessLogic
  • Sub-redes do servidor Web
  • Sub-redes do servidor de aplicações
  • Sub-redes do balanceador de carga
  • Instâncias do servidor Web
  • Instâncias de servidor de aplicativo
  • Nós do balanceador de carga
xxx _ yyy _Database Sub-redes do banco de dados Instâncias do banco de dados
xxx _ yyy _SharedServices Sub-redes de serviços compartilhados Componentes compartilhados

Crie a rede virtual na nuvem e seus gateways no compartimento xxx _ yyy _Networks e crie as sub-redes necessárias nos outros compartimentos.

Criar Usuários

Cada pessoa ou sistema que precisa criar ou gerenciar recursos deve ser definido como um usuário no Oracle Cloud Infrastructure Identity and Access Management (IAM) ou em um provedor de identidades federadas. Crie os usuários necessários.

Quando você se inscreve em uma conta do Oracle Cloud, o Oracle configura um usuário administrador e atribui o usuário a um grupo chamado Administradores . Não é possível excluir este grupo. Você pode adicionar mais usuários a ele. Uma política predefinida permite que o grupo Administradores gerencie todos os recursos no Oracle Cloud Infrastructure .

Crie os usuários necessários. Se a sua conta usar um provedor de identidade federada (por exemplo, Oracle Identity Cloud Service ), então crie os usuários nesse provedor de identidade.

Se os usuários federados precisarem da capacidade de gerenciar chaves da API e tokens de autenticação, verifique se o provedor de identidades federadas está configurado para provisionar usuários no IAM. (Essa configuração é necessária apenas para contas criadas antes de 21 de dezembro de 2018.) Como alternativa, crie um usuário local no IAM.

Planejar Seus Grupos e Políticas

Você pode controlar as permissões de um usuário adicionando o usuário a um grupo ou removendo o usuário de um grupo. Planeje os grupos necessários e as políticas para permitir que os grupos gerenciem os recursos em compartimentos específicos.

Você pode designar um usuário a um ou mais grupos. As políticas controlam o acesso aos recursos do Oracle Cloud Infrastructure . Uma política especifica as permissões para um ou mais grupos, usuários ou compartimentos.

A tabela a seguir lista os grupos e permissões necessários, geralmente para uma arquitetura de várias camadas:

Agrupar Permissões
DBAdmins
  • Leia todos os recursos no tenancy.
  • Gerenciar os recursos do banco de dados.
IAMAdminManagers
  • Gerenciar usuários.
  • Gerencie os grupos Administrators e NetSecAdmins.

Observação : A Oracle cria o grupo Administrators quando você assina o Oracle Cloud. Os usuários deste grupo têm acesso total a todos os recursos do tenancy, incluindo o gerenciamento de usuários e grupos. Limite a associação a este grupo.

IAMManagers
  • Gerenciar usuários.
  • Gerencie todos os grupos, exceto Administrators e NetSecAdmins.
NetworkAdmins
  • Leia todos os recursos no tenancy.
  • Gerencie todos os recursos de rede, exceto listas de segurança, gateways de internet, conexões do IPSec VPN e equipamento de preferências do cliente.
NetSecAdmins
  • Leia todos os recursos no tenancy.
  • Gerencie listas de segurança, gateways da internet, equipamento de preferências do cliente, conexões do IPSec VPN e balanceadores de carga.
  • Use todos os recursos de rede virtual.
Somente para Leitura Exibir e inspecionar o tenancy. Este grupo é para usuários que não são esperados para criar ou gerenciar qualquer recurso (por exemplo, auditores e traços).
StorageAdmins
  • Leia todos os recursos no tenancy.
  • Gerenciar os recursos de armazenamento de objetos e volume em blocos.
SysAdmins
  • Leia todos os recursos no tenancy.
  • Gerenciar os recursos de computação e armazenamento.
  • Gerencie compartimentos.
  • Use balanceadores de carga, sub-redes e VNICs.

No seu provedor de identidades federadas (por exemplo, Oracle Identity Cloud Service ), você deverá criar os grupos necessários e mapear cada grupo para o grupo correspondente no Oracle Cloud Infrastructure Identity and Access Management .