How to configure HTTPS in IIS Windows Server via PowerShell

Cara konfigurasi HTTPS di IIS Windows Server melalui PowerShell

Untuk konfigurasi HTTP melalui PowerShell bisa baca disini https://nciptandani.blogspot.com/2019/06/cara-konfigurasi-web-server-iis-di.html

Untuk membuat server CA dan webserver sertifikat template

Kemudian dari webserver sertifikat template tersebut bisa digunakan untuk membuat sertifikat, bisa melalui MMC -> Certificates -> Local computar -> Personal -> klik kanan ceritificates -> All tasks ->  request new certificate -> next -> pilih webserver template yang sudah dibuat -> kemudian isi informasi seperti common name, subject alternative name dengan benar.

Sertifikat yang akan dipasang dengan format PFX, file sertifikat PFX ini bisa didapatkan dari server CA. Cara export PFX dari windows server CA https://www.youtube.com/watch?v=m157RGX6S1g

Kemudian import sertifikat tersebut ke server IIS

# buat varibel password untuk menyimpan password dari file sertifikat PFX

PS C:\Users\Administrator> $Password = ConvertTo-SecureString -AsPlainText -Force "P@ssw0rd" 

# import ke [Cert:\LocalMachine\My]
# pada GUI bias dicek melalui MMC -> [Certificates - Local Computer] - [Personal]

PS C:\Users\Administrator> Import-PfxCertificate -FilePath C:\Users\Administrator\window.id.pfx -CertStoreLocation Cert:\LocalMachine\My -Password $Password 

Untuk melihat sertifikat yang terimport

Get-ChildItem Cert:\LocalMachine\My 

Setelah sertifikat berhasil diimport di server IIS maka selanjutnya akan konfigurasi IIS untuk menggunakan sertifikat tersebut.

# konfirmasi sertifikat

PS C:\Users\Administrator> Get-ChildItem Cert:\LocalMachine\My 

   PSParentPath: Microsoft.PowerShell.Security\Certificate::LocalMachine\My

Thumbprint                                Subject
----------                                -------
228940060FF922175C2F435A135FD1CB26FC3A84  CN=window.id

# menampung sertifikat di sebuah variabel $Cert

PS C:\Users\Administrator> $Cert = Get-ChildItem 

Cert:\LocalMachine\My\228940060FF922175C2F435A135FD1CB26FC3A84 

PS C:\Users\Administrator> Get-Website 

Name             ID   State      Physical Path                  Bindings
----             --   -----      -------------                  --------
Default Web Site 1    Started    %SystemDrive%\inetpub\wwwroot  http *:80:
window.id   2    Started    C:\inetpub\wwwroot\newsite     http *:80:window.id

# set SSL Binding to [window.id] site

PS C:\Users\Administrator> New-WebBinding -Name "window.id" -IPAddress "*" -HostHeader "window.id" -Port 443 -Protocol https 

# set $Cert to SSL Binding

PS C:\Users\Administrator> New-Item IIS:\SslBindings\0.0.0.0!443!window.id -Value $Cert 

PS C:\Users\Administrator> Get-Website 

Name             ID   State      Physical Path                  Bindings
----             --   -----      -------------                  --------
Default Web Site 1    Started    %SystemDrive%\inetpub\wwwroot  http *:80:
window.id   2    Started    C:\inetpub\wwwroot\window     http *:80:window.id
                                                                https *:443:window.id sslFlags=0
# verifikasi akses
# jika self signed certificate, tambahkan opsi [-k] (--insecure) 

PS C:\Users\Administrator> curl.exe https://window.id



Komentar

Postingan populer dari blog ini

Pembahasan IT Network Systems Administration Module A DNS (Forward Zone, Reverse Zone, CNAME, MX, Split View)

Cara restart / stop windows service (services.msc) dengan bat / cmd

How to convert VMDK to OVA