domingo, 18 de abril de 2021

Despliegue de Software por GPO a través de VPN

 

Hola, 

Como bien sabéis, quienes habéis leído mi entrada anterior en este blog, el despliegue de software vía GPO se inhabilita cuando las directivas se aplican en modo refresh. Este escenario los encontramos comunmente cuando tenemos equipos fuera de la oficina  que conectan por VPN una vez ya iniciada la sesión de usuario.

Una forma de desplegar aplicaciones vía GPO a pesar de tener equipos por VPN, es la de configurar  una tarea progamada (Scheduled Task) a través también de GPOS. Con ello, podemos lanzar una orden de instalación silenciosa de software.


Programa a instalar

Para la demostración siguiente, he utilizado el programa Visio Viewer.

Download Microsoft Visio 2016 Viewer from Official Microsoft Download Center

Este programa cual ofrece un MSI que rescaté en la ruta:  C:\Program Files (x86)\MSECache\vviewer  tras instalarlo a mano en un equipo y comprobar que la instalación clásica no requiere variables.

Podéis ver todo el registro de instalación de Visio viewer en C:\Users\mhernandez\AppData\Local\Temp\Microsoft Visio Viewer 2016 (0).log y deducir todo esto.

Una vez tenemos un .MSI o .EXE que se deja instalar sin preguntas. o bien un .CMD o .BAT que nos lanza la instalación de un programa que con las variables oportunas comprobamos que se instala sin preguntas, ya tendríamos lo que necesitamos para el laboratorio.

Más información aquí: Command-Line Options - Win32 apps | Microsoft Docs


Creación de GPO

Para la creación de una GPO, iremos a "Computer configuration\Preferences\Control Panel Settings\Scheduled Tasks".

Allí podemos crear Tareas programadas tomando como ejemplo la captura que pongo a continuación.

Observar las capturas relativas a solapa, General, Triggers y Actions.

Teniendo en cuenta que desde Actions, es donde está el kit de la cuestión. Desde allí, en mi caso llamo a un archivo .cmd que tiene una única linea:  "\\servidor\carpeta compartida\viewer.msi".



En Trigger es donde podemos configurar tanto al recurrencia del disparto de la acción, como el día que queremos que caduque la tarea programada.


En Actions es donde llamamos al archivo que disparará la instalación del archivo .msi.



El resultado en un equipo afectado por la GPO es el siguiente:










martes, 13 de abril de 2021

Comportamiento de GPOS a través de VPN

 Hola, 

A raíz de la proliferación de entornos de teletrabajo, muchos administradores de sistemas con Directorio Activo, están encontrando situaciones que no les eran comunes hasta ahora.

La instalación de software o lanzado de scripts de Log-in no está funcionando vía GPO, dado que habitualmente, los equipos iniciados fuera de la Lan, no ven a los controladores de dominio, hasta que iniciamos sesión en Windows e iniciamos la conexión VPN. 

Esto no sería así, si tuviésemos IPSEC, Direct Access o accesos VPN Always on, pero no es algo común de encontrar. 

Habilitación de DirectAccess | Microsoft Docs

Comportamiento

Por definición, y aunque no está popularizado este conocimiento, las gpos se procesan cada 90 minutos con una diferencia aleatoria de 30 minutos. Por lo que podemos decir, que todas las gpos que no se han procesado al estar el equipo conectado a la red en el inicio, finalmente se procesan, si el equipo permanece conectado a la VPN. Esto viene a ser igual, en cuanto a las GPOS con opciones de usuario.

Tenéis información sobre procesamiento Síncrono y Asíncrono y sobre el proceso de refresco aquí:

RefreshPolicy function (userenv.h) - Win32 apps | Microsoft Docs

Initial Processing of Group Policy | Microsoft Docs

Logon Optimization | Microsoft Docs

Actualizar la directiva de grupo | Microsoft Docs

Excepciones

Instalación de software, Scripts de logon y redirección de carpetas.

Lo dicho anteriormente es cierto, aunque es bien cierto también, que no todas las opciones configuradas en las GPOS se aplican cada 90 minutos. "Folder Redirection" por ejemplo, o la aplicación de Scripts de logon e instalación de software vía GPO, en las opciones de GPO por equipo, no se aplicarán nunca si el equipo no alcanza a los controladores de dominio en el arranque del sistema operativo. En cuanto a estas opciones lanzadas por usuario, si no se alcanzan los DCs tras la introducción de las credenciales.

