Cómo restaurar un buzón eliminado con PowerShell

No importa cómo eliminó accidentalmente el buzón de correo de una persona en Exchange , probablemente pueda restaurarlo usando PowerShell ( PoSh ). La clave es hacerlo tan pronto como te des cuenta de que el buzón ha sido eliminado. 

Es un momento en el que el corazón salta a mi garganta cuando nos damos cuenta de que accidentalmente hicimos esto. Si solo eliminó algunos mensajes de correo electrónico, también podemos mostrarle cómo recuperar correos electrónicos eliminados en Office 365(how to recover deleted emails in Office 365) .

Antes de comenzar, tenga en cuenta que esto está diseñado para restaurar buzones de correo eliminados en Exchange Online para el entorno de Office 365 y Exchange 2010 . También asumimos que tiene los derechos administrativos para usar los métodos descritos y que ha realizado algunas secuencias de comandos básicas de PowerShell(basic PowerShell scripting)

¿Qué sucede cuando se elimina un buzón?(What Happens When a Mailbox Is Deleted?)

El buzón se mueve a la papelera de reciclaje de Azure Active Directory (AD) en (Azure Active Directory )Exchange Online o al directorio de buzones desconectados(Disconnected Mailboxes ) en Exchange 2010.

Puede permanecer allí hasta por 30 días, según las políticas de retención vigentes. Eso nos da un período de gracia para reconocer nuestro error y recuperarnos de él.

Restaurar un buzón eliminado en Exchange Online(Restore a Deleted Mailbox In Exchange Online)

Conéctese a Exchange Online a través de PowerShell(Connect To Exchange Online Via PowerShell)

En su sesión local, abra la consola de Powershell y use el siguiente comando para configurar sus credenciales de inicio de sesión en la variable.

$userCredential

Esto hace que sea más fácil trabajar con otros scripts más adelante.

$userCredential = get-Credential

Se abrirá una ventana donde podrá ingresar su nombre de usuario y contraseña para administrar Exchange Online .

A continuación, establezca el nivel de política de ejecución para que podamos hacer cosas en nuestra sesión. Esto nos permite ejecutar nuestros comandos sin firmar. Pero es posible que también desee conocer las mejores prácticas para firmar scripts de PowerShell(best practices for signing PowerShell scripts) .

set-ExecutionPolicy Unrestricted

Cuando se le solicite, presione Y para Sí.

Ahora crearemos la variable $session que se usará para abrir una conexión entre la computadora local y Exchange Online .

$session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $userCredential -Authentication Basic -AllowRedirection

Powershell-liveid es la identificación de su sitio de Office . Por lo general, se trata de alguna variación del nombre de su empresa. 

Use el siguiente comando para abrir una sesión de PoSh en (PoSh)Exchange Online :

import-PSSession $Session -DisableNameChecking

Ahora estamos trabajando con PowerShell directamente en Exchange Online , aunque estamos sentados en nuestra propia computadora.

Restaurar un buzón eliminado con PowerShell(Restore a Deleted Mailbox With PowerShell)

La siguiente parte es súper fácil. Hacer la conexión nos habrá llevado mucho más tiempo. 

Todo lo que tenemos que hacer es ejecutar el cmdlet que se muestra a continuación:

undo-SoftDeletedMailbox [email protected] -WindowsLiveID [email protected] -Password (ConvertTo-SecureString -String 'newpassword' -AsPlainText -Force)

Cambie ambas instancias de [email protected] al nombre de buzón apropiado y Windows LiveID del buzón que queremos restaurar. Tenga en cuenta que pueden no ser lo mismo. 

También tenemos que establecer una nueva contraseña para el buzón. Cambie newpassword en el script a la contraseña de su elección. Deberá transmitir eso al usuario y pedirle que cambie su contraseña la próxima vez que inicie sesión.

Finalmente, use el siguiente cmdlet para verificar y asegurarse de que esto funcionó. 

get-Mailbox [email protected]

