Vai al contenuto
Avanet

Configurare i certificati Let's Encrypt su Sophos Firewall

La funzionalità integrata Let’s Encrypt in Sophos Firewall 22 richiede e rinnova i certificati per gli FQDN pubblici. Utilizza HTTP-01 su IPv4. Per ogni convalida, il firewall crea una regola WAF temporanea; mentre è in corso la convalida, le applicazioni Web protette dalle regole WAF non sono disponibili attraverso il firewall.

I passaggi di configurazione e assegnazione mostrati qui si riferiscono a SFOS 22. Il diverso momento del rinnovo in SFOS 23 è descritto esplicitamente nella sezione dedicata al rinnovo.

⚠️ Emissione e rinnovo possono quindi interrompere il servizio. Esegui le modifiche avviate manualmente in una finestra di manutenzione controllata per le applicazioni WAF in produzione e considera anche il momento del rinnovo automatico, che dipende dalla versione. Le pagine Sophos confrontate qui non documentano un’impostazione che consenta di programmare liberamente quel momento. Durante la convalida, la porta 80 non deve essere bloccata o inviata altrove da DNAT, firewall, GeoIP o regole upstream.

Procedura rapida

  1. Fai in modo che ogni FQDN venga risolto pubblicamente e in modo coerente in tutto il mondo all’indirizzo IPv4 selezionato.
  2. Confermare che l’HTTP in entrata sulla porta 80 raggiunga il firewall e che non si applichi DNAT a quell’indirizzo e porta.
  3. Vai a Certificates > Let’s Encrypt, leggi i termini e fai clic su Register account.
  4. Vai a Certificates > Certificates, fai clic su Add, seleziona Request Let’s Encrypt certificate sotto Action e completa Name, Domains e Hosted address.
  5. Dopo aver fatto clic su Save, assegnare il certificato valido al servizio previsto e testarlo esternamente.
  6. Controlla la data di scadenza, il percorso della porta 80 e letsencrypt.log prima della finestra di rinnovo.

Usi e limitazioni

L’integrazione è adatta ai servizi in cui il firewall presenta il certificato, inclusi WAF, WebAdmin, User Portal, VPN Portal basato su browser, Captive Portal, portali SPX e accesso hotspot. Per il resto di una pubblicazione WAF, consultare Sophos Firewall WAF: pubblicare server Web in modo sicuro.

Sophos documenta questi limiti:

  • Sono supportati solo FQDN pubblici e IPv4.
  • La convalida utilizza HTTP-01. Questa integrazione SFOS non accetta indirizzi IP o domini con caratteri jolly.
  • Remote Access VPN, Site-to-Site VPN e il servizio di autenticazione Chromebook SSO non possono utilizzare questi certificati. Il certificato VPN Portal basato su browser è un’impostazione separata.
  • Per SFOS 22, Sophos indica una validità di 90 giorni e una richiesta di rinnovo quando restano meno di 30 giorni. In SFOS 23, invece, il rinnovo dipende dalla durata di validità effettiva del certificato: il firewall richiede il rinnovo quando sono trascorsi due terzi di tale durata. Il momento del rinnovo si adatta così alle variazioni della durata di validità dei certificati Let’s Encrypt.
  • I certificati esistenti smettono di rinnovarsi dopo Deregister account.

Sophos ha introdotto l’integrazione con SFOS 21. Sophos Firewall v21: le novità principali contestualizza le funzionalità iniziali.

Creare esternamente un certificato con caratteri jolly con DNS-01; vedere Creare un certificato con caratteri jolly Let’s Encrypt. Gestione dei certificati su Sophos Firewall copre importazioni, chiavi private e catene di CA. Il supporto IPv6 in Sophos Firewall 22 spiega altri limiti di IPv6.

Prepara il DNS e il percorso di rete

Ogni iscrizione sotto Domains deve soddisfare le stesse condizioni:

  • Il record DNS pubblico si risolve nell’indirizzo WAN IPv4 del firewall o in un indirizzo che instrada la porta 80 al firewall.
  • Tutti i provider DNS pubblici restituiscono lo stesso indirizzo. GeoDNS dipendente dalla regione non è adatto per questo flusso di lavoro.
  • Il record DNS deve contenere un indirizzo IP. Sophos consente indirizzi multipli solo quando appartengono ad altri firewall che instradano HTTP al firewall richiedente.
  • Né una regola del firewall né un dispositivo upstream possono bloccare la porta in entrata 80. Ciò include le regole GeoIP; Let’s Encrypt convalida da molti paesi e non pubblica intervalli di fonti di convalida fissi.
  • Nessun DNAT potrebbe applicarsi alla porta 80 sull’indirizzo WAN del firewall. Se un router possiede l’IP pubblico davanti al firewall, quel router deve invece inoltrare la porta 80 all’interfaccia WAN del firewall.
  • Un percorso SD-WAN non deve inviare HTTP in uscita attraverso un dispositivo che impedisce l’accesso a Let’s Encrypt.

