Implantar grupos de segurança de rede usando o portal do Azure
Um NSG (Grupo de Segurança de Rede) no Azure permite filtrar o tráfego de rede de e para recursos do Azure em uma rede virtual do Azure. Os grupos de segurança de rede contêm regras de segurança que permitem ou negam o tráfego de entrada ou de saída de e para vários tipos de recursos do Azure. Para cada regra, pode especificar a origem e o destino, a porta e o protocolo.
Regras de segurança NSG
Os grupos de segurança de rede contêm zero ou tantas regras conforme pretender, dentro dos limites das subscrições do Azure. Cada regra especifica as propriedades seguintes:
- Nome - Deve ser um nome exclusivo dentro do grupo de segurança de rede.
- Prioridade - Pode ser qualquer número entre 100 e 4096. As regras são processadas por ordem de prioridade, sendo os números mais baixos processados antes dos mais elevados, uma vez que têm uma prioridade superior. Quando o tráfego corresponder a uma regra, o processamento para. Como resultado, quaisquer regras que existam com prioridades mais baixas (números mais altos) que tenham os mesmos atributos que regras com prioridades mais altas não são processadas.
- Origem ou destino - Pode ser definido como Qualquer ou um endereço IP individual, ou bloco de roteamento entre domínios sem classe (CIDR) (10.0.0.0/24, por exemplo), etiqueta de serviço ou grupo de segurança de aplicativo.
- Protocolo - Pode ser TCP, UDP, ICMP, ESP, AH ou Qualquer.
- Direção - Pode ser configurado para ser aplicado ao tráfego de entrada ou de saída.
- Intervalo de portas - Pode ser especificado como uma porta individual ou um intervalo de portas. Por exemplo, pode indicar 80 ou 10000-10005. Especificar intervalos permite-lhe criar menos regras de segurança.
- Ação - Pode ser definido como Permitir ou negar.
O firewall avalia as regras de segurança do grupo de segurança de rede por prioridade, usando as informações de 5 tuplas (origem, porta de origem, destino, porta de destino e protocolo) para permitir ou negar o tráfego.
Regras de segurança predefinidas
O Azure cria as seguintes regras predefinidas em cada grupo de segurança de rede que criar:
Direção | Nome | Prioridade | Source | Portas de origem | Destino | Portos de destino | Protocolo | Acesso |
---|---|---|---|---|---|---|---|---|
Interna | AllowVNetInBound |
65000 | VirtualNetwork |
0-65535 | VirtualNetwork |
0-65535 | Qualquer | Permitir |
Interna | AllowAzureLoadBalancerInBound |
65001 | AzureLoadBalancer |
0-65535 | 0.0.0.0/0 | 0-65535 | Qualquer | Permitir |
Interna | DenyAllInbound |
65500 | 0.0.0.0/0 | 0-65535 | 0.0.0.0/0 | 0-65535 | Qualquer | Negar |
De Saída | AllowVnetOutBound |
65000 | VirtualNetwork |
0-65535 | VirtualNetwork |
0-65535 | Qualquer | Permitir |
De Saída | AllowInternetOutBound |
65001 | 0.0.0.0/0 | 0-65535 | Internet |
0-65535 | Qualquer | Permitir |
De Saída | DenyAllOutBound |
65500 | 0.0.0.0/0 | 0-65535 | 0.0.0.0/0 | 0-65535 | Qualquer | Negar |
O diagrama e os marcadores a seguir ilustram diferentes cenários de como os grupos de segurança de rede podem ser implantados para permitir o tráfego de rede de e para a Internet pela porta TCP 80:
Para tráfego de entrada, o Azure processa primeiro as regras em um grupo de segurança de rede associado a uma sub-rede, se houver, e, em seguida, as regras em um grupo de segurança de rede associado à interface de rede, se houver.
- VM1:
Subnet1
está associado ao NSG1, portanto, as regras de segurança são processadas e o VM1 está noSubnet1
. A menos que você tenha criado uma regra que permita a entrada da porta 80, aDenyAllInbound
regra de segurança padrão nega o tráfego e nunca é avaliada pelo NSG2, já que o NSG2 está associado à interface de rede. Se o NSG1 tiver uma regra de segurança que permita a porta 80, o NSG2 processará o tráfego. Para permitir a porta 80 na máquina virtual, tanto NSG1, como NSG2, têm de ter uma regra que permite a porta 80 a partir da Internet. - VM2: As regras no NSG1 são processadas porque o VM2 também está no
Subnet1
. Como o VM2 não tem um grupo de segurança de rede associado à sua interface de rede, ele recebe todo o tráfego permitido pelo NSG1 ou é negado todo o tráfego negado pelo NSG1. O tráfego é permitido ou negado para todos os recursos na mesma sub-rede se um grupo de segurança de rede estiver associado a uma sub-rede. - VM3: Como não há nenhum grupo de segurança de rede associado ao
Subnet2
, o tráfego é permitido na sub-rede e processado pelo NSG2, porque o NSG2 está associado à interface de rede conectada ao VM3. - VM4: O tráfego é permitido para VM4, porque um grupo de segurança de rede não está associado ao
Subnet3
, ou à interface de rede na máquina virtual. Todo o tráfego de rede é permitido através de uma sub-rede e de uma interface de rede se não houver nenhum grupo de segurança de rede associado às mesmas.
Para o tráfego de saída, o Azure processa primeiro as regras em um grupo de segurança de rede associado a uma interface de rede, se houver, e depois as regras em um grupo de segurança de rede associado à sub-rede, se houver.
- VM1: As regras de segurança no NSG2 são processadas. A menos que você crie uma regra de segurança que negue a porta 80 de saída para a Internet, a regra de segurança padrão AllowInternetOutbound permite o tráfego no NSG1 e no NSG2. Se o NSG2 tiver uma regra de segurança que negue a porta 80, o tráfego será negado e o NSG1 nunca o avaliará. Para negar a porta 80 a partir da máquina virtual, um ou ambos os grupos de segurança de rede têm de ter uma regra que negue a porta 80 para a Internet.
- VM2: Todo o tráfego é enviado através da interface de rede para a sub-rede, uma vez que a interface de rede ligada ao VM2 não tem um grupo de segurança de rede associado a ela. As regras em NSG1 são processadas.
- VM3: Se o NSG2 tiver uma regra de segurança que negue a porta 80, o tráfego será negado. Se o NSG2 tiver uma regra de segurança que permita a porta 80, a porta 80 terá permissão para sair para a Internet, já que um grupo de segurança de rede não está associado ao
Subnet2
. - VM4: Todo o tráfego de rede é permitido a partir do VM4, porque um grupo de segurança de rede não está associado à interface de rede conectada à máquina virtual ou ao
Subnet3
.
Grupos de Segurança de Aplicações
Um Grupo de Segurança de Aplicativo (ASG) permite configurar a segurança de rede como uma extensão natural da estrutura de um aplicativo, permitindo agrupar máquinas virtuais e definir políticas de segurança de rede com base nesses grupos. Pode reutilizar a política de segurança em escala sem a manutenção manual de endereços IP explícitos. A plataforma lida com a complexidade dos endereços IP explícitos e dos múltiplos conjuntos de regras, permitindo-lhe focar-se na lógica de negócio.
Para minimizar o número de regras de segurança de que precisa, bem como a necessidade de as alterar, planei os grupos de segurança de aplicações de que precisa e crie regras com etiquetas de serviço ou grupos de segurança de aplicações em vez de endereços IP individuais ou intervalos de endereços IP, sempre que possível.
Filtrar o tráfego de rede com um NSG usando o portal do Azure
Você pode usar um grupo de segurança de rede para filtrar o tráfego de entrada e saída de rede de uma sub-rede de rede virtual. Os grupos de segurança de rede contêm regras de segurança que filtram o tráfego de rede por endereço IP, porta e protocolo. As regras de segurança são aplicadas a recursos implementados numa sub-rede.
Os principais estágios para filtrar o tráfego de rede com um NSG usando o portal do Azure são:
- Criar um grupo de recursos - isso pode ser feito com antecedência ou à medida que você cria a rede virtual na próxima etapa. Todos os outros recursos criados devem estar na mesma região especificada aqui.
- Criar uma rede virtual - ela deve ser implantada no mesmo grupo de recursos criado anteriormente.
- Criar grupos de segurança de aplicativos - os grupos de segurança de aplicativos criados aqui permitem agrupar servidores com funções semelhantes, como servidores Web ou servidores de gerenciamento. Você criaria dois grupos de segurança de aplicativos aqui; um para servidores Web e um para servidores de gestão (por exemplo, MyAsgWebServers e MyAsgMgmtServers)
- Criar um grupo de segurança de rede - o grupo de segurança de rede protege o tráfego de rede na sua rede virtual. Este NSG será associado a uma sub-rede na próxima etapa.
- Associar um grupo de segurança de rede a uma sub-rede - é aqui que você associa o grupo de segurança de rede criado anteriormente à sub-rede da rede virtual criada no estágio 2 acima.
- Criar regras de segurança - é aqui que você cria suas regras de segurança de entrada. Aqui você criaria uma regra de segurança para permitir as portas 80 e 443 para o grupo de segurança de aplicativos para seus servidores Web (por exemplo, MyAsgWebServers). Em seguida, você criaria outra regra de segurança para permitir o tráfego RDP na porta 3389 para o grupo de segurança do aplicativo para seus servidores de gerenciamento (por exemplo, MyAsgMgmtServers). Essas regras controlam de onde você pode acessar sua VM remotamente e seu servidor Web do IIS.
- Criar máquinas virtuais - é aqui que você cria o servidor Web (por exemplo, MyVMWeb) e o servidor de gerenciamento (por exemplo, MyVMMgmt) máquinas virtuais que serão associadas ao respetivo grupo de segurança de aplicativo na próxima etapa.
- Associar NICs a um ASG - é aqui que você associa a placa de interface de rede (NIC) conectada a cada máquina virtual ao grupo de segurança de aplicativo relevante que você criou no estágio 3 acima.
- Testar filtros de tráfego - a etapa final é onde você testa se a filtragem de tráfego está funcionando conforme o esperado.
- Para testar isso, você tentaria se conectar à máquina virtual do servidor de gerenciamento (por exemplo, MyVMMgmt) usando uma conexão RDP, verificando assim se você pode se conectar porque a porta 3389 está permitindo conexões de entrada da Internet para o grupo de segurança do aplicativo de servidores de gerenciamento (por exemplo, MyAsgMgmtServers).
- Enquanto estiver conectado à sessão RDP no servidor de gerenciamento (por exemplo, MyVMMgmt), você testará uma conexão RDP da máquina virtual do servidor de gerenciamento (por exemplo, MyVMMgmt) para a máquina virtual do servidor Web (por exemplo, MyVMWeb), que novamente deve ser bem-sucedida porque as máquinas virtuais na mesma rede podem se comunicar com cada uma em qualquer porta por padrão.
- No entanto, você não poderá criar uma conexão RDP com a máquina virtual do servidor Web (por exemplo, MyVMWeb) a partir da Internet, porque a regra de segurança para o grupo de segurança do aplicativo de servidores Web (por exemplo, MyAsgWebServers) impede conexões com a porta 3389 de entrada da Internet. O tráfego de entrada da Internet é negado a todos os recursos por padrão.
- Enquanto estiver conectado à sessão RDP no servidor Web (por exemplo, MyVMWeb), você poderá instalar o IIS no servidor Web, desconectar-se da sessão RDP da máquina virtual do servidor Web e desconectar-se da sessão RDP da máquina virtual do servidor de gerenciamento. No portal do Azure, você determinaria o endereço IP público da máquina virtual do servidor Web (por exemplo, MyVMWeb) e confirmaria que pode acessar a máquina virtual do servidor Web pela Internet abrindo um navegador da Web em seu computador e navegando até http:// (por exemplo, http://23.96.39.113). Você deve ver a tela de boas-vindas padrão do IIS, porque a porta 80 tem permissão de acesso de entrada da Internet para o grupo de segurança de aplicativos de servidores Web (por exemplo, MyAsgWebServers). A interface de rede conectada à máquina virtual do servidor Web (por exemplo, MyVMWeb) está associada ao grupo de segurança de aplicativos de servidores Web (por exemplo, MyAsgWebServers) e, portanto, permite a conexão.
Para exibir as etapas detalhadas de todas essas tarefas, consulte Tutorial: Filtrar o tráfego de rede com um grupo de segurança de rede usando o portal do Azure.