Gestión básica de servicios en Windows


  Ya se ha visto qué son los procesos de Windows en una entrada anterior del presente blog.
  En esta ocasión se hablará de los servicios, que son un tipo tan especial de procesos que necesitan un espacio específico en este blog.
  Por lo tanto, un servicio, en Windows, es un proceso que se ejecuta en segundo plano y no interactúa con el escritorio. Dicho programa debe ajustarse a las normas y protocolos de interfaz del "Service Control Manager", el componente responsable de la gestión de servicios de Microsoft Windows.
 Los servicios se pueden configurar para comenzar cuando se inicia el sistema operativo y ejecutarse en segundo plano mientras se ejecuta el sistema operativo. Alternativamente, se pueden iniciar manualmente o por un evento. Los sistemas operativos Windows incluyen numerosos servicios que se ejecutan en el contexto de tres cuentas de usuario: sistema, servicio de red y servicio local. Estos componentes de Windows a menudo se asocian con procesos de anfitrión ("host", en inglés) para servicios de Windows. Debido a que estos servicios funcionan en el contexto de sus propias cuentas de usuario dedicadas, pueden operar cuando un usuario no ha iniciado sesión.
  Al igual que sucedía con los procesos, los servicios pueden administrarse mediante el símbolo del sistema, PowerShell o herramientas con interfaz gráfica, como el "Administrador de tareas", por ejemplo.


 SÍMBOLO DEL SISTEMA

   Para gestionar los servicios desde la consola del símbolo del sistema, para lo cual es mejor tener permisos de administrador, se debe utilizar el siguiente comando sc [parámetro] [nombre del servicio] <opción1> <opción2>. En el cual se pueden emplear los siguientes parámetros:
  •   [query]: Consulta el estado de un servicio.
  •   [queryex]: Consulta el estado extendido de un servicio.
  •   [start]: Iniciar un servicio.
  •   [pause]: Pausar un servicio.
  •   [continue]: Enviar una señal de continuar al servicio.
  •   [stop]: Enviar una señal de parar al servicio.
  •   [create]: Crear un servicio.
  •   [delete]: Eliminar un servicio.
  Por ejemplo, si se quiere conocer el nombre de los servicios que se están ejecutando en el sistema, lo mejor es utilizar el comando sc query para verlos todos en una lista. Y si se desean conocer detalles sobre un servicio concreto, pues se emplea el comando sc queryex [nombre del servicio] (en el siguiente ejemplo se ve con detalle el servicio de "Cola de impresión").
  Otro comando que se puede utilizar para administrar servicios desde el símbolo del sistema es net [parámetro] [nombre del servicio]. Este comando se utiliza para administrar otras funciones del sistema, por lo que su uso para la gestión de servicios está algo menos extendido que el del comando anterior.
  Los parámetros de este comando más importantes para administrar servicios son:
  •   [start]: Inicia un servicio.
  •   [stop]: Detiene un servicio completamente.
  •   [pause]: Detiene momentáneamente un servicio.
  •   [continue]: Reanuda un servicio pausado con el parámetro anterior.
  Por ejemplo, si se quiere iniciar el servicio de "Fax", se utilizaría el comando net start fax.

POWERSHELL

  Del mismo modo que en el caso anterior, administrar servicios mediante PowerShell siempre es mejor con permisos de administrador.
  Para listar los servicios (lo que es muy útil para conocer sus nombres), se empleará el cmdlet  Get-Service [-Parámetros]. Si este cmdlet se emplea sin parámetros, mostrará una enorme lista de todos los servicios del sistema indicando su estado (detenido o funcionando).
 Entre los parámetros más básicos para administrar servicios se encuentran:
  •   [-Name]: Nombre del servicio sobre el que se quiere obtener el estado.
  •   [-DisplayName]: Contiene la descripción del servicio (hay que encerrar la descripción entre dobles comillas, permite el uso del carácter "*").
  •   [-Dependentservices]: Obtiene los servicios que dependen del servicio especificado.
  •   [-Exclude]: Omite los servicios especificados.
  •   [-Include]: Recupera únicamente los servicios especificados.
  •   [-InputObject]: Especifica objetos que representan los servicios que se van a recuperar.
  •   [-RequiredServices]: Obtiene solamente los servicios que este servicio requiere.
  Por ejemplo, si se pretende ver el estado del servicio de "Fax", el cmdlet será Get-Service -Name fax.
  Una vez conocido el nombre del servicio, es posible iniciarlo, pausarlo, pararlo, reiniciarlo, etc., o bien crear uno nuevo.
  Para ello existen los siguientes cdmlets (en los tres primeros es mejor utilizar el parámetro [-Name]):
  •   Start-Service [–Parámetros]: Inicia el servicio.
  •   Stop-Service [–Parámetros]: Detiene el servicio.
  •   Restart-Service [–Parámetros]: Reinicia el servicio.
  •   New-Service [-Parámetros]: Crea un nuevo servicio.
  Por ejemplo, si se desea detener el cortafuegos de Windows, se puede utilizar el cmdlet Stop-Service MpsSvc (aunque sería más conveniente Stop-Service -Name MpsSvc).
  Y si se quiere reactivarlo, una vez detenido, se empleará el cmdlet Start-Service -Name MpsSvc (se comprueba el resultado con Get-Service -Name MpsSvc).

