Documentação do Oracle Cloud Infrastructure

Grupos de Segurança de Rede

O serviço Networking oferece duas funcionalidades de firewall virtuais para controlar o tráfego no nível do pacote:

  • Grupos de segurança de rede: detalhes nesse tópico. Os grupos de segurança de rede só são suportados para serviços específicos.
  • Listas de segurança: o tipo original de firewall virtual oferecido pelo serviço Networking. Consulte Listas de Segurança.

Essas duas funcionalidades usam regras de segurança. Para obter informações importantes sobre como as regras de segurança funcionam e verificar uma comparação geral entre listas de segurança e grupos de segurança de rede, consulte Regras de Segurança.

Destaques

  • Os grupos de segurança de rede (NSGs) atuam como um firewall virtual para as suas instâncias do Compute e outros tipos de recursos. Um NSG consiste em um conjunto de regras de segurança de entrada e saída que se aplicam somente a um conjunto de VNICs da sua escolha em uma única VCN (por exemplo: todas as instâncias do serviço Compute que agem como servidores Web na camada Web de um aplicativo de várias camadas na sua VCN).
  • Em comparação com as listas de segurança, os NSGs permitem que você separe a arquitetura da sub-rede da VCN dos requisitos de segurança do seu aplicativo. Consulte Comparação entre Listas de Segurança e Grupos de Segurança de Rede.
  • Você pode usar NSGs com determinados tipos de recursos. Para obter mais informações, consulte Suporte para Grupos de Segurança de Rede.
  • As regras de segurança NSG funcionam da mesma forma que as regras de lista de segurança. No entanto, para a origem de uma regra de segurança NSG (para regras de entrada) ou para o destino de uma de regra de segurança NSG (para regras de saída), você pode especificar um NSG em vez de um CIDR. Isso significa que você pode criar facilmente regras de segurança para controlar o tráfego entre dois NSGs na mesma VCN ou o tráfego em um único NSG. Consulte Partes de uma Regra de Segurança.
  • Diferentemente das listas de segurança, a VCN não tem um NSG padrão. Além disso, inicialmente, cada NSG é criado vazio. Ele não tem regras de segurança padrão.
  • Em comparação com as listas de segurança, os grupos de segurança de rede têm limites separados e distintos. Consulte Limites.

Suporte para Grupos de Segurança de Rede

Os NSGs estão disponíveis para você criar e usar. No entanto, eles ainda não são suportados por todos os serviços relevantes do Oracle Cloud Infrastructure.

Atualmente, os seguintes tipos de recursos pais suportam o uso de NSGs:

  • Instâncias do Compute: ao criar uma instância, você pode especificar um ou mais NSGs para a VNIC principal da instância. Se você adicionar uma VNIC secundária a uma instância, poderá especificar um ou mais NSGs para essa VNIC. Você também pode atualizar VNICs existentes em uma instância para que elas estejam em um ou mais NSGs.
  • Balanceadores de carga: ao criar um balanceador de carga, você pode especificar um ou mais NSGs para o balanceador de carga (e não para o conjunto backend). Você também pode atualizar um balanceador de carga existente para usar um ou mais NSGs.
  • Sistemas de Banco de Dados: ao criar um sistema de Banco de Dados, você pode especificar um ou mais NSGs. Você também pode atualizar um sistema de banco de dados existente para usar um ou mais NSGs.
  • Autonomous Database s: Quando você cria um Autonomous Database no Exadata Infrastructure dedicado, é possível especificar um ou mais NSGs para o recurso de infraestrutura. Você também pode atualizar uma instância existente do Exadata Infrastructure dedicado para usar NSGs.
  • Pontos de acesso NFS: Ao criar um ponto de acesso NFS para um sistema de arquivos, você pode especificar um ou mais NSGs. Você também pode atualizar um ponto de acesso NFS existente para usar um ou mais NSGs.

Para os tipos de recursos que ainda não suportam NSGs, continue usando listas de segurança para controlar o tráfego de entrada e saída desses recursos pais.

Visão Geral de Grupos de Segurança de Rede

Um grupo de segurança de rede (NSG) fornece um firewall virtual para um conjunto de recursos de nuvem que todos têm a mesma postura de segurança. Por exemplo: um grupo de instâncias do Compute em que todas executam as mesmas tarefas e, portanto, todas devem usar o mesmo conjunto de portas.

