Escritorio remoto (RDP)
Te da la pantalla del servidor como si estuvieras delante.
Cómodo para lo visual y para lo que se hace una vez. Consume una sesión gráfica entera y no deja constancia de qué hiciste.
Los servidores viven en un armario, en otra sede o en un centro de datos a miles de kilómetros. La administración es siempre remota, y Windows Server ofrece tres formas de hacerla.
No compiten entre sí: cada una sirve para algo distinto, y la clave está en saber cuándo usar cuál.
Te da la pantalla del servidor como si estuvieras delante.
Cómodo para lo visual y para lo que se hace una vez. Consume una sesión gráfica entera y no deja constancia de qué hiciste.
Una consola que administra varios servidores a la vez desde una sola ventana, sin abrir sesión en cada uno.
Es el punto medio: gráfico, pero ya centralizado.
Ejecuta comandos en uno o en cien servidores desde tu propia terminal.
Es lo único que se puede guardar, repetir y revisar, y es donde acaba yendo todo el trabajo serio.
RDP es lo primero que aprende todo el mundo, y está bien: para instalar una aplicación con asistente o mirar algo puntual, es lo natural.
El problema aparece cuando se convierte en la única forma de trabajar. Tres personas administrando por RDP son tres sesiones gráficas consumiendo memoria, y ninguna deja registro de qué tocó.
# Permitir conexiones de escritorio remoto
Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server' `
-Name "fDenyTSConnections" -Value 0
# Abrirlo en el firewall
Enable-NetFirewallRule -DisplayGroup "Remote Desktop"
# Comprobar quien puede entrar
Get-LocalGroupMember -Group "Remote Desktop Users"Activarlo en una red interna es una cosa; abrirlo a internet es otra muy distinta. Un RDP accesible desde internet es la vía de entrada número uno en los ataques de secuestro de datos contra servidores Windows.
Se llega por VPN o por una pasarela, nunca publicando el puerto. La lección 8 entra en el detalle, pero conviene saberlo desde ahora mismo: es el error más caro del curso.
La diferencia se ve con un ejemplo. Si te piden comprobar el espacio en disco de doce servidores, por RDP son doce sesiones, doce ventanas y quince minutos. Con PowerShell es una línea, y además la puedes guardar para repetirla el mes que viene.
# 1. Sesion interactiva: te "metes" en un servidor
Enter-PSSession -ComputerName SRV-ARCHIVOS -Credential (Get-Credential)
# ... trabajas como si estuvieras alli ...
Exit-PSSession
# 2. Ejecutar lo mismo en VARIOS servidores a la vez
Invoke-Command -ComputerName SRV-ARCHIVOS, SRV-WEB, SRV-BD -ScriptBlock {
Get-Volume | Where-Object DriveLetter -eq 'C' |
Select-Object @{n='Servidor';e={$env:COMPUTERNAME}},
@{n='LibreGB';e={[math]::Round($_.SizeRemaining/1GB,1)}}
}Servidor LibreGB -------- ------- SRV-ARCHIVOS 12.4 SRV-WEB 48.9 SRV-BD 3.1
Esa es la lección entera en una salida: el problema de
SRV-BD -3,1 GB libres- aparece sin haber abierto ninguna sesión, y el
comando queda guardado para volver a lanzarlo. Fíjate en
$env:COMPUTERNAME: sin él no sabrías qué línea es de qué servidor.
Enable-PSRemoting -Force
Configura el servicio de administración remota, lo arranca y crea la regla de firewall. En Windows Server suele venir ya activo.
Test-WSMan -ComputerName SRV-ARCHIVOS
Si responde con datos del protocolo, la vía está abierta. Si da error, es firewall o el servicio no está en marcha.
Fuera de un dominio, tu equipo no confía en ese servidor por defecto. Hay que añadirlo a la lista de equipos de confianza en tu máquina.
Set-Item WSMan:\localhost\Client\TrustedHosts -Value "SRV-ARCHIVOS"
Si vas a lanzar varios comandos, crea la sesión una vez y
reutilízala: $s = New-PSSession -ComputerName SRV-ARCHIVOS, y
luego Invoke-Command -Session $s.
Es más rápido que abrir y cerrar conexión en cada comando.
El fallo que desconcierta a todo el mundo la primera vez: estás conectado a un servidor y desde ahí intentas alcanzar un recurso de red -una carpeta compartida de otra máquina-, y te da acceso denegado aunque tus credenciales sean correctas.
No es un error tuyo: por seguridad, tus credenciales no se reenvían de un servidor a un tercero. Se llama el problema del segundo salto. La salida sencilla es ejecutar el comando directamente contra la máquina de destino, en vez de encadenar saltos.
Si vienes del lado Linux, esta tabla ahorra media lección. Los conceptos son los mismos con otros nombres.
Arrastra cada comando a su descripción, o toca uno y luego su espacio.
systemctl en Linux.PowerShell tiene miles de comandos y nadie se los sabe. Lo que sí tiene es
una estructura regular: verbo, guion y sustantivo.
Get-Service, Stop-Service, New-LocalUser. Si
conoces el patrón, adivinas el comando.
# Buscar comandos por tema
Get-Command *Service*
# Ver la ayuda con ejemplos reales
Get-Help Get-Service -Examples
# Ver TODO lo que devuelve un comando (sus propiedades)
Get-Service | Get-MemberGet-Member es el que más se subestima. PowerShell no devuelve
texto: devuelve objetos con propiedades, y ese comando te enseña
cuáles. Es la diferencia entre recortar texto -como se hace en Linux- y preguntar
directamente por el dato que quieres.
Es la política de ejecución, que viene restringida a propósito.
Get-ExecutionPolicy dice cómo está.
Para un laboratorio, Set-ExecutionPolicy RemoteSigned permite
los scripts locales y exige firma en los descargados. Es un
freno contra ejecutar por accidente lo que llega por correo,
no una barrera de seguridad seria.
Windows Server trae 5.1 integrado y es con el que se administra el sistema. PowerShell 7 se instala aparte, es multiplataforma y convive con el anterior.
Para este curso, el que viene incluido sobra.
Es una consola web que administra varios servidores desde el navegador. Muy cómoda, y una buena alternativa gráfica al RDP.
Se instala aparte. El curso no depende de ella para que lo aprendido funcione en cualquier servidor.
Exactamente igual: Enter-PSSession o
Invoke-Command. En la propia consola de la máquina hay además
SConfig, un menú de texto para lo básico -nombre, red,
actualizaciones-.
Y las herramientas gráficas de tu equipo pueden conectarse a él sin problema.
Tienes que comprobar el espacio en disco de doce servidores. ¿Qué usas?
Estás conectado a un servidor y desde ahí no puedes acceder a una carpeta compartida de otra máquina, con credenciales correctas. ¿Qué pasa?
¿Por qué no conviene administrar todo por escritorio remoto?
Ya administras el servidor sin sentarte delante. La siguiente lección es repartir el acceso: usuarios, grupos y la trampa de tener dos capas de permisos -los del recurso compartido y los del sistema de archivos- que se combinan y dejan a la gente fuera sin que se entienda por qué.
Siguiente: Usuarios, grupos y permisos NTFS
Continuar ← Montar el laboratorio