ADMINISTRADOR DE TAREAS

  El modo gráfico más básico de gestionar los servicios es mediante el "Administrador de tareas". En la entrada sobre los procesos de Windows ya se ha explicado cómo abrir esta herramienta de este sistema operativo, por lo que no se repetirá aquí.
  En el "Administrador de tareas" hay que buscar la pestaña "Servicios", donde se mostrará una lista con los servicios que se están ejecutando en el sistema (independientemente de su estado). Pueden verse 5 columnas (en Windows 7 y anteriores eran 4) que, de izquierda a derecha, son: "Nombre" (nombre del servicio), "PID" (número de identificación de proceso; pues no hay que olvidar que los servicios son un tipo de proceso), "Descripción" (breve explicación del servicio), "Estado" (si se encuentra detenido o activo), y "Grupo" (grupo de servicios al que pertenece cada servicio en su caso; si no pertenece a ningún grupo de servicios, aparecerá en blanco).
  Desde esta ventana se puede pulsar sobre cualquier servicio con el botón derecho del ratón y manipularlo con las opciones que aparecen en el menú contextual que aparecerá. Las opciones "Iniciar", "Detener" y "Reiniciar" hacen exactamente lo que indican; por su parte, la opción "Abrir servicios" abre la ventana del administrador de servicios, la opción "Buscar en línea" accede a Internet para buscar información sobre el servicio, y la opción "Ir a detalles" muestra los detalles del servicio si está activo.
  Como siempre, si se tienen permisos de administrador se pueden gestionar mejor los servicios con este sistema.

ADMINISTRADOR DE SERVICIOS

  Otro modo de gestionar los servicios de Windows de manera gráfica es mediante el administrador de servicios, al que es más complicado llegar (sobretodo si no se tienen los correspondientes permisos de administrador).
  Existen varios modos de acceder a esta ventana:
  •   Pulsando el botón de "Inicio" con el botón derecho del ratón y, en el menú contextual, pulsando en "Ejecutar" para abrir la ventana del mismo nombre y escribir en ella "services.msc" (esto es así en las versiones de Windows 8 y posteriores; en versiones anteriores basta con pulsar el botón de Inicio y buscar "Ejecutar" en el menú de inicio para poder escribir lo antes mencionado).
  •   Desde el "Administrador de tareas", bien pulsando "Abrir servicios" (o equivalente en Windows diferentes a Windows 8 y 8.1) en la parte inferior de la pestaña "Servicios", bien desde el menú contextual mencionado en el apartado anterior.
  Pueden verse otras 5 columnas muy similares a las del "Administrador de tareas", que son (de izquierda a derecha): "Nombre" (indica el nombre del servicio), "Descripción" (muestra una breve descripción del servicio), "Estado" (si está activo o detenido), "Tipo de inicio" (muestra el modo en el que se activa el servicio; tiene varias opciones: "Manual", cuando se ejecuta únicamente si se le solicita; "Automático", cuando se ejecuta al iniciarse el sistema; "Automático (inicio retrasado)", cuando se inicia al activarse el sistema, pero se ejecuta sólo al estar totalmente operativo este; "Deshabilitado", si nunca se ejecuta), e "Iniciar sesión como" (muestra en qué contexto de cuenta de usuario inicia su sesión el servicio). Además, la columna justo a la izquierda de la de "Nombre" muestra una descripción algo más detallada del servicio que se seleccione.
  Como sucedía en el apartado anterior, si se pulsa con el botón derecho del ratón seleccionando uno de los servicios, aparecerá un menú contextual con las opciones que hay para manipularlo (siempre y cuando se tengan permisos de administrador). Por otra parte, si se pulsa dos veces seguidas sobre cualquier servicio de la lista, aparecerá la ventana con sus propiedades.

 
  Naturalmente, independientemente del método que se utilice para administrar los servicios en Windows, es conveniente deshabilitar cualquier servicio que no se necesite para minimizar posibles vías de ataque y optimizar el rendimiento del equipo.
  Espero que esta entrada haya resultado útil y/o interesante al lector. Si es el caso, que no se olvide de comentar y/o compartirla, por favor.

No hay comentarios:

Publicar un comentario

Deje aquí su comentario, si no puede comentar, pruebe a hacerlo desde otro navegador de red u otro equipo.