Um NSG consiste em dois tipos de itens (conforme ilustrado no seguinte diagrama):

  • VNICs: uma ou mais VNICs (por exemplo, as VNICs anexadas ao conjunto de instâncias do Compute em que todas têm a mesma postura de segurança). Todas as VNICs devem estar na VCN à qual o NSG pertence. Consulte também Sobre VNICs e Recursos Pais.
  • Regras de segurança: regras de segurança que definem os tipos de tráfego permitidos dentro e fora das VNICs do grupo. Por exemplo: tráfego de entrada SSH na porta TCP 22 proveniente de uma origem específica.

Um grupo de segurança de rede inclui VNICs e regras de segurança.

Se você tiver recursos com diferentes posturas de segurança na mesma VCN, poderá criar regras de segurança NSG para controlar o tráfego entre os recursos com uma postura e os recursos com outra postura. Por exemplo, no diagrama a seguir, NSG1 tem VNICs em execução em uma camada de um aplicativo de arquitetura de várias camadas. NSG2 tem VNICs em execução em uma segunda camada. Ambos NSGs devem pertencer à mesma VCN. O pressuposto é que ambos os NSGs precisam iniciar conexões com outro NSG.

Para NSG1, você configura regras de segurança de saída que especificam NSG2 como destino e regras de segurança de entrada que especificam NSG2 como origem. Assim como NSG2, você configura regras de segurança de saída que especificam NSG1 como destino e regras de segurança de entrada que especificam NSG1 como origem. Pressupõe-se que as regras nesse exemplo têm monitoramento de estado.

Você pode configurar regras de segurança para controlar o tráfego entre dois grupos de segurança de rede.

O diagrama anterior pressupõe que cada NSG precisa iniciar conexões com o outro NSG.

O próximo diagrama presume que, em vez disso, você só deseja permitir conexões iniciadas de NSG1 para NSG2. Para fazer isso, remova a regra de entrada de NSG1 e a regra de saída de NSG2. As regras restantes não permitem conexões iniciadas de NSG2 para NSG1.

Essas regras de segurança permitem conexões iniciadas em apenas uma direção: de NSG1 para NSG2.

O próximo diagrama pressupõe que você queira controlar o tráfego entre VNICs no mesmo NSG. Para fazer isso, defina a origem da regra (para entrada) ou o destino (para saída) como o próprio NSG da regra.

Você pode configurar regras de segurança para controlar o tráfego entre VNICs no mesmo NSG.

Uma VNIC pode ter no máximo cinco NSGs. Um pacote será permitido se qualquer regra em qualquer um dos NSGs da VNIC possibilitar o tráfego (ou se o tráfego fizer parte de uma conexão existente que está sendo rastreada). Haverá uma limitação se as listas contiverem regras de segurança com e sem monitoramento de estado que abranjam o mesmo tráfego. Para obter mais informações, consulte Regras com e sem Monitoramento de Estado.

Os grupos de segurança de rede são entidades regionais. Para limites relacionados a grupos de segurança de rede, consulte Limites.

Regras de Segurança

Se ainda não estiver familiarizado com os conceitos básicos das regras de segurança NSG, consulte estas seções no tópico sobre regras de segurança:

Como Trabalhar com Grupos de Segurança de Rede

Advertência

Evite inserir informações confidenciais ao designar descrições, tags ou nomes amigáveis aos seus recursos na nuvem por meio da Console, da API ou da CLI do Oracle Cloud Infrastructure.

Processo Geral para Trabalhar com NSGs

  1. Crie um NSG.
  2. Adicione regras de segurança ao NSG.
  3. Adicione recursos pais (ou mais especificamente, VNICs) ao NSG. Você pode fazer isso quando criar o recurso pai ou atualizar o recurso pai e adicioná-lo a um ou mais NSGs. Quando você cria uma instância do serviço Compute e a adiciona a um NSG, a VNIC principal da instância é adicionada ao NSG. Separadamente, você pode criar VNICs secundárias e, opcionalmente, adicioná-las a NSGs.

Antes de excluir um NSG, remova todas as VNICs dele.

