Observação:
- Este tutorial requer acesso ao Oracle Cloud. Para se cadastrar em uma conta gratuita, consulte Conceitos básicos do Oracle Cloud Infrastructure Free Tier.
- Ele usa valores de exemplo para credenciais, tenancy e compartimentos do Oracle Cloud Infrastructure. Ao concluir seu laboratório, substitua esses valores por valores específicos do seu ambiente de nuvem.
Proteja seus Aplicativos usando o OCI Network Firewall e o OCI WAF Edge com Certificados Let's Encrypt
Introdução
Em um cenário dominado pela transformação digital generalizada, garantir a segurança de seus aplicativos não é apenas uma consideração, mas uma prioridade intransigente. À medida que as organizações migram suas cargas de trabalho para a Oracle Cloud Infrastructure (OCI), uma estratégia de defesa robusta contra ameaças cibernéticas se torna indispensável. A OCI fornece um conjunto abrangente de ferramentas para fortalecer seus aplicativos e, neste tutorial, orientaremos você no processo de proteção de seus ativos digitais usando o OCI Network Firewall e a borda do OCI Web Application Firewall (WAF).
Por que esse tutorial é essencial?
À medida que seus aplicativos se comunicam com o mundo exterior, eles enfrentam o desafio sempre presente das ameaças à segurança cibernética. Este tutorial ajuda você a criar uma defesa em várias camadas, protegendo seus aplicativos contra ameaças conhecidas e emergentes, aproveitando o poder do OCI Network Firewall e da borda do OCI WAF. Exploraremos conceitos importantes, incluindo o suporte a vários domínios e a geração ou renovação de certificados X.509 usando ferramentas padrão. Além disso, vamos nos aprofundar no uso do serviço amplamente reconhecido e gratuito Let's Encrypt. Com isso, você obterá uma compreensão abrangente das práticas essenciais para proteger seus aplicativos.
Para quem é este tutorial?
Este tutorial foi projetado para arquitetos de nuvem, profissionais de segurança e desenvolvedores que buscam uma compreensão abrangente dos recursos de segurança do Oracle Cloud Infrastructure. Quer você seja um experiente profissional de nuvem ou esteja apenas começando sua jornada para a segurança na nuvem, este tutorial fornecerá as habilidades para criar uma defesa robusta em torno de seus aplicativos.
O que é o OCI Network Firewall
O Oracle Cloud Infrastructure Network Firewall representa um serviço de firewall gerenciado de ponta criado com a Palo Alto Networks. É uma tecnologia de firewall de última geração (NGFW). Ele oferece recursos de firewall com tecnologia de machine learning para proteger suas cargas de trabalho da OCI e é fácil de consumir na OCI. Como uma oferta nativa de firewall como serviço da OCI, o OCI Network Firewall permite que você aproveite os recursos de firewall sem a necessidade de configurar e gerenciar infraestrutura de segurança adicional. A instância do OCI Network Firewall é altamente escalável com alta disponibilidade incorporada e pode ser criada em uma rede virtual na nuvem (VCN) e em uma sub-rede de sua escolha.
O serviço OCI Network Firewall fornece insights profundos sobre o fluxo de dados que entram em seus ambientes de nuvem, abordando a comunicação de entrada e intersub-rede ou inter-VCN. Em essência, oferece visibilidade do tráfego de rede do Norte ao Sul e do tráfego de rede do Leste ao Oeste. Para obter mais informações, consulte Firewall de Rede do OCI.
O que é o OCI Web Application Firewall Edge
A borda do OCI WAF é um serviço de Firewall de Aplicativo Web baseado na nuvem. Ele protege aplicativos Web contra ameaças on-line, como injeção de SQL e ataques DDoS, filtrando o tráfego malicioso na borda da rede, aprimorando a segurança. Para obter mais Informações, consulte OCI Web Application Firewall.
Arquitetura
Essa arquitetura proposta incluirá proteção total para cargas de trabalho da tenancy usando os componentes a seguir.
-
Políticas de Borda do OCI WAF: Este WAF é uma entidade externa que protegerá qualquer ponto final de IP público e Origem (na terminologia do WAF, os servidores Web de destino são chamados Origens).
-
Balanceador de Carga do OCI: esse balanceador de carga só receberá solicitações de IPs públicos de borda do OCI WAF; portanto, configure seu balanceador de carga, servidores ou origens para aceitar o tráfego dos servidores de borda do OCI WAF. Aqui está a faixa de CIDRs públicos dos servidores de borda do OCI WAF: Intervalos CIDR. Nesta arquitetura, usaremos o NSG para aceitar apenas tráfego público dessas faixas de CIDRs.
-
OCI Network Firewall: também é conhecido como Next Generation Firewall, OCI Network Firewall e WAF trabalhando em conjunto, criará uma defesa em várias camadas. Se uma camada perde uma ameaça, a outra pode pegá-la, proporcionando uma postura de segurança mais robusta.
Diagrama do Fluxo de Dados
O fluxo de dados de rede pode ser facilmente visto no diagrama de rede a seguir, solicitações de entrada em linhas de pontos verdes, respostas em linhas de pontos vermelhas.
Este diagrama segue as melhores práticas para implantar o Firewall de Rede do OCI para tráfego Norte-Sul. No estágio inicial, o tráfego de entrada (descoberto em verde e operando na Camada 7) é direcionado por meio do firewall OCI WAF edge Layer 7. A borda do OCI WAF executa o encerramento e a resposta para conexões TLS/SSL, iniciando subsequentemente uma conexão TLS/SSL secundária com o OCI, agindo como um agente de usuário back-to-back.
Após o fluxo de rede, o tráfego prossegue para o gateway de internet do OCI pela borda do WAF do OCI. No gateway de internet, uma tabela de roteamento foi configurada para redirecionar o tráfego para um endereço IP privado no qual o Firewall de Rede do OCI está localizado. Vale ressaltar que o Firewall de Rede do OCI recebe perfeitamente o tráfego sem encerrar a conexão TLS/SSL. O Firewall de Rede do OCI aplica perfis de decriptografia para decriptografar o tráfego TLS, permitindo uma inspeção profunda de pacotes. Para obter mais informações, consulte Usando o Firewall de Rede do OCI para decriptografia SSL.
Depois que o Firewall de Rede do OCI inspeciona completamente o tráfego, ele progride para o Balanceador de Carga do OCI. O balanceador assume a responsabilidade de encerrar e responder à conexão TLS/SSL. Ele executa o roteamento de balanceamento de carga e, subsequentemente, inicia uma conexão secundária para o servidor de backend selecionado.
Para o tráfego de retorno dos servidores de backend, os servidores de backend respondem inicialmente ao Balanceador de Carga do OCI (ilustrado em Vermelho e operando na Camada 7). Ao atingir os balanceadores de carga, uma tabela de roteamento na sub-rede do balanceador de carga redireciona o tráfego de volta para um IP privado no qual o Firewall de Rede do OCI está localizado. Isso permite que o Firewall de Rede do OCI inspecione as respostas de forma abrangente. Depois que o Firewall de Rede do OCI conclui a inspeção, ele avança de volta para o gateway de internet com base nos comandos da tabela de roteamento associados à sub-rede NGFW (Next-Generation Firewall).
Posteriormente, o tráfego retornado atinge a borda do OCI WAF para a inspeção final das respostas. Depois que a borda do OCI WAF conclui a inspeção, ela entrega com segurança o tráfego de volta ao usuário na internet.
Objetivos
O principal objetivo deste tutorial é capacitar os usuários a fortalecer suas cargas de trabalho na nuvem configurando efetivamente a borda do OCI WAF em conjunto com o OCI Network Firewall. Ao incorporar certificados X.509 assinados do Let's Encrypt para o front-end de borda do OCI WAF, os usuários podem garantir uma conexão segura e validada. O tutorial orienta ainda mais os usuários na implementação das melhores práticas do OCI Network Firewall para tráfego Norte-Sul, implantando um aplicativo OCI Load Balancer. Notavelmente, essa configuração designa estrategicamente a borda do OCI WAF como o único componente usando um certificado não autoassinado - Vamos Criptografar certificado, enquanto outros elementos que empregam o Transport Layer Security (TLS) utilizam certificados autoassinados sem complicações, que são mais fáceis de gerenciar.
Além disso, demonstraremos o uso de vários subdomínios na borda do OCI WAF e no OCI Network Firewall, configuraremos a borda do OCI WAF para aceitar domínios curinga e usar domínios curinga em certificados X.509.
-
Tarefa 1: Implantar a borda do OCI Web Application Firewall (WAF).
-
Tarefa 2: Configurar o DNS para o OCI WAF Edge.
-
Tarefa 3: Ativar suporte HTTPS para o OCI WAF Edge.
-
Tarefa 4: Assinando o certificado do servidor com Let's Encrypt.
-
Tarefa 5: Configurar o Balanceador de Carga do OCI.
-
Tarefa 6: Configurar o Firewall de Rede do OCI.
-
Tarefa 7: Configurar roteamento do OCI.
Pré-requisitos
-
Uma tenancy ativa do OCI. Você deve ter as permissões necessárias para criar e gerenciar recursos de rede no OCI.
-
Uma compreensão básica do Linux OS, OCI, Oracle Linux, incluindo como instalar e configurar software no Linux.
-
Uma boa compreensão sobre como usar a Console do OCI ou a CLI do OCI (Interface de Linha de Comando) do Oracle Cloud Infrastructure para criar e gerenciar recursos de rede.
-
Uma boa compreensão sobre como usar e configurar o OCI Network Firewall e a borda do OCI WAF.
-
Uma boa compreensão sobre a tecnologia SSL / TLS e certificados digitais X.509. Para obter mais informações, consulte este guia recomendado para obter um aprofundamento nos certificados X.509: X509 Certificates e SSL/TLS: Noções básicas da tecnologia de criptografia TLS/SSL.
Tarefa 1: Implantar a Borda do OCI Web Application Firewall (WAF)
O primeiro componente que vamos implantar é o WAF edge.
-
Faça log-in na Console do OCI e clique em Web Application Firewall.
-
Em Políticas, clique em Criar Política de WAF e especifique as informações a seguir.
Para criar uma borda do OCI WAF, clique em Usar workflow legado aqui caso precise proteger seus aplicativos web diferentes do OCI. Por padrão, é criada uma política de WAF local que é útil para ser anexada aos balanceadores de carga. O foco deste tutorial está na borda do OCI WAF (conhecida como fluxo de trabalho legado WAF) que é um elemento externo ao OCI que permitirá proteger origens OCI e não OCI (servidores IP públicos). Observe que a borda do OCI WAF é um produto diferente em comparação com a política local do OCI WAF com recursos como Gerenciamento de Bot (desafio Captcha, desafio JavaScript, desafio de Interação Humana e assim por diante) e Regras de Armazenamento em Cache (semelhante ao mecanismo de armazenamento em cache da CDN).
-
Em Criar política de Borda, insira as informações necessárias.
Neste ponto, dois conceitos cruciais exigem esclarecimento.
-
Domínios: A borda WAF Domínio denota o domínio da internet acessível ao público para acessar seu web service (por exemplo:
www.myexamplewebshop.com
). Este domínio serve como o principal ponto de conexão para todos os usuários, incluindo aqueles que usam dispositivos móveis e laptops. Esse domínio só suporta as portas TCP http80
https443
padrão.Nos Domínios, você pode adicionar o Domínio principal do seu site (por exemplo:
www.example.com
) e continuar adicionando mais Domínios adicionais (app1.example.com
,customer1.example.com
e assim por diante). Caso queira adicionar um domínio curinga, você precisará usar a CLI do OCI para adicioná-lo manualmente. A maneira mais rápida de acessar a CLI do OCI é por meio de ferramentas de Desenvolvedores do OCI, o Cloud Shell, em que você terá acesso a um terminal baseado em navegador da Web na Console do OCI, com um shell Linux pré-configurado com a versão mais recente da CLI do OCI e várias ferramentas úteis. Para obter mais informações, consulte Interface de Linha de Comando (CLI) do OCI e OCI Cloud ShellPara adicionar um domínio curinga como domínio adicional, abra o OCI Cloud Shell e execute.
oci waas waas-policy update --additional-domains '["*.yourmaindomain.xxx"]' --waas-policy-id your-WAF-policy-ID ( You can get your policy ID from OCI Web Console->Web application firewall->Policies->Policy details -> Policy Information Tab -> OCID )
Usando domínios curinga, sua política de WAF poderá receber solicitações http(s), incluindo qualquer subdomínio, como
\*.example.com
. Por exemplo:myapp1.example.com
,mycustomer2.example.com
e assim por diante. -
Origem WAF: temos a Origem da borda WAF. A(s) origem(ns) refere(m) ao(s) servidor(es) Web real(is) situado(s) atrás do WAF. Na terminologia do WAF, a origem significa que os servidores de destino final estão sendo protegidos. Essas origens devem se comunicar exclusivamente com os servidores de borda WAF responsáveis por sua proteção. Garantir que essa proteção seja mantida pelos servidores de origem é imperativo, geralmente obtido no OCI por meio de listas de segurança ou NSGs (Grupos de Segurança de Rede) que permitem exclusivamente o acesso de IPs de origem de borda do OCI WAF designados. Para obter mais informações, consulte Segurança do Seu WAF. Normalmente, você informará os endereços IP públicos ou FQDNs de seus servidores web ou origens reais aqui. No entanto, neste tutorial, utilizaremos o endereço IP público do balanceador de carga flexível. Se um balanceador de carga já tiver sido criado, você poderá usar seu endereço IP público como origem do serviço WAF. Caso contrário, você poderá adicionar inicialmente qualquer endereço IP e atualizá-lo posteriormente depois de criar o balanceador de carga público.
Você poderá criar diferentes grupos de origens com várias origens por grupo e fazer balanceamento de carga entre eles (IP_Hash, Round_robin, Sticky_Cookie), incluindo verificações de integridade periódicas. Para obter mais informações, consulte Gerenciamento de Origem. Além disso, nas opções de origem avançadas, você poderá alterar as portas TCP http
80
https443
padrão (somente para origens, não para domínios).
-
-
Clique em Criar Política de Borda. Levará aproximadamente 2 minutos e veremos Criando. Depois disso, obteremos o ACTIVE para que possamos continuar configurando o OCI WAF.
Tarefa 2: Configurar o DNS para o OCI WAF Edge
Agora, temos uma configuração básica da borda do OCI WAF ativa e em execução. Para garantir que os domínios principal e adicional (incluindo curinga) sejam redirecionados para os servidores de borda do OCI WAF, precisamos configurar o servidor DNS que hospeda o domínio com o CNAME correspondente mostrado na console.
Neste tutorial, estamos usando o servidor DNS público do OCI, adicionando CNAME ao valor proposto, conforme mostrado na imagem a seguir.
Depois de configurada e publicada, qualquer tentativa de conexão com \*.example.com
será redirecionada para servidores de borda do OCI WAF para inspeção da Camada 7 em www-example-com.o.waas.oci.oraclecloud.net
. Quando a inspeção for concluída, a borda do OCI WAF carregará o saldo em relação às origens configuradas com tráfego limpo após a inspeção do WAF.
Tarefa 3: Ativar Suporte HTTPS para o OCI WAF Edge
Nesta tarefa, habilitaremos o suporte HTTPS em nossa borda do OCI WAF. Hoje em dia, quase todos os serviços web exigem implementação HTTP ou HTTPS segura, contando com conexões SSL / TLS. É crucial ter uma sólida compreensão dos conceitos de TLS/SSL, incluindo o gerenciamento X.509, para permitir efetivamente o suporte HTTPS não apenas na borda do OCI WAF, mas também nos próximos componentes de software discutidos neste tutorial.
-
Vá para a Console do OCI e, em Política de borda, clique em Definições.
-
Para ativar HTTPS, clique em Ativar suporte HTTPS.
Aqui, você precisa fazer upload do certificado do servidor com sua chave privada. Esse certificado representará o Domínio Principal e os Domínios Adicionais que você escolhe durante a criação da borda do OCI WAF. Portanto, é crucial que os campos de nome comum e nome alternativo de assunto (SAN) do certificado incluam esses domínios. Para obter mais informações, consulte Qual é o Nome Alternativo do Assunto do Certificado SSL?.
Se você estiver usando um certificado autoassinado, que não é assinado por uma CA pública, selecione Certificado Autoassinado. Quando você faz upload de um certificado assinado por uma CA pública, é importante garantir que você faça upload de todo o certificado da cadeia. Um certificado de cadeia consiste em uma lista de certificados, geralmente começando com um certificado de entidade final, seu certificado de servidor e sua chave pública, seguidos por um ou mais certificados de CA (intermediários) e, opcionalmente, concluindo com um certificado de CA raiz (autoassinado).
Tarefa 4: Assinando Certificado do Servidor com Let's Encrypt
Neste tutorial, estaremos utilizando um serviço de CA público gratuito chamado Let's Encrypt para assinar nosso certificado de servidor. Portanto, o certificado de cadeia aparecerá da seguinte forma:
1.-End-user Certificate - Issued to: *.example.com; Issued By: Let’s Encrypt R3
2.-Intermediate Certificate 1 - Issued to: Let’s Encrypt R3 (RSA 2048, O = Let's Encrypt, CN = R3); Issued By: Signed by ISRG Root X1:ISRG Root X1 (RSA 4096, O = Internet Security Research Group, CN = ISRG Root X1)
3.-Root certificate - Issued by and to: ISRG Root X1 (RSA 4096, O = Internet Security Research Group, CN = ISRG Root X1) , Selfsigned
In PEM format:
-----BEGIN CERTIFICATE-----
MDIxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQswCQYDVQQD
EwJSMzAeFw0yNDAxMTUxNjAyMTNaFw0yNDA0MTQxNjAyMTJaMBgxFjAUBgNVBAMM
DSouZnd0ZXN0LnNpdGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC1
3NkuEB3r0m/cIWjYBvXEg8QAcib3QjkGO2YwDRu9IwjyxTYTqiWp0F8ZYh2hM1zP
...xxxx
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
oIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMjAwOTA0MDAwMDAw
WhcNMjUwOTE1MTYwMDAwWjAyMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNTGV0J3Mg
RW5jcnlwdDELMAkGA1UEAxMCUjMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC7AhUozPaglNMPEuyNVZLD+ILxmaZ6QoinXSaqtSu5xUyxr45r+XXIo9cP
R5QUVTVXjJ6oojkZ9YI8QqlObvU7wy7bjcCwXPNZOOftz2nwWgsbvsCUJCWH+jdx
sxPnHKzhm+/b5Dt....XXXX
-----BEGIN CERTIFICATE-----
oOFTJOwT2e4ZvxCzSow/iaNhUd6shweU9GNx7C7ib1uYgeGJXDR5
bHbvO5BieebbpJovJsXQEOEO3tkQjhb7t/eo98flAgeYjzYIlefiN5YNNnWe+w5y
sR2bvAP5SQXYgd0FtCrWQemsAXaVCg/Y39W9Eh81LygXbNKYwagJZHduRze6zqxZ
Xmidf3LWicUGQSk+WT7dJvUsWqNMQB9GoZm1pzpRboY7nn1ypxIFeFntPlF4
FQsDj43QLwWyPntKHEtzBRL8xurgUBN8Q5N0s8p0544fAQjQMNRbcTa0B7rBMDBc
SLeCO5imfWCKoqMpgsy6vYMEG6KDA0Gh1gXxG8K28Kh8hjtGqEgqiNx2mna/H2ql
PRmP6zjzZN7IKw0KKP/32+IVQtQi0Cdd4Xn+GOd....xxx
-----END CERTIFICATE-----
Então, antes de usar o Let's Encrypt, precisamos instalar certos softwares que nos ajudarão a criar nosso certificado Let's Encrypt ou assinar um CSR para ser assinado. Para obter mais informações, consulte Vamos Criptografar.
Para assinar, usaremos o certbot de Let's Encrypt. Para obter mais informações sobre instruções de configuração, consulte Instruções de Configuração. Para instalá-lo no Oracle Linux, consulte Let's Encrypt - Free Certificates on Oracle Linux (CertBot).
Depois de instalar o certbot, você pode criar facilmente um certificado x.509 assinado executando o comando a seguir.
sudo certbot certonly --manual --preferred-challenges=dns --email YOUR EMAIL ADDRESS --server https://acme-v02.api.letsencrypt.org/directory --agree-tos -d *.example.com --key-type rsa
Como estamos utilizando um domínio curinga (_.example.com
), o certbot requer um desafio de verificação para confirmar a propriedade de _.example.com
. Escolhemos o desafio de DNS usando a opção -preferred-challenges=dns. Durante a execução do certbot, receberemos uma mensagem sobre o desafio de DNS, conforme mostrado na imagem a seguir.
Como estamos usando um serviço DNS do OCI, apenas criamos um registro txt na zona example.com
.
Agora, o certbot deve concluir o processo, permitindo que você obtenha o certificado do usuário final, completo com a cadeia de CA completa e sua chave privada correspondente. Em seguida, você pode fazer upload deles para o menu HTTPS do OCI WAF na Tarefa 3.
Depois de fazer upload dos certificados apenas assinados na Tarefa 3, você verá uma mensagem Você tem 1 alteração não publicada. Clique em Publicar Tudo. Isso pode levar cerca de 20 a 30 minutos aproximadamente.
Nesse ponto, sua borda do OCI WAF é configurada para receber tráfego HTTPS. Posteriormente, quando o Balanceador de Carga do OCI for criado, você precisará obter o IP público do balanceador de carga e defini-lo na origem da borda do OCI WAF.
Tarefa 5: Configurar o Balanceador de Carga do OCI
Depois de concluir a configuração da borda do OCI WAF, nosso próximo objetivo é implantar o OCI Load Balancer na Camada 4 a 7, também conhecido como OCI Flexible Load Balancer, para servir como a origem de serviço voltada para o público para a borda do OCI WAF. É importante observar que o Balanceador de Carga do OCI oferece a capacidade de ativar e anexar um OCI WAF interno ou regional, fornecendo recursos do WAF. No entanto, vale ressaltar que essa região do OCI WAF é um produto distinto com seu próprio conjunto exclusivo de recursos. Este tutorial se concentra especificamente na implementação de borda do OCI WAF.
-
Abra a Console do OCI, clique em Rede e Balanceador de carga.
-
Clique em Criar Balanceador de Carga, especifique as informações a seguir e clique em Próximo.
- Nome do balanceador de carga: Digite o nome dele.
- Escolher tipo de visibilidade: Selecione o balanceador de carga Público. Lembre-se de que a borda do OCI WAF só protege as origens de IP público.
- Largura de banda: Selecione a forma do balanceador de carga e outros detalhes de configuração.
- Escolher rede: Selecione uma VCN com pelo menos duas sub-redes públicas; uma para o Balanceador de Carga do OCI e outra para o Firewall de Rede do OCI.
Conforme descrito em Arquitetura, certifique-se de que o balanceador de carga só aceite tráfego da faixa de servidores de borda do OCI WAF. Consulte Intervalos do CIDR.
Você pode conseguir isso aplicando regras de firewall no Grupo de Segurança de Rede (NSG), clique em Usar grupos de segurança de rede para controlar o tráfego e utilize um NSG ou configurando a lista de segurança de sub-rede do balanceador de carga.
-
Ignore a seção Escolher backends, pois adicionaremos servidores de backend posteriormente quando o balanceador de carga for criado e clicar em Próximo.
-
Em Configurar Listener, especifique as seguintes informações e clique em Próximo.
Configuraremos os listeners do balanceador de carga de solicitações recebidas, essencialmente o ponto de entrada principal do balanceador de carga no qual recebemos todas as conexões do mundo externo. Precisaremos configurar HTTPS para HTTP seguro na porta padrão
443
, o que inevitavelmente exige o uso de certificados X.509 (certificados SSL). Ao usar HTTPS, garantiremos que todas as conexões sejam criptografadas com segurança.Em um cenário típico em que o balanceador de carga público serve como o principal ponto de entrada para usuários finais na internet, é imperativo fazer upload de certificados SSL assinados por uma Autoridade de Certificação (CA) pública respeitável, como Digicert, Global Sign, Let's Encrypt e outros. Além disso, esses certificados expostos à Internet precisam ser renovados perto de suas datas de expiração para garantir que os clientes não encontrem mensagens desnecessárias, como Sua conexão não é privada!! ERR_CERT_DATE_INVALID.
Neste tutorial, estamos usando a borda do OCI WAF como o principal ponto de entrada para usuários que acessam os serviços Web na internet. Os balanceadores de carga públicos, nos quais nossos serviços se originam, serão posicionados atrás da borda do OCI WAF, o que significa que eles só receberão tráfego dos nós de borda do OCI WAF. Por causa dessa configuração, não há necessidade de fazer upload de um certificado SSL de uma CA pública para o balanceador de carga. Em vez disso, podemos instalar facilmente um certificado SSL autoassinado sem data de expiração ou muito longo, tornando o gerenciamento mais simples.
É importante observar que a borda do OCI WAF não inspecionará os detalhes dos certificados SSL recebidos do balanceador de carga, como o nome comum ou o nome alternativo do assunto, nem inspecionará a assinatura do certificado. No entanto, ainda estabelecerá uma conexão segura e criptografada entre a borda do OCI WAF e a origem de destino do OCI Load Balancer.
Criamos um certificado autoassinado usando qualquer ferramenta externa, como openssl ou XCA. Como alternativa, você pode usar o serviço Gerenciado do Oracle Certificates que é integrado ao Balanceador de Carga do OCI. Neste tutorial, usamos o XCA para criar o certificado autoassinado e fazer upload dele manualmente no OCI Load Balancer, juntamente com sua chave privada. O certificado autoassinado carregado usa qualquer nome comum ou SAN e tem um tempo de expiração de 50 anos. O OCI WAF não inspecionará essas informações.
-
O Gerenciar registro em log é uma configuração opcional e não está no escopo deste tutorial. Clique em Submeter.
-
Depois de algum tempo, seu balanceador de carga será criado. Agora, precisamos configurar os servidores de backend. Como o SSL será usado para os servidores de backend, precisamos primeiro criar pelo menos um certificado na seção de certificado do balanceador de carga que será usada para configurar a conexão SSL nos servidores de backend. Conforme descrito acima, esse pacote de certificados pode ser criado manualmente com ferramentas de terceiros ou você pode usar o serviço de gerenciamento do OCI Certificates. Para este tutorial, usaremos a ferramenta XCA.
Vá para Rede, Balanceadores de carga, Balanceador de carga, Detalhes do balanceador de carga e Certificados.
-
Na seção Certificado, selecione Recurso de certificado como O Balanceador de Carga gerencia o certificado e clique em Adicionar Certificado.
Adicione o certificado da CA raiz ou intermediária pública que você usou para assinar os certificados SSL do servidor de backend. Como lembrete, temos vindo a utilizar certificados autoassinados com qualquer nome comum e SAN, e sem uma data de expiração. Você não precisa instalar nenhum certificado de servidor aqui, pois o balanceador de carga utilizará exclusivamente a CA raiz para validação de certificado de servidor de backend.
-
Para criar os servidores de backend, selecione BackEnd sets e clique em Create backend set.
-
Em Criar conjunto de backend, digite as informações a seguir.
- Nome do Conjunto de Backend: Informe o nome do conjunto de backend.
- Selecione SSL.
- Selecione Certificado de gerenciamento do Balanceador de Carga.
- Adicione o certificado criado na etapa 7. Se quiser garantir que o balanceador de carga verifique a assinatura de certificado SSL recebida, clique em Verificar certificado de mesmo nível.
- Verificações da situação:
- Protocolo: Selecione
HTTP
. - Porta: Selecione a porta
443
. - Intervalos e Timeout: Mantenha o intervalo e o timeout padrão (10000 e 3000 mseg).
- Para a resposta de integridade da verificação de integridade, selecione 200.
- Caminho do URL (URI): Adicione qualquer recurso do URL que exista no servidor Web. Por exemplo:
index.html
,mainpage.html
e assim por diante.
- Protocolo: Selecione
Tarefa 6: Configurar o Firewall de Rede do OCI
Após a configuração do Balanceador de Carga do OCI, nosso objetivo é configurar um Firewall de Rede do OCI para proteger o tráfego Norte-Sul. O firewall será posicionado entre o balanceador de carga recém-configurado e o gateway de internet. Para continuar configurando o Firewall de Rede do OCI, consulte Usar o Firewall de Rede do OCI para proxy de encaminhamento SSL e inspeção de entrada usando a regra de Decriptografia e conclua o seguinte.
-
Implante a política do OCI Network Firewall para o modo de inspeção de entrada SSL. Para obter mais informações, consulte Usando o Firewall de Rede do OCI para decriptografia SSL.
-
Ao criar o segredo mapeado para o perfil de decriptografia, utilize o certificado idêntico autoassinado (contendo chaves públicas e privadas) que foi submetido a upload anteriormente para o listener do Balanceador de Carga do OCI. Recomendamos seguir este tutorial para a criação de arquivos JSON. Consulte Criar Modelos JSON Totalmente Compatíveis com Base em Certificados PEM Personalizados para o OCI Network Firewall.
-
Implante o Firewall de Rede do OCI na sub-rede NGFW Pub (192.168.5.0/24) ao anexar a política do OCI Network Firewall criada anteriormente. Essa ação alocará um endereço IP privado da sub-rede mencionada para o Firewall de Rede do OCI, que será necessário para a configuração de roteamento posteriormente.
Tarefa 7: Configurar Roteamento do OCI
O Firewall de Rede da OCI foi implantado. Precisamos garantir que o tráfego Norte-Sul o atravesse em ambas as direções. A primeira coisa a fazer é criar uma tabela de roteamento dedicada para o gateway de internet associado à VCN em que o Firewall de Rede do OCI está.
-
Crie a tabela de roteamento na VCN e adicione uma entrada de Tipo de Destino como
private IP
, Destino como bloco CIDR, introduzindo o bloco CIDR de sub-rede do balanceador de carga, para este tutorial192.168.6.0/24
e Destino como o IP privado designado ao Firewall de Rede do OCI implantado na Tarefa 6. -
Associe a tabela de roteamento ao gateway de internet, clique em três pontos e em Associar tabela de Roteamento e selecione a tabela de roteamento.
-
Depois que essa tabela de roteamento for associada ao gateway de internet, todo o tráfego direcionado para o balanceador de carga público
192.168.6.0/24
será inicialmente redirecionado para o IP privado192.168.5.78
, onde reside o Firewall de Rede do OCI.No IP privado
192.168.5.78
do OCI Network Firewall, após a inspeção de pacotes do OCI Network Firewall, o pacote manterá sua jornada em direção ao OCI Load Balancer. A partir daí, eles são direcionados ao destino final entre os servidores de backend selecionados, determinados pela configuração de roteamento do balanceador de carga.Agora, é essencial garantir que os pacotes que retornam aos usuários da Internet sigam o mesmo caminho na ordem inversa, percorrendo o Firewall de Rede da OCI para inspeção de respostas também. Precisamos criar uma tabela de roteamento para a sub-rede pública do balanceador de carga para rotear as respostas dos servidores de backend por meio do IP privado
192.168.5.78
do Firewall de Rede do OCI, conforme mostrado na imagem a seguir.
Na sub-rede do Firewall de Rede do OCI, precisamos garantir que as respostas sejam roteadas para o gateway de internet, adicionando uma rota 0.0.0.0/0
ao gateway de internet.
Depois de acessar o gateway de internet, os pacotes são roteados de volta para sua origem, a borda do OCI WAF, para inspeção final de respostas, antes de serem direcionados aos usuários da internet.
Links Relacionados
Confirmação
- Autores - Luis Catalán Hernández (Especialista em Rede na Nuvem da OCI e Multinuvem), Sachin Sharma (Especialista em Rede na Nuvem da OCI)
Mais Recursos de Aprendizagem
Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal Oracle Learning YouTube. Além disso, visite education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.
Para obter a documentação do produto, visite o Oracle Help Center.
Secure Your Applications using OCI Network Firewall and OCI WAF Edge with Let's Encrypt Certificates
F94470-01
March 2024
Copyright © 2024, Oracle and/or its affiliates.