Guida MikroTik
Sistema e alta affidabilitàAvanzato

Certificati: TLS, self-signed e Let's Encrypt

Come generare, importare e usare i certificati in RouterOS v7 per cifrare i servizi di gestione (api-ssl, www-ssl), SSTP, hotspot e per ottenere certificati validi automaticamente con Let's Encrypt.

I certificati cifrano i servizi di gestione (HTTPS/WebFig, API SSL, WinBox su TLS), le VPN SSTP e i captive portal hotspot. RouterOS v7 può generare una propria CA e certificati firmati da essa, importare certificati esterni, e dalla v7 anche ottenere automaticamente certificati validi da Let's Encrypt.

Prerequisito: orologio corretto

Prima di toccare i certificati, assicurati che NTP sia sincronizzato (vedi sys-ntp-client). Un orologio nel passato rende i certificati 'non ancora validi' e fa fallire ogni handshake TLS — è la causa numero uno dei problemi con i certificati sui router MikroTik senza RTC.

Opzione A: CA interna + certificato self-signed

Generare una CA e firmare un certificato server
# 1) Crea il template della CA (autorità di certificazione interna)
/certificate add name=ca-template common-name="WispOS-CA" \
    key-usage=key-cert-sign,crl-sign days-valid=3650

# 2) Firma la CA (diventa self-signed root)
/certificate sign ca-template name=wispos-ca

# 3) Crea il certificato server (CN = IP o hostname del router)
/certificate add name=srv-template common-name="10.0.0.1" days-valid=825

# 4) Firma il certificato server con la CA appena creata
/certificate sign srv-template ca=wispos-ca name=router-cert

# Verifica (cerca i flag: K=ha chiave privata, T=trusted, A=CA)
/certificate print

Usare il certificato per i servizi di gestione

Abilitare www-ssl e api-ssl con il certificato
# HTTPS / WebFig
/ip/service set www-ssl certificate=router-cert disabled=no

# API SSL (per integrazioni NMS / connettore)
/ip/service set api-ssl certificate=router-cert disabled=no

# Disabilita le versioni in chiaro corrispondenti
/ip/service disable www
/ip/service disable api

Opzione B: Let's Encrypt (certificato pubblico valido)

Se il router ha un nome DNS pubblico che punta al suo IP e la porta 80 è raggiungibile dall'esterno (validazione HTTP-01), RouterOS v7 può ottenere e rinnovare automaticamente un certificato Let's Encrypt: niente più avvisi 'certificato non attendibile' su WebFig o SSTP.

/certificate/enable-ssl-certificate (ACME)
# Richiede: DNS pubblico (es. core.tuodominio.it) che risolve a questo router
# e porta TCP 80 raggiungibile dall'esterno per la validazione HTTP-01.

# Ottieni il certificato (RouterOS gestisce richiesta + rinnovo automatico)
/certificate/enable-ssl-certificate dns-name=core.tuodominio.it

# Il certificato compare in lista; usalo per i servizi
/certificate print
/ip/service set www-ssl certificate=core.tuodominio.it disabled=no

Opzione C: importare un certificato esterno

Import di certificato + chiave (o PKCS12)
# Carica i file sul router (Winbox > Files o scp): es. fullchain.pem e key.pem
# Importa il certificato (chiede la passphrase se la chiave è cifrata)
/certificate/import file-name=fullchain.pem passphrase=""
/certificate/import file-name=key.pem passphrase=""

# In alternativa, importa un singolo bundle PKCS#12
# /certificate/import file-name=bundle.p12 passphrase="SegretoP12"

# Esportare un certificato (per copiarlo su un altro router/client)
/certificate/export-certificate router-cert type=pem

Usi tipici nei servizi WISP

  • VPN SSTP: /interface/sstp-server/server set certificate=router-cert enabled=yes per una VPN che passa anche da reti restrittive (porta 443).
  • Hotspot/captive portal: assegna il certificato al profilo hotspot per il login HTTPS.
  • EAP-TLS / RADIUS: la CA interna può firmare i certificati client per autenticazione forte.
  • WinBox over TLS e API SSL per le integrazioni NMS/connettore.
Best practice: (1) i client che si fidano del certificato self-signed devono importare la TUA CA come trusted — distribuiscila una volta sola; (2) tieni le chiavi private al sicuro e NON esportarle senza passphrase; (3) Let's Encrypt è ideale per i router con nome pubblico; per la rete di gestione interna una CA aziendale è più pratica; (4) imposta days-valid ragionevoli e pianifica il rinnovo (Let's Encrypt si rinnova da solo, i self-signed no — segna in calendario la scadenza o automatizza la rigenerazione con uno script).
certificaticertificateTLSSSLself-signedCAlet's encryptacmeenable-ssl-certificateimportpkcs12www-sslapi-sslsstpRouterOS

Configura senza fatica con l'AI

In WispOS l'agente AI genera la configurazione RouterOS dalle tue parole e un tutor ti guida passo passo.

Prova WispOS