Encuentre una dirección SMTP específica con PowerShell
¿Cómo encontrar una dirección SMTP específica con PowerShell en la Organización de Exchange? Quiere saber cuántos buzones de correo están configurados con una dirección SMTP específica. En este artículo, aprenderá cómo buscar y enumerar buzones de correo en Exchange Server con una dirección SMTP específica.
Encuentre una dirección SMTP específica con PowerShell
Puede iniciar sesión en el Centro de administración de Exchange (EAC), abrir los buzones uno por uno y buscar la dirección SMTP específica. Sin embargo, no recomiendo hacerlo a menos que tengas mucho tiempo y te guste gastarlo de esa manera.
¿Quiere enumerar todas las direcciones SMTP en la organización de intercambio? Lea cómo enumerar todas las direcciones SMTP con PowerShell »
Nota: Los siguientes comandos funcionan para Exchange Server local y Exchange Online.
Conéctese con las herramientas de administración de Exchange antes de ejecutar los comandos:
Exchange Server local: ejecute el Shell de administración de Exchange como administrador.
-
Exchange Online: Ejecute PowerShell como administrador y conéctese a Exchange Online PowerShell.
Nota: Cambie Get-Mailbox a Get-Recipient en los comandos para mostrar todos los objetos de la organización. Esto obtendrá los buzones de correo, los grupos de distribución, los grupos de seguridad y los contactos.
Encuentre una dirección SMTP específica por dominio
Nos gusta encontrar buzones de correo con una dirección SMTP específica en Exchange Server. Estas son la dirección SMTP principal y la dirección SMTP secundaria, también conocida como dirección de alias.
Ejecute el Shell de administración de Exchange como administrador. Ejecute el cmdlet para enumerar los buzones de correo con ese dominio en particular.
[PS] C:\>Get-Mailbox -ResultSize Unlimited -Filter {EmailAddresses -like "*@alitajran.com"} | Sort-Object Name
Name Alias ServerName ProhibitSendQuota
---- ----- ---------- -----------------
Administrator Administrator ex01-2016 Unlimited
Ali Tajran alitajran ex01-2016 Unlimited
Benetiz Anees Benetiz.Anees ex01-2016 Unlimited
Boris Campbell boris.campbell ex01-2016 Unlimited
Carl Kelly carl.kelly ex01-2016 Unlimited
Christopher Payne christopher.payne ex01-2016 UnlimitedEncuentre una dirección SMTP específica por nombre
Quizás quieras buscar un nombre en lugar de un dominio. ¿Qué necesitas cambiar para que eso sea posible? Cambie el dominio *@alitajran.com por un nombre que contenga la dirección SMTP. Por ejemplo, *tajran*. Esto buscará todo lo que tenga ese nombre en todos los campos SMTP.
[PS] C:\>Get-Mailbox -ResultSize Unlimited -Filter {EmailAddresses -like "*tajran*"} | Sort-Object Name
Name Alias ServerName ProhibitSendQuota
---- ----- ---------- -----------------
Administrator Administrator ex01-2016 Unlimited
Ali Tajran alitajran ex01-2016 Unlimited
Benetiz Anees Benetiz.Anees ex01-2016 Unlimited
Boris Campbell boris.campbell ex01-2016 Unlimited
Carl Kelly carl.kelly ex01-2016 Unlimited
Christopher Payne christopher.payne ex01-2016 UnlimitedLista resultado informativo
Modifique la vista de tabla y agregue la información que necesita al cmdlet Select-Object. Por ejemplo, DisplayName, PrimarySMTPAddress y EmailAddresses.
[PS] C:\>Get-Mailbox -ResultSize Unlimited -Filter {EmailAddresses -like "*@alitajran.com"} | Select-Object DisplayName,PrimarySmtpAddress, @{Name="EmailAddresses";Expression={$_.EmailAddresses | Where-Object {$_ -clike "smtp*"}}} | Select-Object DisplayName, PrimarySMTPAddress, EmailAddresses | Sort-Object DisplayName
DisplayName PrimarySmtpAddress EmailAddresses
----------- ------------------ --------------
Administrator Administrator@exoip.com {smtp:Administrator@alitajran.com, smtp:Administrator@exoip.local}
Ali Tajran Ali.Tajran@exoip.com smtp:alitajran@alitajran.com
Benetiz Anees Benetiz.Anees@exoip.com smtp:Benetiz.Anees@alitajran.com
Boris Campbell Boris.Campbell@exoip.com {smtp:Boris.Campbell@contoso.com, smtp:Boris.Campbell@alitajran.com}
Carl Kelly Carl.Kelly@exoip.com smtp:carl.kelly@alitajran.com
Christopher Payne Christopher.Payne@exoip.com smtp:christopher.payne@alitajran.comSalida de polvo para una vista más limpia
Para una apariencia más limpia, elimine smtp: de las direcciones SMTP secundarias.
[PS] C:\>Get-Mailbox -ResultSize Unlimited -Filter {EmailAddresses -like "*@alitajran.com"} | Select-Object DisplayName,PrimarySmtpAddress, @{Name="EmailAddresses";Expression={($_.EmailAddresses | Where-Object {$_ -clike "smtp*"} | ForEach-Object {$_ -replace "smtp:",""}) -join ","}} | Sort-Object DisplayName
DisplayName PrimarySmtpAddress EmailAddresses
----------- ------------------ --------------
Administrator Administrator@exoip.com Administrator@alitajran.com, Administrator@exoip.local
Ali Tajran Ali.Tajran@exoip.com alitajran@alitajran.com
Benetiz Anees Benetiz.Anees@exoip.com Benetiz.Anees@alitajran.com
Boris Campbell Boris.Campbell@exoip.com Boris.Campbell@contoso.com, Boris.Campbell@alitajran.com
Carl Kelly Carl.Kelly@exoip.com carl.kelly@alitajran.com
Christopher Payne Christopher.Payne@exoip.com christopher.payne@alitajran.comExportar a archivo CSV
Nos gusta exportar los buzones de correo con una dirección SMTP específica a CSV. Esto exportará el archivo CSV a C:\temp\. No olvide crear una carpeta temporal en la unidad C o editar la ruta de exportación.
[PS] C:\>Get-Mailbox -ResultSize Unlimited -Filter {EmailAddresses -like "*@alitajran.com"} | Select-Object DisplayName,PrimarySmtpAddress, @{Name="EmailAddresses";Expression={($_.EmailAddresses | Where-Object {$_ -clike "smtp*"} | ForEach-Object {$_ -replace "smtp:",""}) -join ","}} | Sort-Object DisplayName | Export-CSV "C:\temp\Specific_SMTP_Addresses.csv" -NoTypeInformation -Encoding UTF8Abra el archivo CSV exportado con Microsoft Excel u otro visor/editor de archivos CSV.
Espero que te haya ayudado a buscar y enumerar los buzones que tienen configurada una dirección SMTP específica.
Sigue leyendo: Cómo eliminar de forma masiva la dirección SMTP secundaria con PowerShell »
Conclusión
Aprendiste cómo encontrar una dirección SMTP específica con PowerShell en Exchange Server. Ejecute el cmdlet en PowerShell para obtener una lista de los buzones de correo con una dirección SMTP específica. Ajuste el cmdlet Select-Object con los valores que desee ver. Después de eso, exporte la lista a un archivo CSV y ábralo con su visor/editor CSV favorito.
Disfrutaste este artículo? También te puede gustar la creación masiva de usuarios de AD con contraseñas aleatorias. No olvides seguirnos y compartir este artículo.
