Nota:

Configurare e proteggere un endpoint personalizzato di Oracle Integration (processo) con WAF OCI

Introduzione

Oracle Integration è un ambiente completamente gestito e preconfigurato che offre la possibilità di integrare le applicazioni cloud e on premise, automatizzare i processi aziendali, acquisire informazioni dettagliate sui processi aziendali, sviluppare applicazioni visive, utilizzare un file server conforme a SFTP per memorizzare e recuperare i file e scambiare documenti aziendali con un partner commerciale B2B.

Utilizzare Oracle Cloud Infrastructure Web Application Firewall (OCI WAF) per proteggere le applicazioni dal traffico Internet dannoso e indesiderato. WAF è in grado di proteggere qualsiasi endpoint che si interfaccia con Internet, garantendo un'applicazione coerente delle regole in tutta l'applicazione di un cliente.

Obiettivo

Configura e protegge un'istanza di Oracle Integration con endpoint personalizzato dal traffico dannoso da Internet mediante firewall OCI.

Questa esercitazione descrive i suggerimenti sull'architettura di riferimento di Oracle Integration relativi all'uso del framework WAF e della lista di inclusione, come suggerito dalla documentazione.

Architettura della soluzione

Ulteriori informazioni sono disponibili all'indirizzo: Provisioning e amministrazione di Oracle Integration Generation 2.

Prerequisiti

Task 1: creare l'istanza di Oracle Integration

  1. Per creare una nuova istanza di Oracle Integration tramite la console Web, andare al menu Servizi per sviluppatori e fare clic su Integrazione.

    Crea integratore OCI

  2. Nella schermata Istanze di integrazione, selezionare il compartimento in cui verrà creata l'istanza e fare clic su Crea istanza.

    Selezionare il compartimento

  3. Verrà visualizzata una schermata per la creazione dell'istanza. Immettere il nome dell'istanza, selezionare la versione di Oracle Integration (Gen 2) e fare clic su Crea.

    Inserire le informazioni necessarie

    Nota: gli altri elementi possono essere configurati in base alle esigenze dell'ambiente in uso. In questa esercitazione vengono lasciati i valori predefiniti.

  4. Al termine della creazione, l'istanza sarà disponibile. Fare clic sul nome dell'istanza per visualizzare i dettagli.

    Visualizza dettagli istanza

  5. Per convalidare il funzionamento dell'istanza di Oracle Integration, dopo aver effettuato l'accesso ai dettagli dell'istanza, fare clic su Console del servizio.

    Aprire la console del servizio dell'istanza

  6. Si aprirà una nuova scheda del browser e si avrà accesso alla schermata principale di Oracle Integration.

    Controlla il tuo accesso

Task 2: Impostazione del certificato vault, DNS e SSL OCI

Dopo aver creato l'istanza di Oracle Integration, creare l'endpoint personalizzato per l'istanza. L'endpoint personalizzato consentirà di accedere all'interfaccia di Oracle Integration utilizzando un dominio privato, ad esempio:

https://oic-lab.<exampledomain>.com/ic/home

Per creare l'endpoint personalizzato, attenersi ai 5 passi riportati di seguito.

  1. Creare una VCN con una subnet pubblica
  2. Creare una voce CNAME nel DNS personalizzato che punta all'endpoint di Oracle Integration
  3. Creare un certificato SSL per il nuovo collegamento (ad esempio, oic.<exampledomain>.com)
  4. Creare un vault OCI in cui verrà memorizzato il certificato
  5. Eseguire la configurazione dell'endpoint personalizzato nell'istanza di Oracle Integration

