Din când în când, poate fi necesar să exportați lista completă de adrese de e-mail din organizația dvs. Exchange. În acest articol, vom arăta cum să obțineți și să exportați toate adresele SMTP atribuite într-un fișier CSV în Exchange Server sau Microsoft 365 (Exchange Online) folosind PowerShell.
Conectați-vă la organizația dvs. Exchange:
- Puteți utiliza modulul Exchange Management Shell (EMS) pentru a gestiona serverul Exchange local sau vă puteți conecta la Exchange de la distanță dintr-o consolă PowerShell obișnuită;
- Utilizați modulul Exchange Online PowerShell (EXO) pentru a conecta chiriașul Microsoft 365. Puteți utiliza autentificarea pe bază de certificat pentru a vă conecta la Exchange Online din PowerShell.
Pentru a vedea toate adresele SMTP primare și suplimentare pentru o anumită cutie poștală Exchange, rulați această comandă:
Get-Mailbox testmax |Select-Object DisplayName,PrimarySmtpAddress,EmailAddresses|fl

- The
SMTPadresa în majuscule conține adresa de e-mail principală - Literele mici
smtpvalorile sunt adresele de e-mail secundare (alias).
Atributul proxyAddresses este utilizat pentru a seta adresa de livrare a e-mailului în Active Directory local.
După cum puteți vedea, unui utilizator i se atribuie mai multe adrese SMTP suplimentare, care sunt stocate în atributul șir EmailAddresses. Pot exista și alte tipuri de adrese în acest atribut, așa că pentru a obține o listă cu toate adresele SMTP ale unei căsuțe poștale, executați comanda de mai jos:
Get-Mailbox testmax | Select-Object DisplayName,PrimarySmtpAddress, @{Name="SMTPAliases";Expression={($_.EmailAddresses | Where-Object { $_ -match "^smtp:" } | ForEach-Object {$_ -replace "smtp:",""}) -join "," }}
Următoarea comandă afișează toate adresele și aliasurile principale pentru toate cutiile poștale ale utilizatorilor și cutiile poștale partajate în Exchange și exportă rezultatele într-un fișier CSV:
Get-Mailbox -ResultSize Unlimited | Select-Object DisplayName,PrimarySmtpAddress, @{Name="SMTPAliases";Expression={($_.EmailAddresses | Where-Object { $_ -match "^smtp:" } | ForEach-Object {$_ -replace "smtp:",""}) -join "," }} | Export-Csv "C:PSList-All-SMTP-Addresses.csv" -NoTypeInformation -Encoding UTF8
TheGet-Mailboxcmdlet-ul afișează numai informații despre utilizatori și cutiile poștale partajate.
În Active Directory (sau Azure AD), pot exista și alte tipuri de obiecte cu adrese SMTP atribuite (obiecte activate prin e-mail): grupuri de distribuție, contacte și grupuri Microsoft 365 (grupuri unificate în Entra ID). UtilizațiObține-Destinatarcmdlet pentru a lista adresele SMTP ale tuturor obiectelor dintr-o organizație/chiriaș Exchange:
Get-Recipient -ResultSize Unlimited | Select-Object DisplayName, RecipientType, PrimarySmtpAddress, @{Name="SMTPAliases";Expression={($_.EmailAddresses | Where-Object { $_ -match "^smtp:" } | ForEach-Object {$_ -replace "smtp:",""}) -join "," }}


În acest caz, avem o listă cu adresele SMTP ale tuturor tipurilor de obiecte Exchange. Pentru a exporta numai adrese SMTP ale unui anumit tip de obiect, adăugați următorul parametru la primul cmdlet
Get-Recipient -ResultSize Unlimited -RecipientType your_object_type | …
Tipuri posibile de obiecte Exchange:
- DynamicDistributionGroup
- MailContact
- MailNonUniversalGroup
- MailUniversalDistributionGroup
- MailUniversalSecurityGroup
- MailUser
- PublicFolder
- Cutia poștală utilizator
Dacă trebuie să găsiți obiecte Exchange cu aceeași adresă SMTP a destinatarului (duplicat), rulați:
Get-Recipient -resultsize unlimited | where {$_.EmailAddresses -like "*[email protected]*"}
Citește și:Eliminați adresele IP de la distanță din conectorul de primire Exchange
De asemenea, puteți obține o listă simplă de adrese SMTP în Exchange:
Get-Recipient | Select-Object -ExpandProperty EmailAddresses | Where-Object { $_ -match "^smtp:" } | ForEach-Object { $_.Replace("smtp:", "").Replace("SMTP:", "") }


Au fost generate și adrese SMTP unice pentru canalul Microsoft Teams.
Vedeți numărul de adrese SMTP unice din organizația dvs. Exchange:
Get-Recipient -ResultSize Unlimited | Select-Object -ExpandProperty EmailAddresses | Where-Object { $_ -match "^smtp:" }| measure-object













