Per un cliente sto attivando un servizio di protezione e archiviazione delle mail.
In pratica, tutte le mail della sua organizzazione, transiteranno da un mio server esterno, che eseguirà su di esse alcune operazioni, tra cui:
- Controllo della mail alla ricerca di eventuali virus
- Controllo della mail per valutare la probabilità che si tratto di spam
- Se tutto ok, recapito al server del cliente
- Archiviazione di una copia della mail
Affinché ciò avvenga in modo corretto, ho la necessità di replicare gli indirizzi di posta presenti sul server Exchange all’interno della mia infrastruttura esterna.
Di primo impatto si potrebbe utilizzare il cmdlet Get-Mailbox come segue:
Get-Mailbox -resultsize unlimited | select Name -expand emailaddresses | Select SmtpAddress > c:\listasmpt.txt
Questo comando, però, restituisce solo gli indirizzi di posta associati ad una mailbox.
Nel caso specifico del mio cliente, egli utilizza gruppi, cartelle pubbliche di tipo mail-enabled, quindi il comando appena visto restituirebbe un elenco incompleto che, se replicato sulla mia infrastruttura, causerebbe la perdita di tutti quei messaggi inviati a gruppi e alle public folder.
Per ovviare a ciò, utilizzo il cmdlet Get-Recipient, nello stesso modo appena indicato:
Get-Recipient -resultsize unlimited | select Name -expand emailaddresses | Select SmtpAddress > c:\listasmpt.txt
Così facendo otterrò, nel file listasmtp.txt, tutti gli indirizzi di posta gestiti dal server Exchange.
Leave a Reply