Task 2.1: creare una VCN e una subnet pubblica nel compartimento

  1. Per creare una VCN, aprire il menu Servizi della console Web OCI e fare clic su Reti cloud virtuali.

    Crea una VCN

  2. Una volta all'interno della pagina Networking, verificare di trovarsi nel compartimento corretto e fare clic su Avvia procedura guidata VCN.

    Avvia procedura guidata

    • Crea la tua rete VCN in base ai requisiti dell'ambiente che stai creando. Oracle Integration richiede la creazione di una subnet pubblica e la disponibilità dei gateway di servizi (gateway NAT).

      Crea la tua VCN di conseguenza

    • La VCN verrà utilizzata durante la creazione dell'endpoint personalizzato di Oracle Integration.

      Importante: prendere nota dell'OCID della VCN in quanto verrà utilizzato per la configurazione WAF in Oracle Integration.

Task 2.2: creare una voce CNAME nel DNS personalizzato per l'endpoint Oracle Integration

Ora è necessario accedere all'ambiente di configurazione DNS del dominio per creare una voce CNAME che punti a Oracle Integration. Quando configuri il framework WAF, questa voce CNAME verrà modificata ma è importante crearla in questo momento in modo che sia possibile importare il certificato SSL che verrà utilizzato per la cifratura in transito dell'accesso a Oracle Integration.

  1. Tornare alla pagina del servizio Oracle Integration nella console OCI.

    Creare un CNAME nella zona DNS proprietaria

  2. All'interno dei dettagli dell'istanza, prendere nota del nome FQDN del dominio fornito da OCI per accedere alla console del servizio dell'istanza di Oracle Integration.

    Acquisisci Oracle Integration FQDN

    • Nel nostro esempio, useremo il FQDN oic-lab-instance-axyjvqi24eaa-gr.integration.ocp.oraclecloud.com.
  3. Creare un CNAME nel dominio che punta al nome FQDN dell'endpoint personalizzato di Oracle Integration.

    Nota: non rientra nell'ambito di questa esercitazione per mostrare come configurare un CNAME nel file delle zone DNS.

  4. Una volta che l'FQDN è disponibile, configurare il CNAME del proprio dominio. Dopo la configurazione, verificare che CNAME sia configurato correttamente utilizzando il comando dig.

    $ dig <oic>.<exampledomain>.com

    Esempio di esecuzione dei comandi numerici

Task 2.3: Creare un certificato SSL per il nuovo dominio

Una volta creato il CNAME, è necessario creare un certificato SSL per abilitare il traffico Internet cifrato per l'istanza. In questa esercitazione verrà creato un certificato SSL autofirmato. Negli ambienti di produzione, tuttavia, il certificato deve essere valido.

  1. Per creare il certificato con firma automatica, creare prima una chiave privata.

    $ openssl genrsa -out oic-lab.key 2048

    • Di conseguenza, si otterrà la chiave privata denominata oic-lab.key.

    Generare la chiave privata

  2. Ora, creiamo la richiesta di firma certificato (CSR).

    $ openssl req -key oic-lab.key -new -out oic-lab.csr

    • Compila le informazioni richieste per ottenere il tuo file .csr alla fine. Si noti che il "Nome comune" deve essere esattamente il FQDN utilizzato per il nostro tutorial.

    Generare la richiesta di firma del certificato

  3. Ora che abbiamo la chiave privata (oic-lab.key) e il csr (oic-lab.csr), creiamo il certificato SSL autofirmato. A tale scopo, eseguire il comando riportato di seguito.

    $ openssl x509 -signkey oic-lab.key -in oic-lab.csr -req -days 365 -out oic-lab.crt

    • Questo comando genera un certificato con firma automatica valido per 365 giorni.

    Generare il certificato con firma automatica

    Ora che abbiamo il nostro certificato autofirmato, possiamo importarlo in un vault OCI per utilizzarlo in Oracle Integration.

Task 2.4: creare un vault OCI e importare il certificato SSL

