As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Como determinar os requisitos de segurança da sua VPC
Importante
É prática recomendada projetar e testar a arquitetura de segurança de tráfego de saída da sua VPC em um ambiente de teste. Testar mudanças na arquitetura em um ambiente de desenvolvimento reduz o risco de acionar comportamentos não intencionais do sistema.
Antes de fazer alterações nos padrões de tráfego de saída da rede, é importante entender os padrões de tráfego que sua aplicação precisa para operar conforme o esperado. Essas informações podem ajudar a identificar quais padrões de tráfego permitir e quais negar ao redefinir a arquitetura da sua rede.
Para analisar os padrões de tráfego de saída existentes da sua VPC, ative primeiro os Logs de fluxo da VPC. Em seguida, use um ambiente de teste para executar a aplicação em vários cenários de uso e analisar o tráfego simulado nos logs de fluxo.
Os logs de fluxo da VPC registram o tráfego IP de entrada e saída da sua VPC. Em seguida, a Amazon VPC envia os registros para o Amazon Simple Storage Service (Amazon S3) ou para a Amazon. CloudWatch É possível visualizar e analisar os logs usando uma das seguintes ferramentas:
(Para Amazon S3) Amazon Athena
(Para CloudWatch) CloudWatch Logs Insights
Para obter mais informações e consultas de exemplo, consulte:
Consultar os logs de fluxo da Amazon VPC (Guia do usuário do Amazon Athena)
Como posso usar CloudWatch as consultas do Logs Insights com meu registro de fluxo de VPC?
(Centro de AWS conhecimento) CloudWatch Sintaxe de consulta do Logs Insights (Guia do usuário do Amazon CloudWatch Logs)
Para obter detalhes sobre os tipos de informações capturados pelos logs de fluxo da VPC, consulte Exemplos de registro em log de fluxo no Guia do usuário da Amazon VPC.
Observação
Os logs de fluxo da VPC não capturam informações da camada de aplicação (camada 7), como nomes de host de DNS. Se seus requisitos de segurança exigirem a análise dos dados da camada de aplicação, é possível implantar o AWS Network Firewall
Práticas recomendadas para analisar o tráfego de saída da VPC usando logs de fluxo da VPC
Ao analisar seus registros de fluxo de VPC usando consultas do Amazon Athena CloudWatch ou do Logs Insights, certifique-se de fazer o seguinte:
Identifique e analise o tráfego de entrada e saída que flui pelas interfaces de rede elásticas conectadas aos recursos usados pela aplicação.
Identifique e analise o tráfego da aplicação que flui pela interface de rede conectada ao gateway NAT.
Certifique-se de capturar todo o tráfego de saída de uma interface de rede transformando o endereço de origem em sua consulta no endereço IP privado da interface de rede.
Escreva suas consultas para focar apenas em padrões de tráfego inesperados. (Por exemplo, se a aplicação se comunica com entidades de terceiros, como um endpoint da API HTTPS, as consultas podem ser criadas para não incluir essas entidades.)
Investigue a validade de cada porta e endereço IP de destino. (Por exemplo, uma porta de destino de saída 22 pode ser normal para um bastion host ou um host que clona repositórios do Git usando SSH.)
Observação
Se você estiver trabalhando com o Amazon Athena pela primeira vez, certifique-se de configurar um local para o resultado da consulta. Para obter instruções, consulte Especificar um local para resultados de consultas usando o console do Athena no Guia do usuário do Amazon Athena.
Exemplos de consultas do Amazon Athena
Exemplo de consulta do Athena que retorna tráfego administrativo de saída de uma interface de rede específica
A seguinte consulta do Athena retorna as primeiras 200 linhas de tráfego administrativo de saída de uma interface de rede com o endereço IP 10.100.0.10:
SELECT * FROM "<vpc_flow_logs_table_name>" WHERE interface_id = 'eni-1234567890000000' AND srcaddr LIKE '10.100.0.10' AND dstport < 1024 LIMIT 200;
Exemplo de saída
# |
1 |
version |
2 |
account_id |
<account-id> |
interface_id |
eni-123456789000000 |
srcaddr |
10.32.0.10 |
dstaddr |
11.22.33.44 |
srcport |
36952 |
dstport |
443 |
protocol |
6 |
packets |
25 |
bytes |
5445 |
start |
1659310200 |
end |
1659310225 |
ação |
ACCEPT |
log_status |
OK |
data |
2022-07-16 |
Observação
A saída nesse padrão foi formatada para fins de apresentação e pode aparecer de forma diferente em seu sistema.
Exemplo de consulta do Athena que retorna endereços IP externos que recebem a maior parte do tráfego de uma VPC específica
A seguinte consulta do Athena retorna os endereços IP externos e as portas que recebem a maior parte do tráfego de saída de uma VPC com um bloco CIDR começando com “10.32”:
SELECT dstport, dstaddr, count(*) AS count FROM "<vpc_flow_logs_table_name>" WHERE dstaddr not like '10.32%' AND interface_id = 'eni-1234567890000000' GROUP BY dstport, dstaddr ORDER BY count desc LIMIT 200;
Exemplo de saída
# | Dstport | Dstaddr | count |
1 | 443 | 52.x.x.x | 1442 |
2 | 443 | 63.x.x.x | 1201 |
3 | 443 | 102.x.x.x | 887 |
Exemplo de consulta do Athena que retorna tráfego de saída rejeitado de uma VPC específica
A seguinte consulta do Athena retorna o tráfego de saída rejeitado de uma VPC com um bloco CIDR começando com “10.32”:
SELECT * FROM "<vpc_flow_logs_table_name>" WHERE srcaddr like '10.32%' AND action LIKE 'REJECT'
Exemplo de saída
# |
1 |
version |
2 |
account_id |
<account-id> |
interface_id |
eni-123456789000000 |
srcaddr |
10.32.0.10 |
dstaddr |
11.22.33.44 |
srcport |
36952 |
dstport |
443 |
protocol |
6 |
packets |
25 |
bytes |
5445 |
start |
1659310200 |
end |
1659310225 |
ação |
REJECT |
log_status |
OK |
data |
2022-07-16 |
Observação
A saída nesse padrão foi formatada para fins de apresentação e pode aparecer de forma diferente em seu sistema.
Para obter mais informações sobre como interpretar resultados de consultas do Athena, consulte Registros de log de fluxo no Guia do usuário da Amazon VPC.
CloudWatch Exemplos de consultas do Logs Insights
CloudWatch Exemplo de consulta do Logs Insights que retorna tráfego administrativo de saída de uma interface de rede específica
A consulta do CloudWatch Logs Insights a seguir retorna os primeiros 200 resultados do tráfego administrativo de saída de uma interface de rede com o endereço IP 10.100.0.10:
fields @timestamp, @message | filter interfaceId = 'eni-1234567890000000' | filter srcAddr = '10.100.0.10' | filter dstPort < 1024 | limit 200
Exemplo de saída
Campo | Valor |
@ingestionTime | 1659310250813 |
@log | <account-id>:/aws/vpc/flowlogs |
@logStream | eni-123456789000000-all |
@message | 2 <account-id> eni-123456789000000 10.100.0.10 11.22.33.44 36952 443 6 25 5445 1659310200 1659310225 ACCEPT OK |
@timestamp | 1659310200000 |
accountId | <account-id> |
action | ACCEPT |
bytes | 5445 |
dstAddr | 11.22.33.44 |
dstPort | 443 |
end | 1659310225 |
interfaceId | eni-123456789000000 |
logStatus | OK |
packets | 25 |
protocol | 6 |
srcAddr | 10.100.0.10 |
srcPort | 36952 |
rápido | 1659310200 |
version | 2 |
Exemplo de consulta do CloudWatch Logs Insights que retorna endereços IP externos que recebem mais tráfego de uma VPC específica
A consulta do CloudWatch Logs Insights a seguir retorna os endereços IP externos e as portas que recebem a maior parte do tráfego de saída de uma VPC com um bloco CIDR começando com '10.32':
filter @logstream = 'eni-1234567890000000' | stats count(*) as count by dstAddr, dstPort | filter dstAddr not like '10.32' | order by count desc | limit 200
Exemplo de saída
# | dstAddr | dstPort | count |
1 | 52.x.x.x | 443 | 439 |
2 | 51.79.xx | 63.x.x.x | 25 |
Exemplo de consulta do CloudWatch Logs Insights que retorna tráfego de saída rejeitado de uma VPC específica
A consulta do CloudWatch Logs Insights a seguir retorna o tráfego de saída rejeitado de uma VPC com um bloco CIDR começando com '10.32':
filter @logstream = 'eni-0123456789000000' | fields @timestamp, @message | filter action='REJECT'
Exemplo de saída
Campo | Valor |
@ingestionTime | 1666991000899 |
@log | <account-id>:/aws/vpc/flowlogs |
@logStream | eni-0123456789000000-all |
@message | 2 <account-id> 'eni-0123456789000000' 185.x.x.x 10.10.2.222 55116 11211 17 1 43 1666990939 1666990966 REJECT OK |
@timestamp | 1666990939000 |
accountId | <account-id> |
action | REJECT |
bytes | 43 |
dstAddr | 10.10.2.222 |
dstPort | 11211 |
end | 1666990966 |
interfaceId | 'eni-0123456789000000' |
logStatus | OK |
packets | 1 |
protocolo | 17 |
srcAddr | 185.x.x.x |
srcPort | 55116 |
rápido | 1666990939 |
version | 2 |