Powershell Exportación de usuarios Directorio Activo

En este post vamos a exportar mediante Powershell los usuarios de Directorio Activo a un archivo CSV. Este proceso puede seros útil cuando estéis moviendo usuarios de un dominio a otro para lo cual necesitareis un script de importación que os pondré en el próximo post.

Aquí os va el script:

#Path base donde dejar todos los ficheros y realizar la búsqueda de los que se necesiten.

#Aqui debe de residir el script.

#Ejemplo C:\Script\*.*

 

$path
=
Split-Path
-parent
“c:\script\*.*”

 

#Fecha para el TimeStamp del Log.

 

$LogDate
=
get-date
-f
yyyyMMddhhmm

 

#Ubicacion de los ficheros CSV y Log

#Deben de estar en la misma ubicacion que el script.

 

$csvfile
=
$path
+
“\ALLADUsers_$logDate.csv”

 

#Importamos el módulo de Acive Directory

 

Import-Module
ActiveDirectory

 

#Path DN donde residen los usuarios a exportar

#Ejemplo “OU=Usuarios,DC=dominio,DC=local”

 

$SearchBase
=
“DC=dominio,DC=local”

 

#Get Admin accountb credential

 

$GetAdminact
=
Get-Credential

 

#Controlador de dominio

#Ejemplo DC1

 

$ADServer
=
‘DC1’

 

 

#Buscamos todos los usuarios basados en los parámetros anteriores

 

$AllADUsers
=
Get-ADUser
-server
$ADServer `

-Credential
$GetAdminact
-searchbase
$SearchBase `

-Filter
*
-Properties
*

 

#Filtramos atributos mostrar

$AllADUsers
|

Select-Object @{Label =
“Nombre”;Expression = {$_.GivenName}},

@{Label =
“Apellidos”;Expression = {$_.Surname}},

@{Label =
“DisplayName”;Expression = {$_.DisplayName}},

@{Label =
“SAM”;Expression = {$_.sAMAccountName}},

@{Label =
“Direccion”;Expression = {$_.StreetAddress}},

@{Label =
“Ciudad”;Expression = {$_.City}},

@{Label =
“Estado”;Expression = {$_.st}},

@{Label =
“Codigo Postal”;Expression = {$_.PostalCode}},

@{Label =
“Pais/Region”;Expression = {if (($_.Country -eq
‘ES’) ) {‘España’} Else {}}},

@{Label =
“Titulo”;Expression = {$_.Title}},

@{Label =
“Compañia”;Expression = {$_.Company}},

@{Label =
“Descripcion”;Expression = {$_.Description}},

@{Label =
“Departamento”;Expression = {$_.Department}},

@{Label =
“Oficina”;Expression = {$_.OfficeName}},

@{Label =
“Telefono”;Expression = {$_.telephoneNumber}},

@{Label =
“Email”;Expression = {$_.Mail}},

@{Label =
“Administrador”;Expression = {%{(Get-AdUser
$_.Manager -server $ADServer
-Properties
DisplayName).DisplayName}}},

@{Label =
“Estado de cuenta”;Expression = {if (($_.Enabled -eq
‘TRUE’) ) {‘Enabled’} Else {‘Disabled’}}},

@{Label =
“Ultimo inicio de sesion”;Expression = {$_.lastlogondate}} |

 

#Exportamos a CSV

Export-Csv
-Path
$csvfile
-NoTypeInformation


 

Azure backup y restauración de máquinas virtuales

Últimamente en @Izertis estoy trabajando en proyectos Azure, con lo que me veréis escribir mucho sobre esta gran tecnología. En este artículo vamos a crear copias de seguridad de nuestras máquinas virtuales en Azure.

Para poder crear copias directas de VM en Azure debo de cumplir un conjunto de prerrequisitos. Puedo ver los prerrequisitos aquí.

En mi caso tengo la VM de la que voy a hacer copia en la región Europa Oeste

