Configurando Decriptografia e Inspeção de Tráfego de Rede

Instale o certificado e a chave privada necessários para decriptografar e inspecionar o tráfego TLS.

Os segredos do vault são usados para decriptografar e inspecionar o tráfego SSL/TLS.

  • A inspeção de entrada SSL decriptografa e inspeciona o tráfego SSL/TLS de entrada de um cliente para um servidor de rede de destino. Para obter mais informações sobre a inspeção de entrada SSL, consulte Inspeção de Entrada SSL.
  • O proxy de encaminhamento SSL decriptografa e inspeciona o tráfego SSL/TLS de usuários internos para a Web. Apenas um segredo do proxy para encaminhamento de SSL é permitido para cada política de firewall. Para obter mais informações sobre o proxy de encaminhamento SSL, consulte Proxy de Encaminhamento SSL,

Depois de criar uma política de firewall, você criará um segredo mapeado para mapear o segredo do Vault para uma chave SSL de entrada ou saída. Em seguida, você criará um perfil de decriptografia para controlar como o proxy de encaminhamento e a inspeção de entrada do SSL executam verificações de modo de sessão, do servidor e de falha.

Para obter mais informações sobre como o certificado é usado com uma política de firewall, consulte Criando e Gerenciando Políticas de Firewall.

Tarefa 1: Permitir que o serviço Network Firewall acesse segredos do Vault

Crie uma política do serviço IAM para permitir que a política de firewall acesse e use segredos do Vault.

Para permitir que todas as políticas de firewall acessem segredos do serviço Vault:
Allow any-user to read secret-family in compartment <compartment_ID> where ALL {request.principal.type='networkfirewallpolicy'} 
Para permitir que uma política de firewall acesse segredos do serviço Vault:
Allow any-user to read secret-family in compartment <compartment_ID> where ALL {request.principal.type='networkfirewallpolicy', request.principal.id='<Network Firewall Policy OCID>'}
Advertência

Se essa permissão for revogada posteriormente, o firewall interromperá a decriptografia do tráfego porque o serviço não poderá acessar o segredo mapeado.

Estas políticas substituem a política obsoleta para acessar segredos do Vault:

allow service ngfw-sp-prod to read secret-family in compartment <compartment_name> 

Tarefa 2: Criar um vault e a chave principal para armazenar o certificado

  1. Crie um vault no qual o certificado será armazenado.
  2. Crie uma chave principal de criptografia no vault.
    Importante

    A chave principal deve ser uma chave simétrica. Você não pode criptografar segredos com chaves assimétricas.

Tarefa 3: Armazenar o certificado

Você pode usar um certificado autoassinado ou assinado por CA no Serviço OCI Network Firewall.

A Oracle fornece um script que você pode usar para gerar um certificado autoassinado.
Importante

  • O serviço Network Firewall valida o certificado fornecido e o armazena na raiz de confiança. Para validar o certificado, forneça toda a cadeia de certificados SSL, incluindo o certificado raiz de certificados intermediários e a chave privada. Faça upload de certificados no formato .pem que estão encapsulados no modelo .json a seguir.
  • Se o certificado folha especificado em "certKeyPair" for um certificado de confiança avançada, ele deverá ter a capacidade de Assinatura da Autoridade de Certificação. Defina o indicador CA como "true".

    Neste exemplo, se "LEAF_CERT_01_PEM_CONTENT" for um certificado de confiança de encaminhamento, seu flag CA deverá ser definido como "true".
    {
      "caCertOrderedList" : [
        "ROOT_CERT01_PEM_CONTENT",
        "INTERMEDIATE_CERT01_PEM_CONTENT",
        "INTERMEDIATE_CERT02_PEM_CONTENT",
      ],
      "certKeyPair": {
        "cert" : "LEAF_CERT_01_PEM_CONTENT",
        "key":   "PRIVATE_KEY_01_PEM_CONTENT"
      }
    }
Para usar um certificado OpenSSL autoassinado, você pode usar um script fornecido pela Oracle para criar um:
  1. Faça download do OpenSSL e instale-o.
  2. Faça download do Perl e instale-o.
  3. Faça download do script do repositório do Oracle GitHub.
  4. Execute o script usando o comando a seguir. Substitua <test.test.com> pelo nome DNS do servidor Web que você precisa proteger:
    ./create-certificate inbound <test.test.com>
    ou
    ./create-certificate forward <test.test.com>

Tarefa 4: Criar segredos no vault

Crie um segredo no vault para cada certificado que você deseja usar.

  1. Abra o menu de navegação, vá para Identity & Security e selecione Secret Management.
  2. Selecione Criar Segredo.
  3. Na página Criar Segredo, selecione o compartimento no qual criar o segredo. (É possível haver segredos fora do compartimento no qual o vault reside.)
  4. Informe um nome que corresponda ao tipo de certificado contido no segredo. Por exemplo, "ssl-inbound-inspection-certificate".
  5. Informe uma descrição opcional.
  6. Selecione o vault criado na Tarefa 2: Criar uma chave de vault e principal para armazenar o certificado. Altere o compartimento do vault conforme necessário.
  7. Selecione a chave de criptografia principal que você criou na Tarefa 2: Criar um vault, uma chave principal e outra principal para armazenar o certificado. Altere o compartimento da chave de criptografia conforme necessário.
  8. Especifique o formato do conteúdo do segredo como Texto Simples.
  9. Copie o conteúdo do certificado na caixa Conteúdo do segredo. (O tamanho máximo permitido para um pacote de segredos é de 25 KB).
  10. Selecione Criar Segredo.
Observação

Exemplo do conteúdo no segredo criado com dados mascarados:
{
  "caCertOrderedList" : [
    "-----BEGIN CERTIFICATE-----\nxxxxxxxxxxx\n-----END CERTIFICATE-----",
    "-----BEGIN CERTIFICATE-----\nxxxxxxxxxxx\n-----END CERTIFICATE-----",
    "-----BEGIN CERTIFICATE-----\nxxxxxxxxxxx\n-----END CERTIFICATE-----"
  ],
  "certKeyPair": {
    "cert" : "-----BEGIN CERTIFICATE-----\nnxxxxxxxxxxx\n-----END CERTIFICATE-----",
    "key": "-----BEGIN RSA PRIVATE KEY-----\this-is-not-the-secret\n-----END RSA PRIVATE KEY-----"
  }
}