Mantieni l’orologio sincronizzato con NTP. Controllare DNS e porta 80 dall’esterno della rete locale prima di richiedere un certificato; il loopback DNS o NAT diviso può rendere fuorviante un test interno.

Registra o cancella l’account

  1. Aprire Certificates > Let’s Encrypt.
  2. Leggere Subscriber Agreement e i termini.
  3. Fare clic su Register account.

Facendo clic sul pulsante si accetta Subscriber Agreement. Se le condizioni cambiano, l’SFOS richiede nuovamente la registrazione. Fino alla sua conferma non è possibile creare nuovi certificati e quelli esistenti non vengono rinnovati. Sophos invia un’e-mail all’amministratore e mostra un avviso Control Center; configurare la consegna della posta elettronica in Administration > Notification settings.

Deregister account termina la registrazione. Non rimuove necessariamente tutti i certificati esistenti, ma i futuri rinnovi vengono interrotti. Conferma i certificati sostitutivi, le assegnazioni e le date di scadenza prima di annullare la registrazione.

Richiedi un certificato

  1. Apri Certificates > Certificates e fai clic su Add.
  2. Per Action, selezionare Request Let’s Encrypt certificate.
  3. Inserisci un Name univoco, ad esempio le-app-example-com.
  4. In Domains, aggiungere tutti gli FQDN richiesti, ad esempio app.example.com. Non inserire un indirizzo IP o *.example.com.
  5. In Hosted address selezionare l’indirizzo IPv4 pubblico dell’interfaccia WAN su cui si risolvono i domini.
  6. Fare clic su Save e tenere conto dell’interruzione del WAF.
  7. In Certificates > Certificates, verificare che il certificato sia valido e attendibile e abbia una data Valid until plausibile.

Se un FQDN è sbagliato, rimuovi la richiesta non riuscita e creala di nuovo con il nome corretto. Correggi il DNS e il percorso della porta 80 prima di riprovare anziché inviare ripetutamente la stessa richiesta non valida.

Assegna il certificato

L’emissione da sola non modifica un servizio. L’SFOS 22 documenta questi compiti:

  • WAF: modifica la regola WAF in Rules and policies > Firewall rules, attiva HTTPS e seleziona il certificato in HTTPS certificate. I suoi domini popolano la regola. Il salvataggio di una regola WAF riavvia tutte le regole di protezione del server Web e interrompe le relative connessioni live.
  • Portali WebAdmin, User Portal, VPN Portal, Captive Portal e SPX: Vai a Administration > Admin and user settings > Admin console and end-user interaction > Certificate e seleziona il certificato per il servizio pertinente.
  • Hotspot: vai a Wireless > Wireless settings > Hotspot settings, selezionalo in Login page certificate e fai clic su Apply. Questo certificato viene utilizzato quando Redirect to HTTPS è abilitato per l’hotspot.

Quindi apri il vero FQDN dall’esterno. Il nome del certificato, il SNI, i domini WAF e il certificato effettivamente servito devono concordare. Per SMTP TLS o un’altra funzionalità, utilizzare solo un selettore di certificato mostrato nella pagina SFOS 22 di tale funzionalità; le assegnazioni del portale di cui sopra non si applicano automaticamente ad esso.

Assegna, elimina o ripristina in sicurezza

Prima della modifica, annota il certificato precedente e tutte le assegnazioni interessate, crea un backup aggiornato della configurazione e mantieni disponibile un percorso di test esterno. Se possibile, assegna prima il nuovo certificato a un solo servizio e provalo con il relativo FQDN reale. Se il test fallisce, seleziona di nuovo il certificato precedente nella stessa configurazione del servizio e conferma con Save o Apply. Per WAF, questa operazione riavvia nuovamente tutte le regole Web Server Protection e interrompe le connessioni attive.

Non eliminare il certificato precedente finché tutti i servizi interessati non hanno superato un test esterno e non sono chiare le responsabilità per scadenza e rinnovo. Prima dell’eliminazione, sposta ogni riferimento noto sul nuovo certificato o su un altro certificato valido. Il ripristino del backup è l’ultima opzione di rollback, non la prima: sostituisce l’intera configurazione in esecuzione e riavvia il firewall.

Rinnovo, HA e backup

Il momento del rinnovo dipende dalla versione di SFOS: SFOS 22 richiede il rinnovo quando restano meno di 30 giorni; SFOS 23 quando sono trascorsi due terzi della durata di validità effettiva del certificato. Per i controlli operativi, verifica il certificato specifico e il suo periodo di validità, anziché presumere una soglia di 30 giorni per SFOS 23. Entrambe le versioni richiedono ancora un percorso DNS, IPv4 e porta 80 funzionante, come per l’emissione iniziale. Ricontrolla il percorso dopo aver modificato DNS, provider, NAT, GeoIP, SD-WAN, WAF o firmware. Un certificato attualmente valido non dimostra che la successiva convalida funzionerà.

