Vamos a procedes a la instalación de IIS en Windows Server con SSL mediante PowerShell.

Comenzaremos explicando que es IIS (Internet Information Services)  es un conjunto de servicios disponibles en Windows Server desde Windows NT, el cual nos permite convertir un equipo en un servidor web para internet  o una intranet, es decir, publicar páginas web.

La instalación será por comandos, para ello utilizaremos PowerShell, un Shell de comandos moderno que mejora y busca sustituir a CMD.

Se puede aplicar a una instalación tanto de Server Core como con interfaz gráfica.

Y posteriormente agregaremos la tecnología SSL a nuestra página web la cual nos permitirá cifrar el tráfico.

Si partimos  de una instalación limpia de Windows Server, en nuestro caso utilizaremos Windows Server 2022, lo primero que deberíamos hacer  es instalar la característica e importar el módulo.

Install-WindowsFeature -Name Web-Server -IncludeManagementTools

Import-Module -Name WebAdministration

Una vez haya finalizado la instalación podemos comprobar que se ha instalado correctamente y que dispone de la configuración predeterminada mediante los siguientes comandos

Get-PSProvider -PSProvider WebAdministration

Get-ChildItem -Path IIS:\

Get-ChildItem -Path IIS:\Sites

Get-ChildItem -Path IIS:\AppPools

Get-ChildItem -Path IIS:\SslBindings

Este comando nos proporcionara la información sobre nuestros IIS.

Una vez llegados a este punto podremos acceder a la pagina web desde cualquier cliente con un navegador compatible   mediante el puerto 80.

Si deseamos que nuestra pagina sea accesible desde el puerto 443, necesitaremos configurarar    nuestro servidor para proporcionar una transferencia segura de páginas web. Si está configurando IIS como un servidor web interno, debe usar una autoridad de certificación interna para crear el certificado del servidor web. Si su servidor web debe estar orientado a Internet, debe obtener un certificado de una autoridad de certificación pública. En este caso, en un entorno de prueba, utilizará certificados autofirmados.

Procedemos a crear un certificado autofirmado mediante el siguiente comando.

$Cert = New-SelfSignedCertificate -dnsName «WS22» `

                                  -CertStoreLocation cert:\LocalMachine\My `

                                  -KeyLength 2048 `

                                  -NotAfter (Get-Date).AddYears(1)

Y con el siguiente lo agregaremos a nuestro almacén de certificados raíz de confianza del servidor.

$x509 = ‘System.Security.Cryptography.X509Certificates.X509Store’

$Store = New-Object -TypeName $x509 -ArgumentList ‘Root’, ‘LocalMachine’

$Store.Open(‘ReadWrite’)

$store.Add($Cert)

$Store.Close()

Ahora vinculamos nuestro certificado a nuestro puerto 443.

New-WebBinding -Name «Default Web Site» -protocol https -port 443

A  continuación indicaremos al IIS que use el certificado autofirmado para cualquier tráfico HTTPS que llegue al sitio web predeterminado.

$Cert | New-Item -path IIS:\SslBindings\0.0.0.0!443

Ya podremos acceder desde cualquier dispositivo a nuestro servidor web tanto por el puerto 80 como el 443.

En este punto podremos modificar nuestros archivos HTML, agregar imágenes o GIF´s con total normalidad a la carpeta del IIS, que de forma predeterminada es «C:\inetpub\wwwroot».

 De forma predeterminada dispondremos de una página web muy básica la cual incluye enlaces a determinadas paginas de Microsoft, en mi caso para modificar la página web he utilizado el software HTTrack, un software de código abierto para descargar una pagina web de internet y cargarla en mi servidor para probar.

He descargado la propia pagina web de HTTrack y mediante el siguiente comando he copiado los archivos a la carpeta del IIS.

xcopy «C:\My Web Sites\Web» «C:\inetpub\wwwroot» /E

La instalación por comandos nos ofrece muchísimas ventajas, es más rápida y automatizada que una instalación por interfaz gráfica, por lo tanto si disponemos de un Windows Server Core es una opción a tener en cuenta.

Por otro lado opino que esta más orientada a un despliegue de prueba que otra cosa, ya que si quieres personalizar la instalación y hacer uso real del IIS es recomendable hacerlo desde interfaz gráfica.

Leave a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.