Consulte as seções a seguir para obter mais detalhes.

Criando NSGs

Cada VCN vem com uma lista de segurança padrão que tem regras de segurança padrão para permitir uma conectividade básica. No entanto, não há um NSG padrão na VCN.

Quando você cria um NSG, ele inicialmente está vazio, sem regras de segurança ou VNICs. Se você estiver usando a Console, poderá adicionar regras de segurança ao NSG durante o processo de criação.

Opcionalmente, você pode designar um nome amigável ao NSG durante o processo de criação. Esse nome não precisa ser exclusivo e você pode alterá-lo posteriormente. O sistema Oracle designa automaticamente ao NSG um identificador exclusivo chamado OCID (Oracle Cloud ID). Para obter mais informações, consulte: Identificadores de Recurso.

Para fins de controle de acesso, você deve especificar o compartimento onde deseja que o NSG resida. Consulte um administrador na sua organização se não tiver certeza de qual compartimento usar. Para obter mais informações, consulte Controle de Acesso.

Atualizando Regras de Segurança e a Associação de Membros a Grupos

Após o NSG ser criado, você poderá adicionar ou remover regras de segurança para permitir os tipos de tráfego de entrada e saída que as VNICs do grupo requerem.

Se você estiver familiarizado com listas de segurança e usar a API REST, observe que o modelo para atualizar as regras de segurança existentes é diferente entre as listas de segurança e os NSGs. Com NSGs, cada regra de um grupo específico tem um identificador exclusivo designado pelo sistema Oracle (exemplo: 04ABEC). Quando chama UpdateNetworkSecurityGroupSecurityRules, você fornece os IDs das regras específicas que deseja atualizar. Para fins de comparação, com listas de segurança, as regras não têm identificador exclusivo. Quando chamar UpdateSecurityList, você deverá passar na validação da lista de regras completa, incluindo as regras que não estão sendo atualizadas na chamada.

Ao gerenciar a associação de membros à VNIC de um NSG, você faz isso como parte do trabalho com o recurso pai, e não com o NSG propriamente dito. Para obter mais informações, consulte Sobre VNICs e Recursos Pais.

Especificando um NSG em uma Regra de Segurança

Conforme mencionado anteriormente em Visão Geral de Grupos de Segurança de Rede, você pode especificar um NSG como origem (para regras de entrada) ou destino (para regras de saída) em uma regra de segurança do específica do NSG. Os dois NSGs devem estar na mesma VCN. Por exemplo, se NSG1 e NSG2 pertencerem à mesma VCN, você poderá adicionar a NSG1 uma regra de entrada que lista NSG2 como a origem. Se alguém excluir NSG2, a regra passará a ser inválida. A API REST usa um booliano isValid no objeto SecurityRule para denotar esse status.

Excluindo NSGs

Para que um NSG possa ser excluído, ele não deve conter VNICs ou recursos pais. Quando um recurso pai (ou uma VNIC de instância do Compute) é excluído, ele é automaticamente removido dos NSGs em que estava. Talvez você não tenha permissão para excluir determinado recurso pai. Entre em contato com o administrador para determinar quem é o proprietário de determinado recurso.

A Console exibe uma lista de recursos pais que estão em um NSG, com um link para cada recurso pai. Se o recurso pai for uma instância do serviço Compute, a Console também exibirá as VNICs da instância ou VNICs que estão no NSG.

Para remover um recurso pai dos NSGs sem excluir o recurso, primeiro exiba os detalhes do recurso pai na Console. Você pode ver uma lista dos NSGs aos quais o recurso pertence. A partir daí, você pode clicar em Editar e remover o recurso de todos os NSGs. Se você estiver trabalhando com uma instância do serviço Compute, exiba os detalhes da VNIC específica que deseja remover dos NSGs.

Se você estiver usando a API REST: o ListNetworkSecurityGroupVnics listará os recursos pais e as VNICs contidas em um NSG. Use a operação Atualizar do recurso para removê-lo dos NSGs. Por exemplo, para uma instância do serviço Compute, use a operação UpdateVnic. Para um balanceador de carga, use a operação UpdateNetworkSecurityGroups e assim por diante.

Política do IAM Necessária

