Buzón: cambie la configuración del buzón con PowerShell

El cmdlet Set-Mailbox en PowerShell nos permite cambiar la configuración del buzón en Exchange Server y Exchange Online.

Podemos usar el cmdlet, por ejemplo, para cambiar las cuotas del buzón, agregar un alias al buzón, establecer permisos de carpeta o incluso cambiar el idioma del buzón.

En este artículo, no vamos a ver todas las opciones para este cmdlet, porque hay más 180 parámetros para el cmdlet.

En su lugar, nos centraremos en los casos de uso más comunes del cmdlet Set-Mailbox.

Primeros pasos con Set-Mailbox

Antes de que podamos usar el cmdlet set-mailbox, primero debemos conectarnos a Exchange Online.

Asegúrese de haber instalado el último módulo de PowerShell y saber cómo conectarse a su servidor de Exchange.

Puede leer esta guía sobre cómo conectarse a Exchange Online.

El cmdlet set-mailbox requiere al menos la identidad del buzón que desea cambiar. Y para la identidad, podemos usar muchas opciones, pero las más útiles son:

  • Nombre del buzón
  • Dirección de correo electrónico
  • Nombre de dominio \ usuario
  • SamCuentaAnme
  • GUID

Entonces, antes de realizar un cambio en el buzón, es una buena idea usar el cmdlet Get-Mailbox para verificar si tiene el buzón correcto:

# Based on email address
Get-Mailbox -Identity [email protected]

# Or based on mailbox name
Get-Mailbox -Identity AdeleV

Con la identidad verificada podemos cambiar la configuración del buzón, por ejemplo, el nombre del buzón:

Set-Mailbox -Identity AdeleV -Name Adelev-test
set-buzón

Cambiar varios buzones a la vez

PowerShell nos permite canalizar cmdlet uno tras otro. Entonces, cuando necesite actualizar una propiedad en varios buzones, primero podemos obtener todos los usuarios con el filtro correcto y luego cambiar los buzones con el cmdlet set-mailbox.

Por ejemplo, para obtener todos los empleados con el título de trabajo «Asistente de marketing», primero filtramos el cmdlet AzureADUser y luego actualizamos la configuración del buzón para cada usuario:

Get-AzureADUser -Filter "jobtitle eq 'Marketing Assistant'" | ForEach {Set-Mailbox -Identity $_.UserPrincipalName -ExtensionCustomAttribute1 "Test"}

Si desea obtener más información sobre el uso de filtros para seleccionar usuarios, asegúrese de leer este artículo.

Otra opción para cambiar la configuración de varios buzones es definir primero las identidades de los buzones en una matriz y luego cambiar la configuración para cada uno de ellos:

("Adelev","LeeG","MeganB") | ForEach  {Set-Mailbox -Identity $_ -ExtensionCustomAttribute1 "Test"}

Establecer reenvío de buzón

El reenvío de correos electrónicos a otro usuario o incluso a una dirección de correo electrónico externa es bastante común. Podemos usar PowerShell y el Set-Mailbox cmdlet para configurarlo. Si observa la documentación, es posible que haya notado que hay dos parámetros que puede usar para el reenvío:

  • Dirección de reenvío
  • Dirección Smtp de reenvío

La diferencia entre Dirección de reenvío y Dirección Smtp de reenvío es que este último toma cualquier dirección de correo electrónico (interna o externa) para reenviar el correo.

El primero requiere un objeto habilitado para correo, que puede ser un buzón de correo de usuario o de grupo o un contacto en Azure Active Directory.

Entonces, para reenviar correos electrónicos a otro usuario, podemos usar el siguiente cmdlet:

Set-Mailbox -Identity [email protected] -ForwardingAddress [email protected]

# Or forward the mail from Adele to the info mailbox:
Set-Mailbox -Identity Adelev -ForwardingAddress "info"

Para reenviar el correo a un buzón externo podemos utilizar el ForwardingSmtpAddress parámetro:

Set-Mailbox -Identity Adelev -ForwardingSmtpAddress [email protected]

Entregar a buzón y reenviar

De forma predeterminada, los correos electrónicos solo se enviarán a la dirección de correo electrónico reenviada.

Pero en algunas ocasiones, también desea conservar una copia del correo en el buzón original. Para ello, podemos utilizar el DeliverToMailboxAndForward parámetro:

Set-Mailbox -Identity Adelev -ForwardingAddress "lab 19" -DeliverToMailboxAndForward $true

Establecer el límite de tamaño de los archivos adjuntos de Office 365

El límite de tamaño de archivo adjunto predeterminado para recibir y enviar es de 35 Mb para Office 365.

Sin embargo, puede aumentarlo al tamaño máximo de archivo adjunto de Office 365 de 150 Mb.

Tendremos que cambiar el límite MaxSendSize y el límite MaxReceiveSize para esto:

Set-Mailbox -Identity Adelev -MaxSendSize 150MB -MaxReceiveSize 150MB

Para cambiar el límite de archivos adjuntos en todos los buzones, puede usar el siguiente comando:

Get-Mailbox | Set-Mailbox -Identity Adelev -MaxSendSize 150MB -MaxReceiveSize 150MB

También es una buena idea cambiar el límite predeterminado para nuevos buzones/usuarios. Para ello necesitaremos actualizar la configuración del plan de buzón:

Get-MailboxPlan | Set-MailboxPlan -MaxSendSize 150MB -MaxReceiveSize 150MB

Terminando

Hay muchas configuraciones que puede cambiar con el cmdlet set-mailbox.

No puedo explicar todas las opciones, pero espero que esto lo haya ayudado a comenzar con el cmdlet. Otros artículos que te pueden gustar son:

Si tiene alguna pregunta, simplemente deje un comentario a continuación.

Otros artículos relacionados

Eliminar carpetas vacías en SharePoint Online

Eliminar carpetas vacías en SharePoint Online

Después de fusionar carpetas duplicadas en SharePoint Online, necesitaba eliminar las carpetas vacías. Esto es algo que también podemos hacer ...
Leer Más
PowerShell For Loop, ForEach y Do While/Hasta que se explique

PowerShell For Loop, ForEach y Do While/Hasta que se explique

Una de las funciones más fundamentales en la programación además de "If, Else" son los bucles. Le permiten procesar datos ...
Leer Más
Cómo verificar su versión de PowerShell

Cómo verificar su versión de PowerShell

¿Está usando la versión 5.1 o ya cambió a la versión 7 de PowerShell? La versión de PowerShell que haya ...
Leer Más
Cómo usar Start-Transcript en PowerShell

Cómo usar Start-Transcript en PowerShell

Cuando ejecute scripts de PowerShell automáticamente, necesitará una forma de registrar cualquier error o advertencia que ocurra. Una opción es ...
Leer Más
Cómo usar Test-NetConnection en PowerShell

Cómo usar Test-NetConnection en PowerShell

¿Sabías que el comando ping, con sus 38 años, es más antiguo que el símbolo del sistema? Probablemente ya haya ...
Leer Más
Cómo utilizar Select-String equivalente a PowerShell Grep

Cómo utilizar Select-String equivalente a PowerShell Grep

Cuando necesite buscar a través de una cadena o archivos de registro en Linux, podemos usar el grep dominio. Para ...
Leer Más

Deja un comentario