Dopo aver già ottenuto il certificato SSL autofirmato, è necessario creare un vault OCI all'interno del compartimento in cui è in esecuzione Oracle Integration.

  1. Per creare il vault OCI, accedere al menu Servizi nella console Web OCI.

    Creare il vault OCI

  2. Dopo aver caricato la schermata Vault, verificare di trovarsi nel compartimento corretto e fare clic su Crea vault.

    Controllare il compartimento e fare clic sul pulsante Crea vault

  3. Immettere le informazioni per creare il vault in modo corretto e fare clic su Crea vault.

    Compilare le informazioni corrette necessarie nella pagina di creazione del Vault

  4. Dopo aver creato il vault, creare la chiave di cifratura master.

    Crea la chiave di cifratura principale

    • Prima di creare il segreto vault che conterrà il certificato autofirmato, è necessario adattare il formato del certificato da memorizzare nel vault. Questa idoneità corrisponde alla concatenazione del certificato, della chiave, dei certificati intermedi (se presenti) e dell'eventuale passphrase del certificato. Il formato file finale sarà in formato JSON, come mostrato nel modello riportato di seguito:

      ```
      {
          "key": "-----BEGIN PRIVATE KEY-----\n…..-----END PRIVATE KEY-----\n",
          "cert": "-----BEGIN CERTIFICATE-----\n….-----END CERTIFICATE-----\n",
          "intermediates": [
              "-----BEGIN CERTIFICATE-----\n….-----END CERTIFICATE-----\n",
              "-----BEGIN CERTIFICATE-----\n….-----END CERTIFICATE-----\n"
          ],
          "passphrase": "<private key password if encrypted key is provided>"
      }
      ```
      
      • Per raggiungere questo formato con il nostro set di certificati e chiavi, sarà necessaria qualche elaborazione, perché, come si può vedere, non ci dovrebbero essere interruzioni di riga sia nella chiave, sia nel certificato o nella passphrase.
  5. Utilizzare il comando riportato di seguito per regolare la chiave.

    `awk -v RS= '{gsub(/\n+/, "\\n")}1' <seu\_arquivo.key>`
    

    scollegare la chiave privata per formattare correttamente i dati prima di memorizzarli come segreto al Vault

  6. Copiare questo valore e inserirlo nell'elemento "key" del file JSON di esempio precedente. Ripetere il processo con il file crt.

    controllare il file di copia per formattare correttamente i dati prima di memorizzarlo come segreto al Vault

  7. Tornare alla console Web OCI e fare clic sul menu Secrets del vault OCI, quindi fare clic su Crea segreto.

    Creare un segreto

  8. Compilare i campi in modo corretto e nel campo Contenuti segreti inserire il file JSON creato nei passi precedenti.

    Riempire le informazioni corrette

    1. Compilare le informazioni necessarie al modulo per la creazione del segreto, selezionare la chiave di cifratura master e incollare il segreto JSON nel campo Sommario segreto. Una volta creato il segreto, creare l'endpoint personalizzato di Oracle Integration.

Task 2.5: configurare l'endpoint personalizzato per l'istanza di Oracle Integration

  1. Per configurare l'endpoint personalizzato di Oracle Integration, tornare alla pagina Integrazione nella console Web OCI e accedere all'istanza.

    Configura endpoint personalizzato di Oracle Integration

  2. Fare clic su Modifica.

    Fare clic su Modifica

  3. Nella pagina di modifica delle impostazioni di Oracle Integration fare clic su Mostra impostazioni avanzate per visualizzare gli elementi di configurazione dell'endpoint personalizzato.

    Fare clic su Mostra impostazioni avanzate

  4. Per procedere con la configurazione, immettere un nome per l'endpoint personalizzato e selezionare il segreto che contiene il certificato SSL memorizzato nel vault. Infine, fare clic su Salva modifiche.

    Immettere un nome endpoint personalizzato e salvare le modifiche

    • Lo stato dell'istanza di Oracle Integration verrà modificato in UPDATING. Attendere che diventi di nuovo attivo.
  5. Dopo aver ripristinato lo stato ACTIVE dell'istanza, fare clic su Console servizio per eseguire il test dell'accesso al nuovo endpoint personalizzato.

    Apri di nuovo la console del servizio

    • Se tutto è stato configurato correttamente, la console del servizio si aprirà utilizzando il nome FQDN configurato nel CNAME DNS (passo 2 del task 2.2).
  6. Come in questa esercitazione, viene utilizzato un certificato SSL autofirmato. Il browser segnala che il certificato non può essere verificato. Tuttavia, tenere presente che il nome FQDN dell'endpoint personalizzato è già in uso.

    Accedi all'endpoint personalizzato utilizzando il DNS proprietario

  7. Una volta eseguito l'accesso, dovrebbe essere visualizzata la console di Oracle Integration, a indicare che l'endpoint personalizzato funziona correttamente.

    Operazione riuscita