Sophos descrive i backup come copie crittografate dell’intera configurazione del firewall. Effettua un backup corrente prima delle modifiche al certificato o al WAF. Il ripristino sostituisce la configurazione in esecuzione e riavvia il firewall, quindi controlla successivamente lo stato dell’account, i certificati, le assegnazioni dei servizi e la consegna esterna.

In un cluster HA, ripristina un backup sul Primary corrente, mai sull’Auxiliary. Il Primary si riavvia senza failover, causando un’interruzione sia in Active-Passive sia in Active-Active. Se il backup contiene la configurazione HA, il Primary sincronizza quindi la configurazione ripristinata sull’Auxiliary. Se non contiene una configurazione HA, l’HA viene disattivata e l’Auxiliary conserva inizialmente la configurazione precedente; segui in questo caso la procedura di ripristino documentata da Sophos. Sophos non documenta nella pagina Let’s Encrypt ulteriori logiche specifiche per account o rinnovo. Dopo un ripristino o un cambio di ruolo, verifica quindi lo stato del certificato ed esegui un test TLS esterno senza basarti su supposizioni.

Convalida e risolvi i problemi

Dopo l’emissione e ad ogni rinnovo verificare:

  • DNS pubblici da diverse regioni;
  • la voce Certificates > Certificates;
  • il servizio interessato dall’esterno della LAN;
  • FQDN, SAN, emittente, scadenza e l’intera catena intermedia;
  • Log viewer, più tail -f /log/reverseproxy.log per WAF;
  • eventi di emissione e rinnovo in letsencrypt.log.

Da un computer amministratore esterno, questo comando di sola lettura mostra i certificati inviati dal servizio. Sostituisci app.example.com due volte con il vero FQDN:

openssl s_client -connect app.example.com:443 -servername app.example.com -showcerts </dev/null

L’output deve contenere il certificato del server e i certificati intermedi necessari. Di norma il server non invia la root trust anchor. Un secondo controllo usa il trust store del computer:

curl -Iv https://app.example.com/

Nell’Advanced Shell, seguire il log ufficiale di Let’s Encrypt; premere Ctrl+C per interrompere la visualizzazione:

tail -f /log/letsencrypt.log

Sophos elenca tail -f /log/vpncertificate.log per le operazioni generali sui certificati e tail -f /log/reverseproxy.log per WAF. SFOS 22.0 MR2 Build 546 ha aggiunto il supporto per YE Root, YE1, YE2, YR Root, YR1 e YR2. Se solo i client più vecchi falliscono dopo il rinnovo, controlla i loro truststore. Se il server omette un elemento intermedio, verificare innanzitutto il firmware, l’assegnazione del servizio e i proxy upstream, quindi rivolgersi al supporto Sophos con l’output del test.

I guasti più comuni possono essere ristretti come segue:

  • La richiesta fallisce immediatamente: controlla l’FQDN pubblico, la risposta DNS coerente a livello globale e la destinazione IPv4.
  • La porta 80 raggiunge un altro sistema: Rimuovere o correggere DNAT sul firewall; se è presente un router upstream, verificarne l’inoltro al firewall.
  • L’errore dipende dalla regione: Controlla GeoIP e i filtri del provider. Non limitare l’accesso a presunti elenchi IP Let’s Encrypt.
  • Errore dopo una modifica del routing: controlla il percorso HTTP SD-WAN in uscita.
  • Viene servito il vecchio certificato: controlla l’assegnazione del servizio e qualsiasi bilanciatore del carico upstream o proxy inverso.
  • Il rinnovo non avviene: controlla la validità residua, la registrazione, i termini modificati e il percorso HTTP-01 invariato.
  • Un certificato IP dinamico creato durante EAP non si rinnova in GA: Elimina e ricrea questo certificato specifico nella build GA, come indicato da Sophos.

Domande frequenti

Perché la porta 80 deve essere aperta?

L’integrazione SFOS utilizza HTTP-01. Questa sfida inizia solo sul porto 80; Let’s Encrypt può seguire reindirizzamenti a HTTPS, ma la prima connessione deve raggiungere la porta 80.

Quando Sophos Firewall rinnova il certificato?

Per SFOS 22, Sophos indica una validità di 90 giorni e una richiesta di rinnovo quando restano meno di 30 giorni. SFOS 23 richiede il rinnovo quando sono trascorsi due terzi della durata di validità effettiva del certificato, adattandosi alle variazioni di tale durata. I requisiti dell’emissione iniziale si applicano nuovamente.

Il certificato può essere usato per una VPN?

Può essere selezionato per lo VPN Portal basato su browser. Sophos esclude gli stessi Remote Access VPN e Site-to-Site VPN da questa integrazione.

Che cosa accade al WAF durante la validazione?

Durante la convalida di qualsiasi CSR, le applicazioni Web protette dalle regole WAF non sono disponibili attraverso il firewall. Il salvataggio di una regola WAF interrompe anche le connessioni di protezione del server Web attive.