15 gennaio 2011

Exchange 2007, rinnovare il certificato self-signed

Chi ha installato un server con Microsoft Exchange 2007, avrà certamente notato che, dopo un anno, sui client che utilizzano Outlook 2007 ( e 2010, la versione 2003 non ha questo problema) appare un fastidioso messaggio che informa come il certificato del server di posta non sia più valido. Questo succede perché il certificato self-signed è scaduto.

Sebbene questo errore non comporti nessun blocco della posta, è decisamente fastidioso dover continuare a confermare i popup che compaiono ad ogni avvio di Outlook, pertanto occorre rinnovare il vecchio certificato.


La procedura non è molto complessa anche se dovremmo intervenire direttamente dalla shell.


Apriamo la shell di Excahange da Start - Programmi - Microsoft Exchange Server 2007 - Exchange Management Shell e digitiamo la seguente stringa:

Get-ExchangeCertificate -domain NOME_SERVER.NOME_DOMINIO | fl

Dovreste ottenere una schermata simile a questa:


Copiamo il valore associato a Thumbprint e proseguiamo inserendo la stringa successiva:

Get-ExchangeCertificate -thumbprint VALORE_THUMBPRINT | New-ExchangeCertificate

Il server chiederà la conferma per la sovrascrittura del certificato, digitiamo A (che è associato a Yes to All) e, al termine della procedura, la shell mostrerà il nuovo thumbprint. Verifichiamo che il nuovo certificato sia nello Status di Valid digitando la stringa:

Get-ExchangeCertificate -thumbprint VALORE_NUOVO_THUMPRINT | fl

Bene, a questo punto sui vari client di Outlook non comparirà più la notifica del certificato scaduto.

Rimangono solo due operazione da eseguire:

1) Abilitare il nuovo certificato per IIS.

Sebbene su Outlook non vi siano più popup di errore, chi utilizza Outlook Web Access (L'accesso via web al server di Exchange) avrà una brutta sorpresa...la pagina web in https non sarà raggiungibile, nemmeno in locale.
Questo perché il certificato appena generato è abilitato, di default, solo per i protocolli POP, IMAP e SMTP; manca il protocollo IIS (Internet Information Services). Abilitiamo il certificato anche per IIS digitando nella shell la stringa:

Enable-ExchangeCertificate -thumbprint VALORE_NUOVO_THUMPRINT -services IIS

Ottimo! ora anche il nostro Web Acess sarà raggiungibile!

Non ci resta che un punto...

2) Eliminare il vecchio certificato

Una volta generato il nuovo certificato, quello vecchio non è più necessario e si può tranquillamente eliminare. Agiamo anche questa volta dalla shell digitando:

Remove-ExchangeCertificate -thumbprint VALORE_VECCHIO_THUMPRINT

Completato il tutto chiudete la shell...e ricordatevi di questa guida l'anno prossimo!

4 commenti:

  1. Ottima guida. Peccato che il mio OWA di 2007, pur avendo rinnovato il certificato, continua a dare errore di "certificato non valido", non tanto per la validità temporale per proprio perchè non è stato emesso da una Autorità certificatrice esterna. Suggerimenti ? Grazie ancora, ciao.

    RispondiElimina
    Risposte
    1. Ciao, hai eliminato quelli vecchi? Puoi anche provare ad esportare il certificato ed installarlo manualmente sul pc inserendolo tra i siti di radice attendibile

      Elimina
  2. ottimo e semplice. fatto tutto ma credo di aver sbagliato qualcosa... adesso Outlook dice che la data è valida ma "il nome nel certificato di protezione non è valido o non corrisponde al nome del sito".
    dichiaro la mia ignoranza ma non capisco il messaggio di errore e non so cosa e come modificare...

    RispondiElimina
  3. per favore un'aiuto: ho generato il nuovo certificato ma non ho cancellato quello vecchio
    come faccio a sapere il valore VALORE_VECCHIO_THUMPRINT ?
    alcuni client quando aprono outlook puntano ad uno vecchio
    grazie

    RispondiElimina