MainMind

True & racing de norte a sur


Hyper-V sobre Windows 10 / Server

Si necesitamos instalar en nuestro equipo máquinas virtuales, este debe cumplir los requisitos mínimos:

  • Procesador de 64 bits con SLAT
  • CPU con VT-x para Intel, AMD-V, VIA-VT... según corresponda
  • 4 GB de RAM

Además de estar presentes, deben estar habilitadas en la BIOS del equipo la virtualización (varía según fabricante) y la Prevención de ejecución de datos por hardware (DEP), es recomendable actualizar a la última versión disponibles del fabricante igualmente.

En el caso de no estar habilitado en la BIOS aparecerá el mensaje:

No se puede instalar Hyper-V: la compatibilidad con la virtualización esta deshabilitada en el firmware

 

En este ejemplo lo haremos en una Workstation de HP, el proceso es similar para otros fabricantes:

Aprovechando que estamos en la BIOS, comprobamos que tengamos habilitados todos los hilos para el procesador:

 

Ejecutando el comando "systeminfo" sobre PowerShell o el símbolo del sistema podemos comprobar en las últimas lineas si nuestro equipo esta preparado. Si aparece el siguiente mensaje, ya tienes Hyper-V instalado:

Hyper-V Requirements: A hypervisor has been detected. Features required for Hyper-V are not be displayed.

 

Nombres de servicios en Windows

En ocasiones las traducciones de algunos servicios de Inglés a Español en los nombres de los servicios de windows, tanto para servidores como para clientes son algo... peculiares y no siempre se ajustan... podemos contrastarlos con los nombres cortos. Mediante PowerShell sacamos el listado completo:

Get-Service | Sort-Object -Property DisplayName | Format-Table DisplayName, Name -AutoSize 

En el caso de necesitar conocer que servicio, programa, proceso... tiene abierto un fichero determinado, podemos recurrir a la herramienta Process Explorer, pulsamos sobre "Find -> Find Handle or DLL..." con el nombre del fichero.

Una vez encontrado desde las propiedades podemos ver si tiene algún servicio asociado.

CRL: Lista de revocación de certificados

En ocasiones debemos configurar el acceso interno y externo a las listas de revocación de certificados con Entidades de Certificación de confianza, habitualmente autoemitidas. Si hemos comprado un certificado, estas estarán disponibles y no tendremos ente problema seguramente. En otros casos en los que obtenemos errores indicando que no es posible acceder a la lista de revocación de certificados (CRL), debemos comprobar:

  • El dominio en el que se publica esta accesible dentro de la red interna y desde fuera de ella.
  • Podemos navegar y acceder a la lista CRL via web
  • No aparecen errores relacionados en la Autoridad de certificación

Desde cualquier equipo con Windows esta disponible en la linea de comandos "certutil" en la que debemos añadir el parámetro con la URL que queramos verificar:

certutil -URL "http://ejemplo.mainmind.com:8682/CertEnroll/CA%20nombre%20compuesto.crl"

Seleccionamos el certificado CER y recuperamos las direcciones web del CRL, en este caso vemos que pese a poder navegar y acceder no es posible acceder...

Después de comprobar todos los pasos, activamos temporalmente la visualización/listado del servidor que contine los CRL y nos encontramos por fin con el error! El nombre de la CA con la que se publican es demasiado largo y con espacios, por lo que con la seguridad predeterminada de IIS no es posible acceder.

Es posible deshabilitar en la aplicación de IIS esta verificación, pero no es una práctica de seguridad recomendada. Por lo que otra opción sencilla sería acortar el nombre desde la CA en la configuración de extensiones, por ejemplo: "http://ejemplo.mainmind.com/listado.crl"

Volvemos a emitir e instalar el certificado, en el que aparecerá la nueva CRL y volvemos a verificar con certutil, ahora sin problemas de acceso:

 

 

Forzar redirección web HTTPS con IIS

En breve el navegador Chrome de Google mostrará las webs sin certificados mensajes de advertencia, además de relegarlos en su motor de búsqueda... para forzar desde Internet Information Server la redirección de toda las URLs debemos añadir en el archivo web.config:

<system.webserver>
    <rewrite>
      <rules>
        <rule name="Forzar HTTPS" enabled="true">
          <match url="(.*)" ignoreCase="true" />
          <conditions>
            <add input="{HTTPS}" pattern="off" />
          </conditions>
          <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" appendQueryString="true" redirectType="Permanent" />
        </rule>
      </rules>
    </rewrite>
<system.webserver>

 

Utilidades gratuitas para facilitar la emisión e instalación de certificados sobre IIS:

 

Forzar sincronización Azure AD Connect

El tiempo mínimo programable para la sincronización entre un entorno local y cloud dentro de las capacidades actuales de Azure Active Directory Connect es de 30 minutos, en ocasiones necesitaremos replicar de manera urgente cambios antes de este tiempo.

Nos aseguraremos de tener el modulo de sincronización con el comando: "Import-Module ADSync" y consultamos la configuracióna actual "Get-ADSyncScheduler".

El comando "Start-ADSyncSyncCycle Delta" fuerza la sincronización entre el AD local y el Azure AD, realiza la comparación de ambos y solo realiza la actualización de los cambios (DELTA)

Es posible realizar una sincronización completa (FULL) con el comando: 

Start-ADSyncSyncCycle -PolicyType Initial

lo que en algunos escenarios puede llegar a demorarse dependiendo del número de objetos.