Para usar o Oracle Cloud Infrastructure, você deverá receber o tipo de acesso necessário em uma política criada por um administrador, independentemente de estar usando a Console ou a API REST com um SDK, a CLI ou outra ferramenta. Se você tentar executar uma ação e receber uma mensagem de que não tem permissão ou que não está autorizado, confirme com o administrador o tipo de acesso que recebeu e em qual compartimento deverá trabalhar.

Para administradores: a política em Permitir que os administradores de rede gerenciem uma rede na nuvem abrange o gerenciamento de todos os componentes do serviço Networking, incluindo NSGs.

Se tiver administradores de segurança que precisam gerenciar NSGs, mas não outros componentes do serviço Networking, você poderá criar uma política mais restritiva:

Allow group NSGAdmins to manage network-security-groups in tenancy
			
Allow group NSGAdmins to manage vcns in tenancy 
      where ANY {request.operation = 'CreateNetworkSecurityGroup',
                 request.operation = 'DeleteNetworkSecurityGroup'}

Allow group NSGAdmins to read vcns in tenancy

Allow group NSGAdmins to use VNICs in tenancy

A primeira instrução permite que o grupo NSGAdmins crie e gerencie NSGs e as regras de segurança.

A segunda instrução é necessária porque a criação ou exclusão de um NSG afeta a VCN em que o NSG está. A instrução restringe as permissões relacionadas à VCN somente àquelas necessárias para criar ou excluir um NSG. A instrução não permite que o grupo NSGAdmins crie ou exclua VCNs ou trabalhe com qualquer recurso em uma VCN, exceto NSGs.

A terceira instrução é necessária para listar as VCNs, que é um pré-requisito para criar ou deletar um NSG em uma VCN. Para obter informações sobre por que a segunda e a terceira instruções são obrigatórias, consulte Condições.

A quarta instrução é necessária se o grupo NSGAdmins precisar colocar VNICs em um NSG. Quem cria o recurso pai da VNIC (por exemplo, uma instância do serviço Compute) já deverá ter esse nível de permissão para criar o recurso pai.

Para obter mais informações sobre políticas do serviço Networking, consulte Políticas do IAM para o Serviço Networking.

Usando a Console

Para exibir os recursos e as regras de segurança em um NSG
Para criar um NSG
Para adicionar ou remover um recurso de um NSG
Para excluir um NSG
Para gerenciar as regras de segurança de um NSG
Para gerenciar as tags de um NSG
Para mover um NSG para outro compartimento

Usando a API

Para obter informações sobre o uso da API e de solicitações de assinatura, consulte APIs REST e Credenciais de Segurança. Para obter informações sobre SDKs, consulte SDKs (Software Development Kits) e CLI (Command Line Interface).

Para gerenciar os grupos de segurança de rede de uma VCN, use estas operações:

Em comparação com as listas de segurança, há algumas diferenças no modelo da API REST para NSGs:

  • Com listas de segurança, há um objeto IngressSecurityRule e um objeto EgressSecurityRule separados. Com grupos de segurança de rede, só há um objeto SecurityRule e o atributo direction do objeto determina se a regra se destina a tráfego de entrada ou saída.
  • Com as listas de segurança, as regras fazem parte do objeto SecurityList e você trabalha com as regras chamando as operações da lista de segurança (como UpdateSecurityList). Com NSGs, as regras não fazem parte do objeto NetworkSecurityGroup. Em vez disso, você usa operações separadas para trabalhar com as regras do NSG fornecido (exemplo: UpdateNetworkSecurityGroupSecurityRules).
  • O modelo para atualização das regras de segurança existentes é diferente para listas de segurança e NSGs. Com NSGs, cada regra de um grupo específico tem um identificador exclusivo designado pelo sistema Oracle (exemplo: 04ABEC). Quando chama UpdateNetworkSecurityGroupSecurityRules, você fornece os IDs das regras específicas que deseja atualizar. Para fins de comparação, com listas de segurança, as regras não têm identificador exclusivo. Quando chamar UpdateSecurityList, você deverá passar na validação da lista de regras completa, incluindo as regras que não estão sendo atualizadas na chamada.
  • Há um limite de 25 regras durante a chamada das operações para adicionar, remover ou atualizar regras de segurança.