Nota: se si utilizza un certificato SSL valido, il messaggio di avvertenza del browser relativo alla validità del certificato non verrà emesso.

Task 3: Configurare WAF e Oracle Integration AllowList

Ora che l'endpoint personalizzato è attivo e in esecuzione, configurare la regola WAF e la lista di inclusione Oracle Integration per proteggere l'accesso dagli attacchi Layer 7.

Prima di creare e configurare il framework WAF OCI per proteggere Oracle Integration da attacchi esterni, configurare la lista di inclusione di Oracle Integration in modo da limitare gli indirizzi IP di origine che possono accedere all'endpoint personalizzato appena creato. L'idea è che solo il CIDR OCI WAF disponga delle autorizzazioni di accesso. In questo modo, potremo limitare l'accesso esterno all'istanza di Oracle Integration e, di conseguenza, eseguire il tunneling di tutti gli accessi esterni solo tramite il framework WAF.

Per creare correttamente la lista di inclusione, sarà prima necessario acquisire il CIDR del servizio utilizzato da WAF OCI nell'area in cui configuriamo la nostra Oracle Integration.

Task 3.1: trovare il CIDR della propria area OCI

Task 3.2: Trovare il CIDR WAF della propria area

Prendere nota degli indirizzi individuati in modo da poter includere questi record nell'elenco di inclusione di Oracle Integration.

Task 3.3: configurazione di AllowList in Oracle Integration

  1. Ora che abbiamo gli indirizzi pubblici WAF OCI, creiamo la lista di inclusione all'interno di Oracle Integration. A tale scopo, tornare alla schermata dell'istanza, fare clic sul menu Accesso di rete, quindi fare clic su Modifica.

    Creazione della lista di inclusione in Oracle Integration

  2. Compilare le informazioni con i CIDR ottenuti nei passi precedenti e anche l'OCID della VCN creata nel task 2.2.1.

    Inserire le informazioni necessarie

  3. Dopo aver configurato la lista di inclusione, solo il CIDR WAF sarà in grado di accedere direttamente alla console. Tutti gli altri accessi in arrivo tramite Internet devono essere eseguiti tramite il framework WAF.

  4. Per eseguire questa convalida, provare ad accedere alla console di Oracle Integration Service. Se la configurazione è corretta, nel browser verrà visualizzato un messaggio 403 Vietato.

    403 Messaggio non consentito

Configura il framework WAF in modo da consentire il monitoraggio e la protezione di questo accesso.

Task 3.4: configurare la regola perimetrale WAF OCI

