Home

"I'm brave but I'm chicken shit"

Exchange 2007 e il certificato scaduto

Dopo circa un’anno dall’installazione, scade il certificato di Exchange Server 2007. Outlook continua a funzionare, ma sul client (con Vista, su XP non ho verificato) appare un fastidioso messaggio che segnala come non più valido il certificato del server di posta.
Se, come spesso accade, il vostro certificato è self-signed, cioè non emesso da una autorità di certificazione (non lo avete pagato), è necessario prima generare una richiesta e poi emettere un nuovo certificato basato su quest’ultima.
La richiesta si genera dalla Management Shell di Exchange 2007, tramite il commandlet New-ExchangeCertificate. La sintassi non è complicatissima, comunque ho trovato questo strumento online che la genera per noi. Otterremo una cosa simile a:
New-ExchangeCertificate -GenerateRequest -Path c:\xxxx.csr -KeySize 1024 -SubjectName "c=IT, s=Italy, l=Genoa, o=Xxxxx S.p.A., cn=xxxx.yyyy.zzzz" -DomainName tttt.rrrr.vvvv -PrivateKeyExportable $True (inserite anche il nome DNS nel box Subject Alternative Names, se il server è pubblicato su Internet.)
Apriamo una Exchange Management Shell e incolliamo il comando, il quale genera la richiesta e la mette nel file c:\xxxx.csr.

A questo punto se non avete già un server CA (CAS: Certificate Authority Server) sulla vostra rete, lo dovete installare. Si fa tranquillamente dal Pannello di Controllo –> Installazione Applicazioni –> Installazione Componenti di Windows. Fatelo sul server Exchange 2007, è più comodo e passi successivi presumono che il server sia uno solo.

Terminata l’installazione, accedete a https://nomeserver/certsvr, cliccate Request a certificate, poi Advanced certificate request, poi Submit a certificate request by using a base-64-encoded CMC or PKCS #10 file. Copiate il contenuto del file c:\xxxx.csr nel box Saved Request, selezionate Web Server in Certificate Template, e cliccate su Submit. Scaricate il certificato dalla schermata successiva e salvate il file .cer in c:\.

A questo punto, sempre dalla Management Shell di Exchange 2007, impartite il comando:

import-exchangecertificate -path c:\certnew.cer | enable-exchangecertificate -services iis

e premete invio.

Se tutto è andato a buon fine, potete controllare tramite la gestione di IIS che il certificato sia installato correttamente. Naturalmente il nostro server non è considerato attendibile come autorità di certificazione, il certificato va inserito nel repository delle fonti attendibili sul client. (Forse viene fatto automaticamente al reboot dei client.)

Aggiornamento: dopo poco tempo nell’application log è apparso l’errore 12014, ricorrente ogni mezz’ora circa; l’avviso lamenta la mancanza di un certificato che contenga il nome specificato nel campo FQDN del connettore SMTP in uscita. Ad una prima analisi sembra che ciò non sia vero, in realtà bisogna controllare il campo “Identificazione Personale” nei dettagli del certificato e annotare il relativo valore. Dopodiché tramite Management Shell di Exchange, impartire il seguente comando:

Enable-ExchangeCertificate -Thumbprint 3afd24627925332cd096f45eb5b4473c72526112 -Services "SMTP"

sostituendo il valore Thumbprint qui indicato con quello precedentemente annotato dai dettagli del certificato.


Pubblicato

in

da

Commenti

