Richiedere un certificato SSL in ServBay tramite ACME
ServBay supporta il protocollo ACME per consentire la richiesta automatica di certificati SSL/TLS per i siti web in locale. ACME (Automated Certificate Management Environment) è uno standard aperto che automatizza la gestione del ciclo di vita dei certificati (richiesta, rinnovo e revoca). Attraverso il pannello di gestione ACME integrato in ServBay, puoi facilmente configurare certificati SSL attendibili per i tuoi siti locali—fondamentali per simulare ambienti di produzione e testare funzionalità HTTPS.
Per impostazione predefinita, ServBay utilizza ZeroSSL per emettere i certificati, ma puoi facilmente scegliere anche Let's Encrypt, Google Trust Services o qualsiasi altra autorità di certificazione (CA) compatibile con ACME.
TIP
Per mantenere la massima coerenza tra ambiente di sviluppo locale e produzione, è fondamentale utilizzare certificati SSL attendibili. Grazie alla funzione ACME di ServBay, il tutto è estremamente semplice.
Spiegazione dei concetti chiave
Prima di iniziare, è utile comprendere alcuni concetti di base che faciliteranno l’uso di ACME in ServBay:
- Protocollo ACME: Uno standard aperto che automatizza l’interazione tra CA e server per richiedere, rinnovare e gestire certificati.
- Verifica DNS-01 (tramite API DNS): Il protocollo ACME prevede vari metodi di verifica della proprietà del dominio. ServBay utilizza principalmente il metodo DNS-01: la CA richiederà l’aggiunta di uno specifico record TXT nel DNS del dominio. Se il record esiste ed è corretto, la CA conferma che hai il controllo del dominio. Vantaggi di questo metodo:
- Non richiede accesso pubblico all’ambiente di sviluppo locale.
- Funziona anche se le porte 80/443 della macchina locale sono bloccate da firewall o ISP.
- Binding account esterno (EAB - External Account Binding): Alcune CA (es. Google Trust Services o ZeroSSL) richiedono di collegare il tuo client ACME (in ServBay, acme.sh integrato) al tuo account CA tramite EAB (tramite una coppia di Key ID e HMAC Key) la prima volta che richiedi un certificato.
- Certificati ECC vs RSA:
- RSA: Algoritmo tradizionale, ampia compatibilità, ma necessita di chiavi lunghe (es. 2048 o 4096 bit) per garantire la sicurezza, con maggiore dispendio computazionale.
- ECC (Crittografia a curve ellittiche): Algoritmo moderno che offre la stessa sicurezza con chiavi molto più corte (es. 256 o 384 bit), migliori prestazioni, handshake più rapido, minore consumo di banda e migliore forward secrecy. ServBay consiglia ECC di default.
Prerequisiti
La richiesta di certificati ACME in ServBay avviene utilizzando le API DNS, per cui il sito locale non deve essere accessibile da Internet. Prima di procedere, assicurati di avere:
- Un dominio registrato: Devi essere proprietario di un dominio su cui puoi modificare i record DNS.
- API Key del provider DNS del dominio: Durante la richiesta ACME, sarà necessario aggiungere/rimuovere automaticamente record TXT tramite API. Recupera la API Key del tuo DNS provider (che gestisce la zona DNS, non necessariamente il registrar). Consulta la sezione "DNS API" della Wiki ufficiale di
acme.sh
per la lista dei provider supportati e le istruzioni: How to use DNS API. - Informazioni EAB (solo per Google Trust Services o prima richiesta ZeroSSL): Se scegli Google Trust Services, ottieni le credenziali EAB da Google Cloud seguendo le loro istruzioni ufficiali: Obtaining EAB credentials from Google Cloud. Con ZeroSSL, potrebbe essere necessaria la validazione email o una API Key al primo utilizzo.
Richiesta di un certificato SSL tramite ACME in ServBay
Segui questi passaggi per richiedere un certificato SSL per il tuo sito in locale tramite ACME in ServBay:
- Apri il pannello di controllo di ServBay
Avvia ServBay e accedi al pannello di gestione tramite l’icona nella barra dei menu o nel Dock. - Vai alla gestione dei certificati SSL
Nel menu di sinistra del pannello, seleziona la voceSSL 证书
. - Richiedi un nuovo certificato
Nella schermata di gestione SSL, clicca il pulsante+
in alto a destra e scegli申请新证书
. - Configura le informazioni di base del certificato
- Nome certificato: Inserisci un nome identificativo (es:
servbay-demo-ssl
). - Uso: Seleziona
TLS/SSL
. - Modalità richiesta: Seleziona
ACME
.
- Nome certificato: Inserisci un nome identificativo (es:
- Seleziona l’Autorità di Certificazione (CA) Dal menu a discesa
签发方
, scegli la CA desiderata. Il default èZeroSSL
, ma puoi anche selezionareLet's Encrypt
oGoogle Trust Services
. L’esempio qui fa riferimento aZeroSSL
. - Scegli il provider DNS API Dal menu
DNS API 提供商
, seleziona il provider DNS che gestisce il dominio (esempio:Cloudflare
). Attenzione: si tratta della piattaforma che gestisce effettivamente la zona DNS, non del registrar (se sono diversi). - Scegli l’algoritmo di firma e la lunghezza della chiave
- Algoritmo: Consigliato
ECC
per prestazioni e sicurezza; puoi optare perRSA
per dispositivi più datati. - Lunghezza chiave: ECC consiglia di default 384 bit (più che sicuro); per RSA, 2048 o 4096 bit sono i valori comuni.
- Algoritmo: Consigliato
- Inserisci le informazioni di verifica In base alla CA e al provider DNS scelto, appariranno i relativi campi da compilare.
- Per ZeroSSL, può essere necessario inserire l’email.
- Per Cloudflare o altri DNS API, inserisci l’API Key o le credenziali richieste seguendo quanto riportato nella Wiki di
acme.sh
.
WARNING
Attenzione: incolla solo il valore della API Key o della passphrase, senza eventuali prefissi come
export
da shell. - Inserisci il dominio Nel campo
域名
, specifica il dominio per cui vuoi il certificato (es.servbay.demo
o*.servbay.demo
). Se desideri un certificato wildcard (come*.servbay.demo
), accertati che il provider DNS supporti l’aggiunta automatizzata di record TXT per wildcard. - Avvia la richiesta Verifica che tutti i dati siano corretti, poi premi il pulsante
请求
. ServBay utilizzerà lo strumento integratoacme.sh
per svolgere in automatico la verifica e richiedere il certificato alla CA, utilizzando le credenziali API DNS fornite.
Il processo può richiedere qualche minuto, a seconda della propagazione DNS e della risposta della CA. Puoi monitorare i log e lo stato della richiesta nell’elenco certificati di ServBay. Se tutto va a buon fine, il certificato apparirà nella lista SSL 证书
.
Applicare il certificato in ServBay alla configurazione di un sito
Una volta ottenuto il certificato ACME, puoi applicarlo facilmente a uno dei siti configurati in ServBay:
- Vai alla voce
网站
nel menu sinistro del pannello di gestione di ServBay. - Seleziona il sito desiderato e premi l’icona a matita per modificarlo.
- Nei dettagli di configurazione sito, trova l’opzione
SSL 证书
. - Seleziona dal menu a tendina il nome del certificato ACME appena ottenuto.
- Assicurati di attivare l’interruttore
启用 SSL
. - Salva la configurazione. Il tuo sito sarà ora accessibile via HTTPS.
Rinnovo dei certificati ACME
I certificati ACME (come quelli emessi da Let's Encrypt o ZeroSSL) hanno generalmente validità 90 giorni. Per mantenere l’accesso HTTPS sicuro, il certificato va rinnovato prima della scadenza.
ServBay monitora automaticamente lo stato dei certificati ACME: quando mancano pochi giorni alla scadenza, userà le credenziali DNS API già configurate per tentare il rinnovo automatico.
Salvo problemi con le credenziali DNS o il servizio DNS, non è necessario l’intervento manuale: ServBay gestisce tutto in background.
FAQ e risoluzione dei problemi
- La richiesta fallisce con errore sulla verifica DNS?
- Controlla che le credenziali DNS API inserite siano corrette e abbiano i permessi necessari per modificare i record TXT.
- Verifica che il provider DNS selezionato in ServBay corrisponda effettivamente a quello che gestisce la zona DNS.
- Le modifiche DNS potremmo richiedere alcuni minuti (o più) per propagarsi. Attendi e riprova dopo un po’.
- Assicurati che il nome dominio sia scritto correttamente.
- La richiesta fallisce per problemi con EAB?
- Se usi Google Trust Services o ZeroSSL per la prima volta, accertati di avere inserito le informazioni EAB corrette.
- Se in passato la richiesta è riuscita ma ora fallisce, EAB potrebbe essere scaduto o invalido: recuperalo nuovamente.
- Richiesta fallita per superamento dei limiti di frequenza (Rate Limit)?
- Le CA limitano il numero di certificati richiedibili dallo stesso dominio o IP in un intervallo di tempo. Evita richieste ripetute in poco tempo; attendi qualche ora o qualche giorno prima di riprovare.
- Certificato ottenuto con successo ma il sito risulta comunque non sicuro nel browser?
- Verifica di aver applicato il certificato al sito corretto in ServBay e di aver attivato SSL.
- Prova a svuotare la cache del browser o usa la navigazione in incognito.
- Assicurati che il file Hosts locale e la configurazione di rete puntino correttamente a ServBay.
- Quando avviene il rinnovo automatico in ServBay? ServBay tenta il rinnovo automatico tipicamente a circa 30 giorni dalla scadenza del certificato. Se l’app ServBay è in esecuzione e connessa a Internet, il rinnovo avviene in modo trasparente.
Conclusione
ServBay offre potenti funzionalità ACME per richiedere e gestire facilmente certificati SSL/TLS attendibili su siti di sviluppo locale tramite DNS API. Questo non solo semplifica la configurazione dei certificati, ma permette di costruire ambienti di sviluppo HTTPS molto più simili alla produzione, migliorando l’efficacia di sviluppo e testing.
Speriamo che questa guida ti aiuti a configurare senza problemi i certificati SSL in ServBay tramite ACME, migliorando la tua esperienza di sviluppo in locale.