Inizialmente, sarà necessario, anche in WAF, creare il record del certificato SSL che verrà utilizzato per fornire accesso HTTPS sicuro alla console di Oracle Integration.

  1. Nel menu della console Web OCI fare clic su Risorse dei criteri perimetrali.

    Vai alle risorse dei criteri perimetrali

  2. Nella pagina del servizio fare clic su Crea certificato.

    Crea certificato

  3. Verrà aperta una pagina per la configurazione del certificato digitale. Compilare le informazioni richieste e caricare il file .crt e .key creato al punto 2.2.3 precedente.

    Compila le informazioni corrette

    Nota: l'opzione Certificato con firma automatica è selezionata perché il certificato SSL creato è con firma automatica. Se si desidera utilizzare un certificato valido, è necessario deselezionare questa opzione.

  4. Una volta creato il certificato, tornare al menu Web Application Firewall per creare un criterio WAF che proteggerà l'endpoint Oracle Integration già configurato. A tale scopo, nel menu Criteri fare clic su Crea criterio WAF.

    Crea criterio WAF

  5. Fare clic sul collegamento per creare una regola del "flusso di lavoro precedente".

    Fare clic sul collegamento del workflow precedente

  6. Si aprirà un nuovo menu e si dovrà compilare correttamente le informazioni richieste.

    Compila le informazioni richieste

    dove:

    1. Nome: inserire un nome per la polizza.
    2. Compartimento criteri WAF: selezionare il compartimento in cui verrà creato il criterio.
    3. Dominio primario: FQDN dell'istanza creata nel DNS.
    4. Nome origine: un nome che identificherà l'URL in cui WAF invierà accessi utente esterni.
    5. URI: il nome FQDN dell'istanza di Oracle Integration (lo stesso di quello configurato in CNAME nel passo 2.2.2 precedente).
    6. Dopo aver compilato gli elementi, fare clic su Crea criterio bordo. Verrà visualizzata una nuova schermata con i dettagli del criterio. Attendere che lo stato del criterio sia "ACTIVE".

Ora, per terminare, sarà necessario eseguire la configurazione delle regole di protezione WAF e, inoltre, sarà necessario riconfigurare il CNAME DNS a un FQDN appartenente all'infrastruttura WAF.

Task 3.5: configurare le regole di protezione WAF OCI

  1. Una volta creato il criterio perimetrale, dovrai impostare alcuni parametri per proteggere l'accesso alla tua istanza di Oracle Integration tramite WAF. A tale scopo, all'interno del criterio WAF, fare clic sul menu Impostazioni, quindi su Modifica nella scheda Impostazioni generali.

    Impostare i parametri corretti

  2. Selezionare l'opzione Abilita supporto HTTPS e selezionare il certificato creato al passo 3.3. Fare clic su Salva modifiche.

    Abilita supporto HTTPS

  3. Dopo aver configurato l'ambiente WAF in modo che utilizzi il certificato SSL, è possibile configurare il criterio "Controllo dell'accesso" e le "Regole di protezione". Queste regole garantiscono la sicurezza necessaria perché l'accesso alla console di Oracle Integration sia protetto. WAF OCI dispone di regole predeterminate che possono essere utilizzate inizialmente nella sua configurazione ed è anche possibile personalizzare le regole in base alle esigenze della tua azienda. La personalizzazione delle regole WAF non rientra nell'ambito di questa procedura.

    • Creazione controllo accesso

      1. Per configurare il controllo dell'accesso, fare clic sul menu Controllo dell'accesso, quindi fare clic su Aggiungi regola di accesso.

        Configurare il controllo dell'accesso

      2. Nella schermata di configurazione del controllo dell'accesso, compilare correttamente gli elementi e fare clic su Aggiungi regola di accesso. Tenere presente che per questa esercitazione verrà creata una regola che consentirà l'accesso alla pagina della console di Oracle Integration solo tramite indirizzi IP provenienti dal Brasile.

        Aggiungi regola di accesso

    • Creazione di regole di protezione

      1. Per eseguire la configurazione, fare clic sul menu Regole di protezione, quindi sulla scheda Regole e abilitare i criteri desiderati. Fare clic sul menu di servizio di ciascuna regola e inserirla in Blocco.

        Crea una regola di protezione

        • Selezionare tutte le regole necessarie. In questa esercitazione verranno abilitate solo le regole XSS (Cross-Site Scripting) per scopi dimostrativi.
      2. Dopo aver abilitato le regole di protezione WAF, fare clic sul menu Modifiche non pubblicate, quindi fare clic su Pubblica tutto.

        Pubblicare le modifiche

L'applicazione delle regole WAF richiede circa 10-15 minuti.

Task 3.6: impostare CNAME su FQDN del WAF