Conectividades lentas

Aun con todo lo comentado, todo equipo conectado por VPN tendrá una conexión considerada lenta si esta ofrece 500kbps. Esta consideración es la que encontramos por defecto, aunque permite ser cambiada.

La política en cuestión, la podéis encontrar en las opciones por equipo: 

    Policies\Adminsitrative Templates\System\Group Policy

    Con nombre: Configure Group Policy slow link detection . Podréis variar la consideración entre 0 y        4.294.967.200 kbps. Si configuráis la cifra 0 desactivaréis la consideración de Slow Link.

La consideración lenta, también puede determinarse por otras situaciones a pesar de tener más de 500kbp, por ejemplo serían estas:

- Slow-link mode:  Determinación de latencia según path. (“Configure slow-link mode” policy on Vista for Offline Files | Microsoft Docs)

- Tiempo de espera: Control Slow Network Connection 120 milisegundos (GPS: Control slow network connection timeout for user profiles (gpsearch.azurewebsites.net)

- PingBufferSize: Algoritmo por cierto que ha varia en Windows Server 2019 y versiones superiores a Windows 10 1809. (https://docs.microsoft.com/en-us/troubleshoot/windows-server/user-profiles-and-logon/manage-profile-service-slow-link-detection#how-slow-link-detection-works-in-current-operating-systems)

La consideración de conexión lenta según PingBufferSize, ha variado según versión de Windows:

  • Windows Server 2019 and Windows 10 1809: KB 4601383, February 16, 2021-KB4601383 (OS Build 17763.1790) Preview
  • Windows 10 1909: KB 4601380, February 16, 2021—KB4601380 (OS Build 18363.1411) Preview
  • Windows 10 20H1/20H2: KB 4601382, February 24, 2021—KB4601382 (OS Builds 19041.844 and 19042.844) Preview

También, podéis cambiar el comportamiento de conexión lenta a través de las siguientes opciones en GPO:

A modo de diagnóstico. El evento que veréis cuando no podremos por ejemplo aplicar un Roaming profile es el siguiente:

Log Name: Application

Source: Microsoft-Windows-User Profiles Service

Event ID:1543

Y por ejemplo, el aviso que un usuario verán en perfiles móviles dirá lo siguiente: 

Your roaming profile isn't synchronized with the server because a slow network connection is detected. You've been signed in with a local profile.

Más información la podéis encontrar aquí: https://docs.microsoft.com/en-us/troubleshoot/windows-server/user-profiles-and-logon/manage-profile-service-slow-link-detection#settings-that-control-slow-link-detection

Slow Link Mode - Archivos Offline

Event ID=1004

Description:  Path \server\share$ transitioned to slow link with latency = 81 and bandwidth = 258888 

“Configure slow-link mode” policy on Vista for Offline Files | Microsoft Docs


Las opciones de las directivas de grupo no aplicará en conexiones Slow Link son las siguientes:


COMPONENTE


FORZADO (Push)


Deployed Printer Connections

No

Disk Quotas

No

Folder Redirection

No

Scripts

No

Software Installation

No

domingo, 11 de abril de 2021

Script - Configurar Azure VM como DC durante su creación

 Hola, 

El Script que os quiero compartir no es gran cosa, pero andaba cansado de crear DCs a mano para entornos de pruebas en Azure. Así que hace un tiempo creé un Script que lo hace y hoy, tras utilizarlo por enésima vez, os lo comparto.

#Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled false

Add-WindowsFeature RSAT-ADDS-Tools

Install-WindowsFeature -name AD-Domain-Services

Install-WindowsFeature AD-Domain-Services -IncludeManagementTools

$pasw="TuContraseña"

$spasw = $pasw | ConvertTo-SecureString -AsPlainText -Force

Install-ADDSForest -DomainName dominio.local -SafeModeAdministratorPassword $spasw -Confirm:$false -Force -InstallDns:$true -DomainNetbiosName dominio -NoRebootOnCompletion

Start-Sleep -s 10

Restart-computer

Veréis que he comentado la línea donde podrías deshabilitar el Firewall de Windows, yo finalmente no lo hago, pero up to you. También tendréis que adaptarlo y poner vuestra contraseña.

La primera vez, para poder lanzarlo durante la creación de una VM, tenéis que subirlo a un contenedor y en opciones avanzadas, elegir crear un "Custom Script Extension", eligiendo el script subido o subirlo durante el wizard que aparecerá.






miércoles, 3 de febrero de 2021

Asignar licencia de M365 por pertenencia a grupo en Azure AD

Hola, 

A continuación os detallo los pasos para asignar licencias de forma automática por pertenencia a grupos de Azure AD o AD sincronizados.

Licencias M365 Apps por device

El funcionamiento de asignación de licencias O365 apps por dispositivo, es el mismo que se describe a continuación, pero deberemos incluir equipos en el grupo correspondiente, en vez de usuarios. Tras eso, ya podremos desplegar Office 365 apps (anteriormente proplus) y este software será activado por dispositivo.

Para la poder inlcuir equipos en grupo de auto asignación de licencias, deberías habilitar la sincronización de dispositivos en Ad-Connect.


Licencias M365 por Usuario

Necesitas contar con licencia P1 o E5 pero con tener una se habilita la opción...

1. Ir a la opción "Licenses" en Azure AD.


2. Dentro de la opción elegida, hacer click "All groups" y luego en el tipo de licencias que queréis asociar al grupo.




3. Tras esto has de elegir "Users and Groups" y en el menú de la derecha elegir el grupo que queréis asociar.


4. Después de elegir el grupo, tenéis que hacer click en "Assignment options" y elegir las opciones de la licencia que queréis aplicar.



Con esto ya estaría. Una licencia se asignará a cada usuario perteneciente al grupo.

Debéis tener en cuenta que toda licencia asignada a un usuario mediante grupo, no podrá ser retirada de un usuario directamente, para eliminar la licencia asignada habrá que retirar al usuario del grupo.

Saludos.



lunes, 1 de febrero de 2021

Habilitar Self Service Password en inicio de sesión

 

Hola, 

A continuación os dejo los pasos necesarios para habilitar la opción de recuperación de contraseña en el inicio de sesión.






Requisitos

Opción 1 - Escenario de AD híbrido 

- Azure AD P1 en el usuario

- Password Write Back habilitado en la sincronización de AD Connect.


Opción 2 - Escenario con equipos ligados solamente a Azure AD

- Solamente es necesario ligar el equipo a Azure AD.


Requisitos generales:

- Contar con los equipos ligados a Azure AD.

- Internet y en el caso de Proxy, contar con acceso a las direcciones passwordreset.microsoftonline.com y ajax.aspnetcdn.com

-Contar con versión Windows 10 1803 o superior

-Qué los usuarios hayan ofrecido información de contacto, como por ejemplo teléfono y/o dirección de correo secundaria.


Los pasos para configurar la activación


Sin Intune (Endpoint Device Manager)

Promulgar en tus equipos la clave de registro siguiente: 

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\AzureADAccount

"AllowPasswordReset"=dword:00000001


Con Intune (Endpoind Device Manager)

Crear una política aplicada a usuario o equipos con la siguiente configuración: 

OMA-URI  - ./Vendor/MSFT/Policy/Config/Authentication/AllowAadPasswordReset

Tipo de datos : Entero

Valor: 1



lunes, 20 de abril de 2020

Personalizar fondo para Microsoft Teams


Hola, 

En los últimos días hemos visto una actualización de Microsoft Teams, gracias a la cual, se nos permite cambiar el fondo que aparece detrás de nosotros durante una conversación.



Pues bien, si preferís tener fondos personalizados, basta con dejar un archivo de imagen en la siguiente ruta:

%AppData%\Microsoft\Teams\Backgrounds\Uploads

Os dejo con algunos recursos de donde podéis descargar imágenes.

https://wallpapercave.com/star-trek-wallpaper-1920x1080
https://www.starwars.com/news/star-wars-backgrounds


Por cierto, siempre veréis un efecto espejo respecto a como lo veis vosotros respecto a como lo ven los asistentes, por lo que si os inclináis por insertar el logo de vuestra empresa, este lo veréis volteado horizontalmente.

Saludos

lunes, 13 de abril de 2020

Doble Factor (Azure AD) en Servicio Remote Desktop Gateway


Hola,

En el siguiente post, quiero detallaros como añadir doble factor de validación a la hora de conectar a vuestra granda Remote Desktop Services desde el exterior, haciendo uso del rol Remote Desktop Gateway.

Con este post quiero enriquecer comentando algunos aspectos que al seguir la información oficial, pueden pasar desapercibidos e incluso pueden provocar que os atasquéis. Esta información oficial la tenéis aquí: https://docs.microsoft.com/en-us/azure/active-directory/authentication/howto-mfa-nps-extension-rdg

A continuación os detallo los elementos necesarios.

Infraestructura Onpremise:

  1. Directorio activo sincronizado con Azure Ad mediante Ad-Connect u otros software de sincronziación.
  2. Servidor RDG con rol Remote Desktop Gateway
    • Rol Remote Desktop Gateway (RDG) en un servidor publicado a internet a través del puerto 443.
    • Servicio Network Policy Server (NPS) Local del servidor Remote Destkop Gateway- (Importante conocer que este servicio existe y se activa automáticamente al añadir el rol RDG)
  3. Servidor NPS donde habilitar el rol Network Policy Server, que conectaremos con Azure AD
Azure AD:
  1. Activar MFA en usuarios sincronizados.
  2. Obtener el Azure AD ID -  Azure Active Directory - Propiedades.

A continuación podéis ver los pasos de configuración.

Configuración: 

Servidor NPS:
  • Abrir Powershell como administrado
  • Ir a la ruta c:\program files\microsoft\azureMfa\config
  • lanzar el script: AzureMfaNpsExtnconfigSetup.ps1
Errores conocidos: 

Servidor RDG:
  •  Ir a Inicio - Herramientas administrativas - Remote Desktop Services - Administrador de puerta de enlace de Escritorio Remoto
  •  Click en Propiedades sobre botón derecho sobre el nombre del servidor 
  •  Solapa Almacén de Cap de RD

  •  Añadir nombre de servidor NPS - Agregar Frase secreta compleja y de vuestra invención.
  • En el servidor RDG (no configundir con servidor NPS) abrir consola NPS. Inicio - Herramientas administrativas - Servidor de directivas de red. 
  • Ir a Clientes y Servidores RADIUS - Grupos de servidores remotos RADIUS
  • A la derecha ha de aparecer TS GATEWAY SERVER GROUP . Si no apareciese por favor actualizar ya de requiere unos minutos.
  • Doble click sobre dicho grupo
  • Comprobar que aparece el servidor NPS - Hacer click sobre él y click en Editar
    • click en la solapa Equilibrio de carga
    • Aumentar los segundos de solicitud e identificación a 60.
    • Aceptar todas las ventanas abiertas
  • Cerrar consola NPS
Servidor NPS:
  • Abrir Consola NPS - Inicio - herramientas administrativas - Servidor de directivas de redes
  • Botón derecho sobre NPS (Local) y hacer click en Registrar servidor en Active Directory
  • Dobre Click en Clientes y Servidores Radius
    • Botón derecho sobre Clientes RADIUS - click en Nuevo
    •  Dirección IP : Nombre de servidor RDG
    • Introducir mismo secreto compartido que se introdujo en el servidor RDG
  • Doble click en Directivas y directivas de red
  • Botón derecho sobre la directiva "Connections to other access Servers
    • Click en duplicar directiva
  • Botón derecho - Propiedades sobre la directiva duplicada aparecida
    • Modificar nombre
    • Click en Directiva Habilitada
    • Click en Conceder acceso
    • Click en solapa Restricciones
      • Métodos de autenticación
        • marca la casilla Permitir a los clientes conectarse sin negociar un método...
    • Click en la solapa Condiciones
      • Agregar  condición incorporando a un grupo de usuarios de directorio activo, como grupo permitido para la conexión.
  • Aceptar las ventanas aparecidas.
Tras esto, ya podréis probar la configuración de la conexión a través de RDG a un equipo en la red.

Saludos. 


install-package - failed to download

I've found some problems to get packages linke msonline and azuread using the command install-package from Windows Server 2016.

This command fixed my problem:  [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 

Nuget in computer without internet connection


Hello, 

I had to install Nuget in a server without internet and after some investigation I kept these steps: 

1. go to a computer with internet connection and launch the classic:Install-PackageProvider -Name NuGet -RequiredVersion *2.8.5.201 -Force
*Choose the version you need. https://www.nuget.org/packages/NuGet.Build/2.8.6
2. Then go to the path C:\Program Files\PackageManagement\ProviderAssemblies and copy the Nuget folder. 3. Paste this folder at the same path in the server where there isn't internet 4. Launch this command in an Administrator Powershell: Import-PackageProvider -Name NuGet -RequiredVersión Regards

domingo, 12 de abril de 2020

Upgrade in place 2008 r2 - Ws2012 R2 - doesn't start after copy temporary files.


Hello,

I've lived the following installation process:

- Launch setup.exe from the Ws2012 R2 ISO.
- Install Ws2012 R2
- Copying temporary files (It creates C:\$WINDOWS.~BT)
- Turn back to the step 1.

Looking for the real error the best way is to launch manually the command that is behind this:

C:\$WINDOWS.~BT\Sources\setup.exe /runlocal   /BTFolderPath:C:\$WINDOWS.~BT /OSImagePath:"z*:\Sources"  /HideWelcome /uilanguage:en-US /targetlanguage:en-US**

*Change the correct letter.
**Change for the correct language in your case.

After answering some questions of the wizard it worked me.

If it didn't word in your case you would have to receive a clear error. For example perhaps you have to change the BT Folder path  because there isn't enough space in your C:. Or maybe you have to uninstall any software that is in conflict.

Regards

martes, 14 de enero de 2020

Exchange - Changing Autodiscover Service Endpoint


Hello,

After an intensive research i finally discovered how to change the service point where Outlook connector looking for the autodiscover .XML file.

The Service Enpoint appears after launching this command:

Test-WebServicesConnectivity -identity "account@domain.com" -MailboxCredential(get-credential domain\account) | fl

How to change it:

Set-ClientAccessServer "SERVER" -AutodiscoverServiceInternalUri https://URL/Autodiscover/Autodiscover.xml

The URL will appears as service endpoint.

Regards.

lunes, 30 de diciembre de 2019

PXE configuration for Secure UEFI, UEFI and Legacy BIOS in a Windows DHCP Server


Hi.

I'm going to detail how to configure PXE boot in a Windows DHCP server role having Secure UEFI, UEFI or Legacy BIOS as boot mode.

1. Create Custom Vendor Classes with your DHCP Policy

1.1 Right click on IPV4 - Click on Define Vendor Classes

2. DHCP 
win- q4da4mukrq6 
Display Statistics... 
New Scope... 
New Superscope... 
New Multicast Scope... 
Configure Failover... 
Replicate Failover Scopes... 
Define User Classes... 
Define Vendor Classes... 
Reconcile All Scopes... 
Set Predefined Options... 
View 
Refresh 
Export List... 
Properties 
Help

1.2 Click Add and field it with next information:
  • DisplayName: PXEClient (UEFI x64)
  • Description: PXEClient:Arch:00007
  • ASCII: PXEClient:Arch:00007
1.3 Click Add again and field it with next information
  • DisplayName: PXEClient (UEFI x86)
  • Description: PXEClient:Arch:00006
  • ASCII: PXEClient:Arch:00006
1.4 Click add for last time and field it with next information
  • DisplayName: PXEClient (BIOS x86 & x64)
  • Description: PXEClient:Arch:00000
  • ASCII: PXEClient:Arch:00000
Example:
DHCP 
win- q4da4mukrq6 
IPv4 
scope [192.168.00 192.168.1x 
Server Options 
Policies 
Filters 
Available classes 
Name 
Contents of DHCP Server 
scope [192.168.0.0] 
Server Options 
Policies 
Filters 
Status 
Active 
Remove 
Descriptior 
Microsoft Windows 20 
Microsoft Windows 98 
Microsoft Options 
DHCP Vendor Classes 
Microsoft vendor-specific option 
Microsoft vendor-specific option 
Microsoft vendor-specific optiotm 
New Class 
Display name: 
PXECliant 
PXECliantkch 00007 
0000 
0010 
so 
74 
30 
63 
30 
PXEC1ien 
t Arch : O 
30 
Binary 
45 43 sc 
41 72 63 
30 37

2. Create DHCP Policies

2.1 Right Click on Policies and click on New Policy

win- q4da4mukrq6 
Pv4 
scope [192.168.00 
Server Options 
Polic 
Filters 
New Policy... 
Deactivate 
View 
Refresh 
Export List... 
Help

You have to create few policies, the information needed is:

Policy 1. 
2.1.1 Field Policy Name: PXEClient (UEFI x64) and Description: Boot File UEFI x64
2.1.2 Click on Add
2.1.3 Choose Value: PXEClient (UEFI x64), click on append wildcard(*)
2.1.4 Click on Add and Next
2.1.5 Leave DHCP Standard Options
2.1.6 Click on 066 Boot server host name and field it with the IP of your Deployment Server.
2.1.7 Click on 067 Bootfile Name field with: EFI\Boot\bootx64.efi
2.1.8 Click on Next and Finish.

Policy 2.
2.1.9 Repeat points 2.1.1 to 2.1.8 with this information:
  • 2.1.1 PXEClient (BIOS x86 & x64), Boot File BIOS x86 & x64
  • 2.1.3 PXEClient (BIOS x86 & 64), append wildcard (*)
  • 2.1.6 066 Boot server host name: IP fo your server
  • 2.1.7 067 Bootfile Name: boot\pxeboot.n12 
Policy 3.
2.2.0 Repeat points 2.1.1 to 2.1.8 with this information:
  • 2.1.1 PXEClient (UEFI X86), Boot File UEFI x86
  • 2.1.3 PXEClient (UEFI x86), append wildcard (*)
  • 2.1.6 066 Boot server host name: IP fo your server
  • 2.1.7 067 Bootfile Name:  EFI\Boot\bootia32.efi
Example:


DHCP Poli Confi u ration Wizard 
Policy IP 
This feature allows you to distributa configurable settings (IP address. DHCP options) to 
clients based on certain condtions vendor class. user class. MAC address. etc) 
This wizard will guide you setting up a naw policy Provide a nama Volp Phone 
Configuration Polic•,') and description NT P Server option for Volp Phones) for your 
Policy Name 
PXECliant 
UEFIx641 
Back







DHCP Policy Configuration Wizard 
Coriiw•e for ttE policy 
A policy consists of ona or mora condtions and a set of configuration settings (options. IP 
Address) that are disthbuted to the cliant The DHCP server dalivarz these specific 
settings to clients that match these condtions 
A policy wth condtions based on fully qualified domain name can have 
configuration settings for DNS but not for options or IP address ranges 
in this view. 
More Actions 
Add/Edit Condition 
Specify a condition for the policy being configured Select a criteria. operator 
and values for the condtion 
Vendor Class 
Criteria : 
Value(s) 
Value PXEClient (UEFIx64) 
r Prefix wildcard O 
Append 
PXECliant (LIEFI x64)• 
r AND 
OR



DHCP Policy Configuration Wizard 
Coriiw•e for policy 
f the conditions specified in the policy match a client request the settings will be 
applied 
Vendor class 
Available 
065 N Servarz 
DHCP Standard Options 
066 800t Server Host Name 
067 800tfIIe Name 
Data entry 
String valua 
192 1680254 
A list of IP addresses indicati 
TFTP boot server host name 
800tflIa Nama



DHCP Policy Configuration Wizard 
Coriiw•e for policy 
f the conditions specified in the policy match a client request the settings will be 
applied 
Vendor class 
Available 
065 N Servers 
DHCP Standard Options 
066 800t Server Host Name 
067 800tflIa Nama 
Data entry 
String valua 
afi 
A list of IP addresses indi 
T FTP boot server host nama 
800tfiIe Name



HCP Poli 
nfigurati 
Wiza 
A naw policy will be created wth the following properties To configure DNS settings. 
view properties of the policy and click the DNS tab 
PXECliant (LIEF' 
Description 800t file Ll EFI x64 
Conditions O R of 
Condtions 
Vendor Class 
800t Sarver Host Name 
800tflIa Nama 
Equals 
Vendor Class 
Value 
PXECliant (LIEFI 
192 1680254 
EF \Boot Ibootx6