lunes, 16 de junio de 2014

Powershell Script para dar de alta mailbox de Exchange


Esta mañana tenia que crear varias cuentas de correo a partir de un listado de Excel, con usuarios en el que no sabia que usuarios estaban ya dados de alta, que usuarios tenian Mailbox y cuales eran usuarios nuevos.

Como eran un montón de usuarios me he dedicado ha hacer un script de Powershell que lea un CSV (creado a partir del Excel)  que comprueba si el usuario existe y crea el buzón con los parámetros deseados.

Lo primero es decir que el Excel tiene que tener un formato parecido a este:

Name;Alias;Username;Password
Hannibal Smith;asmith;asmith@ateam.local;password
M. A. Barracus;mabarracus;mabarracus@ateam.local;password
H. M. Murdock;murdock;murdock@ateam.local;password

Una vez tenemos el CSV con un formato parecido, el powershell script es el siguiente:


$listado = Import-Csv '.\<listado>.csv' -Delimiter ';'

$basededatos = "<base de datos>"
$unidadorganizativa = "<unidad organizativa>"
foreach ($user in $listado) {

$usuario = $user.Usernameecho "//////////////////////////////////"echo "## CREAR BUZON USUARIO $usuario ##"If (get-mailbox $user.username -ErrorACtion SilentlyContinue) {
echo "EL BUZON $usuario YA EXISTE"
}Else{
echo "El buzón de $usuario no existe" If (get-user $usuario -ErrorACtion SilentlyContinue) {
get-user -Identity $usuario echo "HABILITAR BUZON DEL USUARIO $usuario" enable-mailbox -identity $usuario -Database $basededatos -Alias $user.alias
}Else{
If (!(get-user $usuario -ErrorACtion SilentlyContinue)){ echo "CREAR USUARIO Y HABILITAR BUZON PARA $usuario" new-mailbox -UserprincipalName $usuario -Alias $user.alias -Name $user.name -Database $basededatos -OrganizationalUnit $unidadorganizativa -Password (ConvertTo-SecureString $user.Password –AsPlainText –force)}
}
}echo "\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"
}





lunes, 23 de diciembre de 2013

INCIDENCIA: Problemas al migrar un usuario entre dominios PARENT-CHILD

Síntomas:

Al intentar mover un usuario de un subdominio Child al dominio Parent mediante la herramienta Active Directory Migration Tool 3.2 ( ADMT ), esta nos devuelve un error:
2013-12-16 12:28:45 ERR2:7422 Failed to move source object ‘CN=xxxxx xxxxx'. hr=0x8007208c No se puede realizar la operación porque existen objetos secundarios. Esta operación sólo se puede realizar en un objeto hoja.


Causa:
El usuario tiene asociado un objeto hoja que normalmente suele ser los dispositivos móviles sincronizados a la cuenta de correo (CN=ExchangeActiveSyncDevices) . Este objeto hoja es el que impide mover la cuenta de un rama del árbol de AD a la otra.


Solución:
La solución pasa por eliminar manualmente el objeto que cuelga del usuario a migrar y después repetir el proceso. Esto provocara que la cuenta pierda la información de los dispositivos móviles y será necesario volver a sincronizarlos.

Para eliminarlo el objeto es necesario abrir el Active Directory con la herramienta ADSIEdit y buscar el o los usuarios que queremos migrar. En cada usuario veremos la hoja con el nombre CN=ExchangeActiveSyncDevices , se puede borrar el objeto y la información que contiene de forma segura.



Una vez migrado el usuario podremos volver a sincronizar los dispositivos móviles para que se vuelva a crear esta información.

miércoles, 11 de diciembre de 2013

Nueva sección de Proyectos

Hola!

He añadido una nueva sección donde iré incluyendo todos los proyectos informáticos que estoy intentando poner en marcha. Si alguien quiere colaborar o tiene algún proyecto en marcha que le gustaría que colaborara que no dudéis en comentármelo.

http://www.lasendadeladmin.com/p/proyectos.html

Algunos son proyectos empezados, otros son ideas de proyecto. El propio blog en si es un proyecto que quiero ir mejorando poco a poco.