Una volta configurate le "Regole di protezione" del WAF, è possibile modificare il CNAME del dominio privato in modo che tutte le richieste ad esso indirizzate vengano inoltrate al WAF e non più all'endpoint personalizzato di Oracle Integration.

  1. A tale scopo, andare alla pagina Criterio WAF e copiare l'indirizzo CNAME che è necessario configurare nel DNS.

    Copiare il nome FQDN WAF e incollarlo nella configurazione CNAME nella zona DNS proprietaria

  2. Copiare questo indirizzo e modificare il punto DNS all'interno della zona. Dopo aver modificato il DNS, eseguire il comando riportato di seguito per verificare che la configurazione sia corretta.

    $ dig <oic>.<exampledomain>.com

    Esempio di comando numerico

Task 3.7: configurare il ruolo applicazione Oracle Integration

Un ultimo passo prima di eseguire il test dell'accesso a Oracle Integration tramite il framework WAF consiste nel modificare il ruolo applicazione di Oracle Integration in modo da concedere l'accesso agli utenti in modo corretto. Senza questa opzione, gli utenti non saranno in grado di accedere alla console di Oracle Integration.

  1. Nella console Web OCI, fare clic su Domain e accedere alla configurazione del dominio di Identity.

Modifica ruolo applicazione nella configurazione di Oracle Integration

Nota: se non è stato impostato un dominio di Identity personalizzato, verrà utilizzato il dominio denominato predefinito. In questa esercitazione viene utilizzato il dominio predefinito.

  1. Nella pagina Domini fare clic su default.

    Fare clic sul collegamento del dominio di Identity

  2. Una volta dentro la pagina di dominio predefinita, fai clic sul menu "Oracle Cloud Services" e poi fai clic sul collegamento per la tua istanza ICO:

    Fare clic sul collegamento Oracle Cloud Services

  3. Nella pagina di configurazione dell'istanza, fare clic sul menu Ruoli applicazione per visualizzare i ruoli esistenti all'interno dell'applicazione Oracle Integration. In ciascuno dei ruoli è possibile assegnare utenti o gruppi di utenti, consentendo quindi la gestione dettagliata dei profili di accesso all'ambiente Oracle Integration.

    Fare clic su Ruoli applicazione

Task 4: Test e convalida

Dopo aver applicato il criterio WAF e aver configurato il dominio CNAME in modo che punti al dominio FQDN di WAF, puoi finalmente verificare che tutto funzioni correttamente.

  1. Accedi all'URL dell'endpoint tramite il nome FQDN del tuo dominio. Viene visualizzata la pagina della console di Oracle Integration.

    Accedere di nuovo all'URL di Oracle Integration

  2. Per convalidare l'applicazione di filtri eseguita da WAF, accedere alla pagina di configurazione dei criteri e fare clic sul menu Log.

    Convalida che waf funzioni correttamente

  3. Per convalidare il funzionamento del framework WAF, è possibile eseguire il test di un semplice attacco XSS tramite URL nel browser.

    https://<oic>.<exampledomain>.com/ic/home/?default=<script>alert(document.cookie)</script>

    Attacco XSS semplice

  4. Infine, accedere al log WAF e visualizzare il record relativo al blocco dell'accesso non autorizzato motivato dall'attacco XSS.

    Controlla log WAF

    Ora è disponibile un ambiente Oracle Integration su Internet e protetto dal framework WAF OCI.

Prima di usare questo materiale, consigliamo di leggere i collegamenti di riferimento e la documentazione ufficiale per l'amministrazione degli ambienti cloud Oracle.

Approvazioni

Autore - Rodrigo Pace de Barros (Oracle LAD A-Team Cloud Security Solution Engineer)

Altre risorse di apprendimento

Esplora altri laboratori su docs.oracle.com/learn o accedi a contenuti di formazione gratuiti sul canale YouTube di Oracle Learning. Inoltre, visitare education.oracle.com/learning-explorer per diventare Explorer di Oracle Learning.

Per la documentazione sul prodotto, visitare il sito Oracle Help Center.