22 risposte a “Exchange 2007 e il certificato scaduto”

  1. Avatar Daniele
    Daniele

    Il messaggio di errore lo da Outlook 2007 all’apertura, Outlook 2003 e precedenti lo ignorano. E’ comunque un messaggio non bloccante.

  2. Avatar Paolo Gagliardi

    Minkia! Tutto qui? 😛

  3. […] Andrea Beggi » Exchange 2007 e il certificato scaduto (tags: exchange) […]

  4. Avatar sirus

    Ma non c’è la possibilità di creare un certificato privo di scadenza?

  5. Avatar spippolazione

    Ti tocca usare exchange ???

    …mi dispiace molto 🙂

    Dopo te le lavi le mani vero ? 😀

  6. Avatar Sysadmin
    Sysadmin

    Ottimo articolo, l’ho seguito passo passo e sono riuscito a rinnovare il certificato senza problemi, mi hai risparmiato ore e ore di ricerche ed esperimenti, GRAZIE!!

  7. Avatar Alessandro
    Alessandro

    Grazie, grazie ed ancora grazie per avermi fatto trovare “LA LUCE”… PS: Mi sono permesso di postare il tuo post nel mio blog, scopiazzando il tuo, aggiornandolo ed integrandolo…. spero non ti dispiaccia! Grazie ancora.

  8. […] su internet trovo questo post di Andrea Beggi (mitico!) che m’illumina e che mi permetto di riportare sul mio blog aggiornandolo ed […]

  9. Avatar Roberto
    Roberto

    Ciao,

    riesci a spiegarmi questo passaggio?

    https://nomeserver/certsvr
    Sul nome del server ci sono… ma invece per quanto riguarda “cersrv” fa riferimento all’opzione dell IIS?
    Xe se metto tutto cosi com’è mi da “pagina scaduta”

    Te lo chiedo perchè non riesco ad andare avanti..

    Ho omesso qualche passaggio?

    Grazie

  10. Avatar Michele Maran
    Michele Maran

    Salve
    un piccolo suggerimento per evitare l’host name mismatch da ie o da outlook : riportate nella sezione dei nomi alternativi (Subject Alternative Names) ANCHE il nome principale del certificato. Sembra che se ciò non venga fatto il certificato non sia valido ed Outlook 1007 segnalerebbe l’errore 10 mente ie8/7 segnala non corrispondenza tra l’host ed il common name.
    Grazie
    Michele

  11. Avatar Matteo Fracassetti
    Matteo Fracassetti

    C’è un piccolo errore nella guida, credo. Il percorso corretto per richiedere il certificato dovrebbe essere “https://serverca/certsrv/” e non “https://nomeserver/certsvr”
    Era mezzora che cercavo di capire perchè non mi si apriva la pagina della CA!! 😀

    Grazie della guida, davvero utile.

  12. Avatar grenzo
    grenzo

    Ma come faccio a capire se un server e’ CA? Io ho un DC 2003 che con: Administrative Tools / Certification Authority parte e mi dice la validita’ del certificato,

    Pero’ ho provato con:
    https://nomedelserver/certsrv/

    ma non trova pagina 🙁
    Come posso fare?
    Grazie

  13. Avatar Alessandro
    Alessandro

    Ciao, ottimo post e sito! Funziona anche per Exchange 2003 o bisogna fare altri passaggi?
    Grazie

  14. Avatar Alessandro
    Alessandro

    Aggiungo domanda: il tool per creare la richiesta del certificato a cui tu rimandi, vale anche per Exchange 2003?
    Ringrazio nuovamente

  15. Avatar Teo e Roby
    Teo e Roby

    Con questa procedura è possibile rendere nuovamente valido un certificato autofirmato di Exchange 2007 (compreso quello che si genera automaticamente in fase di installazione del server):

    Clonazione di certificati autofirmati

    Se è necessario rinnovare un certificato autofirmato esistente, è possibile clonarlo eseguendo il seguente comando:

    accedere alla “Exchange Management Shell”:

    Get-ExchangeCertificate (visualizza certificati già presenti con relativo thumbprint univoco)

    Get-ExchangeCertificate | New-ExchangeCertificate (clona il certificato esistente se, per esempio, è scaduto)

    Get-ExchangeCertificate | New-ExchangeCertificate -Services SMTP,POP,IMAP (attribuisce i servizi sul certificato clonato)

    Enable-ExchangeCertificate (attiva il certificato clonato che di default ha validità di 5 anni)

  16. Avatar Teo e Roby
    Teo e Roby

    Nel pubblicare la procedura una parte dei comandi e’ stata rimossa (thumbprint).

    Di seguito i comandi completi:

    Con questa procedura è possibile rendere nuovamente valido un certificato autofirmato di Exchange 2007 (compreso quello che si genera automaticamente in fase di installazione del server):

    Clonazione di certificati autofirmati

    Se è necessario rinnovare un certificato autofirmato esistente, è possibile clonarlo eseguendo il seguente comando:

    accedere alla “Exchange Management Shell”:

    Get-ExchangeCertificate (visualizza certificati già presenti con relativo thumbprint univoco)

    Get-ExchangeCertificate “thumbprint” | New-ExchangeCertificate (clona il certificato esistente se, per esempio, è scaduto)

    Get-ExchangeCertificate “thumbprint” | New-ExchangeCertificate -Services SMTP,POP,IMAP (attribuisce i servizi sul certificato clonato)

    Enable-ExchangeCertificate “thumbprint” (attiva il certificato clonato che di default ha validità di 5 anni)

    Speriamo possa esservi utile!

    Ciao

  17. Avatar Max
    Max

    Articolo chiarissimo, grazie per l’aiuto! Purtroppo però da quando ho rinnovato il certificato non si riesce più ad accedere tramite OWA….qualcuno ha avuto problemi simili?
    Grazie, ciao!

  18. Avatar Scimonji
    Scimonji

    Grazie ad Andrea per la gentilezza e anche a Teo e Roby che ho copiato ed ha funzionato…. in pratica invece di prolungare il certificato esistente si clona e si sostituisce il clone a quello esistente… magari meno “pura” come soluzione ma efficace e certamente più semplice e veloce.

  19. Avatar Tommy
    Tommy

    Se non si riesce più ad accedere a OWA è perchè IIS, nel binding con la porta 443 per https, ha deselezionato il certificato. Bisognerà quindi selezionare con il tasto destro il Default web site, cliccare “Modifica Binding”, modificare “https” assegnando il nuovo certificato creato con il menu a tendina.

  20. Avatar Luca Canc
    Luca Canc

    Ottimo articolo, una piccola aggiunta. In caso non abbiate installato la gestione web di Certification Manager (AD), per poter generare una richiesta valida (quindi associandogli il template web) potete usare il comando:

    certreq -attrib “CertificateTemplate:webserver” –submit c:\cert.csr

    va poi selezionata la CA (di solito selezionata di default). A questo punto se avete abilitato l’Auto-enrollment delle richieste potrete già salvare il vostro certificato da importare in exchange. In caso contrario dovrete andare nella console della CA (o tramite il comando cerutil firmare la richiesta e salvare il vostro certificato

    spero di essere stato utile 😉

    Spero sia utile a chi si trova in difficoltà 😉

  21. Avatar Manuel
    Manuel

    Gentilissimo Andrea e/o comunque a tutta la comunità.
    In riferimento a questo articolo, vi pongo una domanda.
    Ho creato il certificato e penso di aver fatto tutto bene ma nonostante ciò quando apro Outlook sui client mi esce fuori un messaggio che dice che il Certificato non ha un nome valido o non è valido il nome del sito. Ho già fatto la procedura di Enable del Thumbprint. Avete idee in merito?

    Cordiali saluti a tutti!