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 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.
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