Si se ha restaurado, el cmdlet devolverá información sobre el buzón restaurado. Si devuelve un error, vuelva a ejecutar los comandos y asegúrese de que se estén utilizando el buzón de correo y Windows LiveID correctos . 

Si eso sigue sin funcionar, necesitaremos restaurar el buzón desde una copia de seguridad del sistema. Hay muchos tipos de copias de seguridad del sistema, por lo que está más allá del alcance de lo que estamos haciendo hoy.

Cuando hayamos terminado, debemos cerrar la sesión de PoSh . El número de sesiones de PoSh que tenemos en ejecución es limitado. Dejarlo abierto utiliza una de esas sesiones. A menos que la cerremos, tendremos que esperar a que se agote el tiempo de espera de la sesión antes de poder iniciar otra.

remove-PSSession $Session

Eso es todo. Es posible que incluso desee escribir esto en un módulo de PowerShell(PowerShell Module) para facilitar su uso si vuelve a suceder.

Restaurar un buzón eliminado en Exchange 2010(Restore a Deleted Mailbox In Exchange 2010)

Esto no funciona para Office 365 o entornos híbridos. Solo funciona para Exchange 2010 local. 

En el servidor de correo, abra la Consola de administración de Exchange(Exchange Management Console ) (EMC). 

Vaya a Configuración de destinatarios(Recipient Configuration ) > Buzón desconectado(Disconnected Mailbox) . Deberíamos ver el buzón del usuario allí. 

Si no lo hacemos, entonces el proceso de limpieza de la base de datos del buzón aún no ha ocurrido. Está bien, podemos forzarlo.

  • Abra Exchange Management Shell ( EMS ) como administrador. Aquí es donde podemos hacer el trabajo de PowerShell específico de Exchange(Exchange-specific PowerShell) .
  • Ahora ingresamos al cmdlet: 
Get-MailboxDatabase | Clean-MailboxDatabase

  • Una vez hecho esto, volvamos a la EMC y hagamos clic con el botón derecho en Buzón desconectado(Disconnected Mailbox) , luego hagamos clic en Actualizar(Refresh)
  • Deberíamos ver el buzón allí ahora, y lo está, junto con otro que se eliminó recientemente.

  • Regrese a EMS e ingrese el cmdlet: 
Connect-Mailbox -Identity "username" -Database "Mailbox Database" -User "username"
  • El nombre de usuario es el nombre de la cuenta de (Username)Windows de la persona (como Usuario de (,)prueba(Test User) ) y la Base de datos del buzón(Mailbox Database) es el nombre de la base de datos que aparece junto a su nombre en la ventana Buzón desconectado(Disconnected Mailbox) en EMC. 
  • Actualice el buzón desconectado(Disconnected Mailbox) y debería ver que su buzón ya no se muestra allí. Vaya a Configuración de destinatarios(Recipient Configuration ) > Buzón(Mailbox ) y asegúrese de que el buzón del usuario esté allí.

Verifíquelo para asegurarse de que todas las configuraciones sean correctas, como la dirección de correo electrónico y el alias. Si se ve bien, la próxima vez que el usuario abra su Outlook , todo estará allí tal como estaba.

Buzón restaurado(Mailbox Restored)

Así se usa PowerShell para restaurar buzones en Exchange Online y Exchange 2010 . Si tiene un entorno híbrido, es un poco más complicado, pero se puede hacer. 

El simple hecho de saber que existen estos diferentes cmdlets lo coloca en una buena posición para trabajar con Exchange , sin importar la versión o la configuración.



About the author

Ingeniero audiófilo y especialista en productos de audio con más de 10 años de experiencia. Me especializo en la creación de altavoces y auriculares para música de calidad de principio a fin. Soy un experto en la solución de problemas de audio, así como en el diseño de nuevos sistemas de altavoces y auriculares. Mi experiencia va más allá de hacer buenos productos; También me apasiona ayudar a otros a ser lo mejor posible, ya sea a través de la educación o el servicio comunitario.



Related posts