Comandos básicos para configurar y administrar Windows Server Core
En este artículo, traté de describir los comandos básicos de cmd y PowerShell que se usan para configurar y administrar Windows Server Core. Creo que esta guía será útil tanto para principiantes como para administradores de sistemas experimentados como referencia a los comandos básicos de administración de Server Core.
Server Core es un modo especial de instalación de Windows Server sin la mayoría de las herramientas gráficas y complementos. Puede administrar Server Core desde el símbolo del sistema o de forma remota (mediante el Centro de administración de Windows u otras herramientas).
Ventajas de Windows Server Core:
Menores requisitos de recursos;
Estabilidad y seguridad mejoradas; se requieren menos actualizaciones (debido a la menor cantidad de código y componentes utilizados);
-
Se adapta idealmente para su uso como servidor de función de infraestructura (controlador de dominio de Active Directory, servidor DHCP, host Hyper-V, servidor de archivos SMB, etc.).
Server Core se licencia como una instancia física o virtual de Windows Server común (a diferencia de Hyper-V Server, que es totalmente gratuito).
Para instalar Windows Server 2016/2019 en el modo Core, debe seleccionar una instalación típica. Si selecciona Windows Server (Desktop Experience), se instalará la versión GUI del sistema operativo (en versiones anteriores de Windows Server se denominaba Servidor con GUI).
No puede cambiar entre los modos GUI completo y Core en Windows Server 2016/2019 sin reinstalar el servidor.
Después de la instalación de Windows Server Core, se le pedirá que establezca una contraseña de administrador local.
Cuando inicia sesión en Server Core, aparece el símbolo del sistema (cmd.exe). Si desea que se ejecute la consola de PowerShell en su lugar, realice algunos cambios en el registro. Ejecute los comandos a continuación:
Powershell.exe
Set-ItemProperty -Path 'HKLM:\Software\Microsoft\Windows NT\CurrentVersion\WinLogon' -Name Shell -Value 'PowerShell.exe'Y reinicie su servidor:
Restart-Computer -ForceSi ha cerrado accidentalmente la ventana del símbolo del sistema, presione
Ctrl+Alt+Delete, abra el Administrador de tareas -> Archivo -> Ejecutar -> y ejecute
cmd.exe(o
PowerShell.exe).
Configurar Windows Server Core usando SCONFIG
Puede utilizar la secuencia de comandos sconfig integrada para la configuración básica de Server Core. Solo ejecuta el
sconfigcomando en su consola. Verá un menú con varios elementos:
Con el menú Configuración del servidor, puede hacer lo siguiente:
Agregar una computadora a un dominio o grupo de trabajo
Cambiar el nombre de una computadora (nombre de host)
-
Agregar un administrador local
Permitir/denegar gestión remota y respuesta ICMP
Configurar los ajustes de actualización de Windows
Instalar actualizaciones de Windows
Habilitar/deshabilitar RDP
Configure los ajustes del adaptador de red (dirección IP, puerta de enlace, servidor DNS)
Establecer fecha y hora
Cambiar la configuración de telemetría
Activa tu instancia de Windows Server
Cierre sesión, reinicie o apague su servidor
cada elemento en
sconfigtiene su numero. Para abrir el elemento que desea, simplemente escriba su
numbery presiona
EnterAlgunos elementos del menú de configuración tienen subelementos. Para llegar a una configuración, también debe ingresar su número.
No describiremos todas las configuraciones de sconfig, ya que son fáciles de entender. Sin embargo, en la mayoría de los casos, los administradores prefieren usar varios scripts de PowerShell para configurar nuevos hosts que ejecuten Server Core. Es más fácil y rápido, especialmente en escenarios de implementación masiva.
Comandos básicos de PowerShell para configurar Server Core
Echemos un vistazo a los comandos básicos de PowerShell que se pueden usar para configurar Server Core.
Para obtener información sobre la compilación de Windows Server y la versión de PowerShell:
Get-ComputerInfo | select WindowsProductName, WindowsVersion, OsHardwareAbstractionLayer
$PSVersionTablePara reiniciar Server Core, ejecute este comando de PowerShell:
Restart-ComputerPara cerrar sesión en su consola Server Core, use el siguiente comando:
logoffConfigure los ajustes de red en Server Core con PowerShell
Ahora debe configurar los ajustes de red mediante PowerShell (de forma predeterminada, Windows está configurado para recibir una dirección IP de DHCP). Mostrar una lista de adaptadores de red:
Get-NetIPConfigurationEspecifique un índice de la interfaz de su adaptador de red (
InterfaceIndex) que desea cambiar y establecer una nueva dirección IP y servidores DNS:
New-NetIPaddress -InterfaceIndex 4 -IPAddress 192.168.1.100 -PrefixLength 24 -DefaultGateway 192.168.1.1
Set-DNSClientServerAddress -InterfaceIndex 4 -ServerAddresses 192.168.1.11,192.168.101.11Compruebe la configuración de red actual:
Get-NetIPConfigurationSi desea restablecer una dirección IP y volver a obtener una dirección IP de DHCP, ejecute el siguiente comando:
Set-DnsClientServerAddress -InterfaceIndex 4 -ResetServerAddresses
Set-NetIPInterface -InterfaceIndex 4 -Dhcp EnabledPara habilitar/deshabilitar un adaptador de red:
Disable-NetAdapter -Name “Ethernet0”
Enable-NetAdapter -Name “Ethernet 0”Para habilitar, deshabilitar o verificar el estado de la compatibilidad con IPv6 para su adaptador de red:
Disable-NetAdapterBinding -Name "Ethernet0" -ComponentID ms_tcpip6
Enable-NetAdapterBinding -Name "Ethernet0" -ComponentID ms_tcpip6
Get-NetAdapterBinding -ComponentID ms_tcpip6Para configurar el servidor proxy winhttp para PowerShell o conexiones del sistema:
netsh Winhttp set proxy <servername>:<port number>¿Cómo configurar la fecha/hora?
Puede establecer una fecha, una hora o una zona horaria mediante una herramienta gráfica
intl.cplo PowerShell:
Set-Date -Date "07/21/2021 09:00"
Set-TimeZone "Central Europe Standard Time”Establezca el nombre de la computadora, únase al dominio y active Server Core
Para cambiar el nombre de una computadora (nombre de host):
Rename-Computer -NewName be-srv01 -PassThruPara agregar un servidor a su dominio de Active Directory local:
Add-Computer -DomainName "corp.a-d.site" -RestartSi desea agregar usuarios adicionales al grupo de administradores locales, puede configurar una Política de grupo o agregarlos manualmente:
Add-LocalGroupMember -Group "Administrators" -Member "corp\jsmith"Para activar Windows Server, ingrese su clave de producto:
slmgr.vbs -ipk <productkey>
slmgr.vbs -atoO puede activar su host en un servidor KMS. Por ejemplo, para activar Windows Server Core 2019 Standart en un host KMS:
slmgr /ipk N69G4-B89J2-4G8F4-WWYCC-J464C
slmgr /skms kms.corp.a-d.site:1688
slmgr /atoHabilitación de la administración remota de Windows Server Core
Para permitir el acceso remoto a Server Core a través de RDP:
cscript C:\Windows\System32\Scregedit.wsf /ar 0Para permitir la administración remota:
Configure-SMRemoting.exe -Enable
Enable-NetFirewallRule -DisplayGroup “Windows Remote Management”Para mostrar la configuración actual de Gestión remota:
Configure-SMRemoting.exe -GetPara permitir Win-RM para la comunicación remota de PowerShell:
Enable-PSRemoting -forcePuede administrar un servidor que ejecuta Windows Server Core de forma remota desde otro servidor (usando ServerManager.exe), a través de un navegador usando Windows Admin Center (WAC), desde cualquier estación de trabajo usando RSAT, también puede conectarse usando RDP, PowerShell Remoting o SSH (las versiones actuales de Windows tienen un servidor SSH incorporado).
Configuración del Firewall de Windows en Server Core
Puede encontrar información sobre cómo configurar el Firewall de Windows Defender con PowerShell en este artículo. Solo mostraré algunos comandos básicos aquí.
Para habilitar el Firewall de Windows Defender para todos los perfiles:
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled TruePara cambiar su tipo de red de Pública a Privada:
Get-NetConnectionProfile | Set-NetConnectionProfile -NetworkCategory PrivatePara deshabilitar completamente el Firewall de Windows (no recomendado):
Get-NetFirewallProfile | Set-NetFirewallProfile -enabled falsePara permitir la conexión mediante herramientas de administración remota:
Enable-NetFireWallRule -DisplayName “Windows Management Instrumentation (DCOM-In)”
Enable-NetFireWallRule -DisplayGroup “Remote Event Log Management”
Enable-NetFireWallRule -DisplayGroup “Remote Service Management”
Enable-NetFireWallRule -DisplayGroup “Remote Volume Management”
Enable-NetFireWallRule -DisplayGroup “Remote Scheduled Tasks Management”
Enable-NetFireWallRule -DisplayGroup “Windows Firewall Remote Management”
Enable-NetFirewallRule -DisplayGroup "Remote Administration"¿Cómo instalar actualizaciones en Windows Server Core?
Para administrar las opciones de actualización, es mejor usar las Políticas de grupo de Windows Update. Sin embargo, puede establecer la configuración de actualización manualmente.
Para deshabilitar la actualización automática:
Set-ItemProperty -Path HKLM:\Software\Policies\Microsoft\Windows\WindowsUpdate\AU -Name AUOptions -Value 1Para descargar automáticamente las actualizaciones disponibles:
Set-ItemProperty -Path HKLM:\Software\Policies\Microsoft\Windows\WindowsUpdate\AU -Name AUOptions -Value 3Para obtener la lista de actualizaciones instaladas:
Get-HotfixO
wmic qfe listPara instalar las actualizaciones de Windows manualmente, puede usar el
wusaherramienta:
wusa kbnamexxxxx.msu /quietPara instalar y administrar actualizaciones desde el símbolo del sistema, es conveniente utilizar el módulo PSWindowsUpdate para PowerShell.
Administración de funciones, servicios y procesos principales de Windows
Para obtener una lista de todos los roles disponibles en Windows Server Core, ejecute el siguiente comando de PowerShell:
Get-WindowsFeaturePara obtener una lista de todas las funciones y características instaladas en Windows Server (así puede comprender rápidamente para qué se usa el servidor):
Get-WindowsFeature | Where-Object {$_. installstate -eq "installed"} | ft Name,InstallstatePor ejemplo, para instalar la función DNS, ejecute este comando:
Install-WindowsFeature DNS -IncludeManagementToolsPara obtener una lista de todos los servicios en Windows:
Get-ServicePara ver todos los servicios detenidos:
Get-Service | Where-Object {$_.status -eq “stopped”}Para reiniciar un servicio:
Restart-Service -Name spoolerObtenga más información sobre la administración de servicios con PowerShell.
Para administrar procesos, puede usar el Administrador de tareas (taskmgr.exe) o el módulo Procesos de PowerShell:
Get-Process cmd, wuaucl* | Select-Object ProcessName, StartTime, MainWindowTitle, Path, Company|ftComandos útiles de Windows Server Core
Por último, mostraré algunos comandos y scripts útiles de PowerShell que suelo usar para administrar Server Core.
Información sobre el estado y la salud de los discos físicos (se utiliza el módulo de administración de discos de almacenamiento predeterminado):
Get-PhysicalDisk | Sort Size | FT FriendlyName, Size, MediaType, SpindleSpeed, HealthStatus, OperationalStatus -AutoSizeInformación de espacio libre en disco:
Get-WmiObject -Class Win32_LogicalDisk |
Select-Object -Property DeviceID, VolumeName, @{Label='FreeSpace (Gb)'; expression={($_.FreeSpace/1GB).ToString('F2')}},
@{Label='Total (Gb)'; expression={($_.Size/1GB).ToString('F2')}},
@{label='FreePercent'; expression={[Math]::Round(($_.freespace / $_.size) * 100, 2)}}|ftInformación sobre los últimos 10 reinicios de su servidor:
Get-EventLog system | where-object {$_.eventid -eq 6006} | select -last 10Una lista de programas instalados:
Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate | Format-Table -AutoSizePara descargar y extraer un archivo ZIP de un sitio web externo:
Invoke-WebRequest https://servername/file.zip -outfile file.zip
Expand-Archive -path '.\file.zip' -DestinationPath C:\Users\Administrator\Documents\Para copiar todos los archivos de un directorio a una computadora remota a través de la red, puede usar el cmdlet Copy-Item:
$session = New-PSSession -ComputerName be-dc01
Copy-Item -Path "C:\Logs\*" -ToSession $session -Destination "C:\Logs\" -Recurse -ForcePara instalar el controlador del dispositivo:
Pnputil -i -a c:\install\hpspp\hpdp.infMicrosoft también ofrece un paquete especial, Server Core App Compatibility Feature on Demand (FOD), que le permite instalar algunas herramientas gráficas y complementos en Windows Core Server 2019 (MMC, Eventvwr, Hyper-V Manager, PerfMon, Resmon, Explorer.exe, Device Manager, Powershell ISE). Puede descargar FOD como un archivo ISO si su suscripción de Microsoft está activa. Puedes instalarlo de la siguiente manera:
Add-WindowsCapability -Online -Name ServerCore.AppCompatibility~~~~0.0.1.0La instalación de la función de compatibilidad de aplicaciones de Server Core a pedido utilizará aproximadamente 200 MB de RAM adicional en su Server Core.
En este artículo, traté de recopilar los comandos más útiles necesarios para administrar Windows Server Core. De vez en cuando, actualizaré el artículo y agregaré nuevos comandos si parecen necesarios para el trabajo diario.










