Files
SGU-CredentialProvider/docs/windows-client-onboarding.md
T

127 lines
4.6 KiB
Markdown

# Alta de un equipo Windows en el laboratorio LCI
Esta guía configura un Windows 10/11 Pro o Enterprise para el dominio, RDP con
NLA y PowerShell Remoting. Está pensada para la red aislada del laboratorio; no
abre estos servicios en el perfil de red pública.
## 1. Prerrequisitos
- Una cuenta con permiso para unir equipos al dominio.
- DNS primario del adaptador apuntando al controlador de dominio
`192.168.50.10`.
- Conectividad con `lci.lasalle.mx` y hora sincronizada.
- Windows Pro, Enterprise o Education para actuar como host RDP.
```powershell
Get-NetAdapter
Set-DnsClientServerAddress -InterfaceAlias 'Ethernet' `
-ServerAddresses 192.168.50.10
Resolve-DnsName -Type SRV _ldap._tcp.dc._msdcs.lci.lasalle.mx
```
## 2. Unir el equipo al dominio
Para equipos SGU nuevos, no ejecutar `Add-Computer` directamente. Usar el flujo
obligatorio de [`client-enrollment.md`](client-enrollment.md), que instala y
valida primero el Credential Provider. Los comandos siguientes quedan como guía
de recuperación o para equipos que no pertenecen al alcance SGU.
Abrir Windows PowerShell como administrador. El prompt solicita la contraseña
de forma interactiva y evita ponerla en el historial:
```powershell
$domainCredential = Get-Credential -UserName 'LCI\Administrator'
Add-Computer `
-DomainName 'lci.lasalle.mx' `
-Credential $domainCredential `
-Restart
```
Después del reinicio:
```powershell
(Get-CimInstance Win32_ComputerSystem) |
Select-Object Name, Domain, PartOfDomain
```
## 3. Habilitar acceso remoto
El grupo de dominio `LCI\SG-Laboratorio-Usuarios-RDP` es el único principal de
usuarios SGU agregado al grupo local **Remote Desktop Users**. El broker agrega
automáticamente a ese grupo cada cuenta que sincroniza; no concede permisos de
administrador.
Copiar `scripts\Enable-LabRemoteAccess.ps1` al equipo y ejecutar. El bypass se
limita a este proceso y no cambia la directiva persistente del equipo:
```powershell
powershell.exe -NoProfile -ExecutionPolicy Bypass `
-File .\Enable-LabRemoteAccess.ps1 `
-RemoteDesktopPrincipal 'LCI\SG-Laboratorio-Usuarios-RDP' `
-EnableAdministrativeFirewallGroups
```
El script realiza de forma idempotente lo siguiente:
- habilita RDP y conserva Network Level Authentication;
- habilita las reglas RDP solo para el perfil Domain;
- autoriza el grupo SGU dedicado;
- habilita Windows PowerShell Remoting/WinRM;
- opcionalmente habilita administración remota de servicios, eventos y WMI,
también limitada al perfil Domain.
PowerShell Direct de Hyper-V no requiere abrir puertos en la VM y sigue siendo
la opción preferida para recuperación administrativa.
## 4. Instalar el Credential Provider
```powershell
powershell.exe -NoProfile -ExecutionPolicy Bypass `
-File .\Install-CredentialProvider.ps1 `
-PublishPath C:\SGUDeploy\credential-provider `
-BrokerEndpoint https://sgu-auth.lci.lasalle.mx:8443/v1/authenticate `
-ClientCertificateThumbprint CLIENT_CERT_THUMBPRINT `
-ServerCertificateThumbprint SERVER_CERT_THUMBPRINT `
-TimeoutSeconds 35
```
Los binarios se guardan en un subdirectorio `versions` identificado por su
contenido. De esta forma se puede preparar una actualización aunque
`LogonUI.exe` todavía tenga cargada la DLL anterior; el reinicio obligatorio
activa la nueva versión.
El instalador también asigna SGU como proveedor predeterminado mediante la
directiva de equipo de Windows. No modifica ni oculta el proveedor de contraseña
de Microsoft.
Bloquear el equipo, abrir **Sign-in options** y elegir el icono azul con llave
del acceso SGU. El proveedor de contraseña de Microsoft debe permanecer visible.
## 5. Verificación
```powershell
Get-Service TermService, WinRM
Get-LocalGroupMember -Group 'Remote Desktop Users'
Test-WSMan localhost
Test-NetConnection sgu-auth.lci.lasalle.mx -Port 8443
```
Desde otro equipo administrador:
```powershell
Test-WSMan NOMBRE-DEL-EQUIPO
Enter-PSSession -ComputerName NOMBRE-DEL-EQUIPO -Credential LCI\Administrator
mstsc.exe /v:NOMBRE-DEL-EQUIPO
```
El mensaje “the user has not been granted the requested logon type” con evento
4625, `LogonType=10` y estado `0xC000015B` indica autorización RDP, no una
contraseña incorrecta. Comprobar que la cuenta pertenece a
`SG-Laboratorio-Usuarios-RDP` y que ese grupo aparece en **Remote Desktop Users**.
Las directivas de grupo de dominio prevalecen sobre la política local.
Microsoft documenta este derecho en:
<https://learn.microsoft.com/en-us/windows/client-management/mdm/policy-csp-userrights#allowlogonthroughremotedesktop>
y PowerShell Remoting en:
<https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/enable-psremoting>.