Como podéis ver en los prerrequisitos necesito un almacén de copias de seguridad donde almacenar las copias d seguridad, las directivas y todos los puntos de restauración. Continue reading “Azure backup y restauración de máquinas virtuales”

Directory Sync – Sincronización de Active Directory con Office 365

En este artículo vamos a configurar la sincronización de Active Directory con Office 365, es el primer artículo desde que he empezado en Izertis. Estos días os he dejado un poco abandonados pero ahora que todo vuelve a la normalidad las entradas serán más frecuentes a las de los últimos meses.

Empezamos, una vez que hemos configurado el DNS público de mi organización en Office 365 podemos empezar a configurar la sincronización. Para ello iniciamos sesión con el administrador de Office 365 y seguimos los pasos de instalación de la sincronización de directorios.

Continue reading “Directory Sync – Sincronización de Active Directory con Office 365”

IPv6 en Hyper-V

Una cuestión que en muchos entornos de virtualización se plantea es la utilización del protocolo IPv6. Por defecto Windows Server 2012 R2 lo implementa y por consiguiente Hyper-V. Si por la razón que sea no se nos obliga a deshabilitar IPv6 deberíamos mantener el protocolo IPv6 ya que todo el desarrollo de Windows está hecho y probado con IPv6 habilitado.

Sin embargo si por vuestros estándares de red, tenéis que deshabilitarlo podéis realizarlo a nivel de host y de VMs. Si decides deshabilitar IPv6 hazlo a nivel de registro únicamente, añadiendo la siguiente entrada via Powershell:

New-ItemProperty “HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters\” -Name “DisabledComponents” -Value 0xffffffff -PropertyType “DWord”

Y reiniciamos el sistema.

A continuación no utilices ninguna otra via para deshabilitar IPv&, como quitar el check de TCP/IP v6 en las propiedades del adaptador de red; he visto bastantes problemas por hacer eso. Os digo que esta opción no es la recomendada por Microsoft a día de hoy, y he visto algún problema con algún rol adicional montado en el host como RRAS, pero nunca he tenido un servidor puro de Hyper-V dando problemas haciéndolo de esta manera.

 

 

Hyper-V vNext Virtual Machine Configuration Version

Ya sabéis que hay una nueva versión de Windows Server, hasta ahora en Technical Preview, y que por supuesto entre múltiples novedades trae novedades en el rol de Hyper-V, que sigue creciendo poco a poco.

Voy a ir mostrando en los dos blogs en diazantuna.es y en blogs.itpro.es/diazantuna cada una de las novedades de Hyper-V en este nuevo servidor, empezando por este artículo en el que voy a contaros las versiones de máquinas virtuales y como probar en el nuevo servidor de Hyper-V con las maquinas que actualmente tenemos en Windows Server 2012 R2 sin cargárnoslas.

Deciros que en vNext tenemos maquinas versión 5 y versión 6. Deciros que la versión 5 es compatible con Windows Server 2012 R2, es decir podemos ejecutar esas máquinas en servidores Windows Server 2012 R2 y vNext (Technical Preview); mientras las de versión 6 solo las podremos ejecutar en la versión Technical Preview y no en Windows Server 2012 R2.

Con estos antecedentes deciros que podéis actualizar de versión 5 a 6, pero no pasar de 6 a 5, una vez en versión 6 no podéis volver atrás.

Puedo ver la versión de mi máquina virtual con el comando:

Get-VM * | Format-Table Name, Version

 

Para actualizar de versión 5 a 6 debo de tener en cuenta estos puntos:

– Una vez actualizada la máquina virtual no puedo mover la maquina aun servidor de Hyper-V en Windows Server 2012 R2

– Una vez pasada a versión 6 no puedo pasar a versión 5

– Para actualizar la máquina, esta debe de estar apagada.

– El cmdlet para actualizar está bloqueado en un clúster de Hyper-V si su nivel funcional es 2012 R2.

– Una vez actualizada la máquina virtual, el fichero de configuración de máquina virtual pasa a ser con extensión .VMCX y un fichero .VMRS para el runtime de la máquina. Estos nuevos ficheros mejoran la eficiencia de acceso de lectura/escritura a la configuración de la misma, asi como reduce la corrupción de fichero en el caso de un fallo en el almacenamiento.

El comando cmdlet a utilizar es:

Update-VmConfigurationVersion vmname

 

En breve más sobre vNext …

Migrar GPO entre dominios con GPMC

En este artículo vamos a ver cómo llevar GPO’s de un dominio de pruebas a un dominio de producción, o como migrar GPO´s de un dominio a otro. Lógicamente no se puede exportar una GPO de un dominio e importarla en otro directamente, ya que para empezar el dominio no coincide y ninguno de los objetos principales. Entonces ¿Qué hago?

Vamos a ver un paso a paso de cómo hacerlo. Para ello solo voy a utilizar la consola de Administración de Directivas de Grupo o GPMC. En mi laboratorio tengo dos dominios con un controlador cada uno de ellos.

Dominio origen – Controlador de dominio Origen

Lo primero que hacemos es un backup de las GPO’s a migrar en un controlador de dominio del dominio origen.

Continue reading “Migrar GPO entre dominios con GPMC”

DHCP – Powershell comandos backups y exportación

En Windows Server 2012, Microsoft ha añadido nuevos comandos de PowerShell que podemos utilizar para administrar nuestro servidor de DHCP. Aquí os voy a enseñar cómo realizar un backup y restauración de la base de datos, exportación e importación de la configuración.

Para hacer el backup de todos los ámbitos de DHCP:

Backup-DhcpServer -ComputerName lon-svr1.diazantuna.es -Path C:\Windows\system32\dhcp\backup

 

Para resturar el backup:

Restore-DhcpServer -ComputerName lon-svr1.diazantuna.es -Path

C:\Windows\system32\dhcp\backup

 

En este ejemplo exportamos la configuración y los datos de alquiles al fichero dhcpexport.xml:

Export-DhcpServer -ComputerName lon-svr1.diazantuna.es -File C:\exportdir\dhcpexport.xml

 

Para importar:

 

Import-DhcpServer -ComputerName lon-svr2.diazantuna.es -File C:\exports\dhcpexport.xml

-BackupPath C:\dhcpbackup\

Opciones DHCP Boot

Las tarjetas de red PXE añaden la opción DHCP 60 a sus paquetes de descubrimiento. El cliente DHCP envía una opción 67 en el paquete, y el servidor responde con la opción 68. Los puerto utilizados por el DHCP son los puerto utilizados por el servidor de Windows Deployment Services PXE, por lo tanto si implementas ambos roles en el mismo servidor debes de configurar la opción 60. Un servidor DHCP envía la opción 60 devuelta al cliente. Necesitas por lo tanto configurar las opciones 60(PXE Client), 66( Boot Server Host Name) y 67 (Bootfile Name).

Las opciones 66 y 67 se pueden configurar de forma gráfica desde las opciones de la consola DHCP pero la opción 60 se debe de hacer desde línea de comandos. Aquí tenéis un ejemplo

 

C:\WINDOWS\system32>netsh

netsh>dhcp

netsh dhcp>server \\<server_machine_name>

netsh dhcp>add optiondef 60 PXEClient String 0 comment=PXE support

netsh dhcp>set optionvalue 60 STRING PXEClient

netsh dhcp>exit

Microsoft Message Analyzer

Microsoft Message Analyzer es una herramienta que te permite capturar trafico de res y a continuación mostrar y analizar los resultados de esa captura. Puedes utilizarlo para monitorear tráfico en tiempo real, o para importar, añadir y analizar datos desde logs o trazas.

Ejemplo de uso:

  • Capturar datos.
  • Guardar datos
  • Importar datos
  • Ver datos
  • Filtrar datos

Continue reading “Microsoft Message Analyzer”