PowerShell'de SSL Sertifikasının Son Kullanma Tarihini Kontrol Edin
SSL (Güvenli Yuva Katmanı), sunucu ile istemci arasında şifreli bir bağlantı sağlayan ve bir web sitesi kimliğini doğrulayan dijital bir sertifikadır. Kullanıcıya özel verileri güvende tutmak ve kullanıcılara güven sağlamak için SSL sertifikasının geçerlilik süresinin kontrol edilmesi ve zamanı geldiğinde yenilenmesi çok önemlidir.
PowerShell'de, web sitesine HTTP web isteği yapmak ve onunla ilişkili tüm özellikleri ve sertifika ayrıntılarını almak için [Net.HttpWebRequest] öğesini kullanın. SSL sertifikasının son kullanma tarihini bulmanıza yardımcı olacaktır.
Bu yazımızda PowerShell'de SSL sertifikası son kullanma tarihinin nasıl alınacağını ele alacağız.
PowerShell SSL Sertifikasının Son Kullanma Tarihini Alın
.Net kitaplığı, ServicePoint nesnelerinin koleksiyonlarını yönetmek için [System.Net.ServicePoint] kitaplığı sağlar. ServicePointManager, internet kaynağı URI'si hakkındaki bilgileri içeren ServicePoint nesnesini döndürür.
Sunucu sertifikasını doğrulamak üzere geri aramayı almak veya ayarlamak için ServicePointManager.ServerCertificateValidationCallBack özelliğini kullanın.
Web sitesiyle ilgili SSL sertifikası ayrıntılarını almak ve PowerShell komut dosyasını kullanarak SSL sertifikası son kullanma tarihini çıkarmak için [Net.HttpWebRequest] kitaplığını kullanın.
SSL sertifikasının son kullanma tarihini kontrol etmek için aşağıdaki Windows PowerShell betiğini çalıştırın.
# Ignore SSL Warning
[Net.ServicePointManager]::ServerCertificateValidationCallback = { $true }
# Create Web Http request to URI
$uri = "https://google.com/"
$webRequest = [Net.HttpWebRequest]::Create($uri)
# Get URL Information
$webRequest.ServicePoint
# Retrieve the Information for URI
$webRequest.GetResponse() | Out-NULL
# Get SSL Certificate and its details
$webRequest.ServicePoint.Certificate
# Get SSL Certificate Expiration Date
$webRequest.ServicePoint.Certificate.GetExpirationDateString()
Yukarıdaki PowerShell betiğinde, web sitesi URI'sine HTTP web istekleri oluşturmak ve $webRequest< içindeki Adres, BağlantıAdı, Sertifika vb. gibi URI özelliklerini almak için [Net.HttpWebRequest]'i kullanır. değişken.
$webRequest.GetResponse(), URI'ye yönelik yanıtı alır ve SSL sertifikası ayrıntılarını, Sunucuyu, Başlıkları ve diğer ilgili bilgileri getirir.
$webRequest.ServicePoint.Certificate, veren kuruluş, tanıtıcı ve SSL sertifikası parmak izi gibi sertifika ayrıntılarını alır. PowerShell kullanan bir web sitesinin SSL son kullanma tarihini kontrol etmek için GetExpirationDateString() yöntemini kullanın.
Web sitesinin SSL sertifikasının son kullanma tarihini bulmak için yukarıdaki PowerShell betiğinin çıktısı:
PS D:\> $webRequest.GetResponse()
IsMutuallyAuthenticated : False
Cookies : {}
Headers : {X-XSS-Protection, X-Frame-Options, Cache-Control, Content-Type...}
SupportsHeaders : True
ContentLength : -1
ContentEncoding :
ContentType : text/html; charset=ISO-8859-1
CharacterSet : ISO-8859-1
Server : gws
LastModified : 31-01-2023 10:52:14
StatusCode : OK
StatusDescription : OK
ProtocolVersion : 1.1
ResponseUri : https://www.google.com/
Method : GET
IsFromCache : False
PS D:\> $webRequest.ServicePoint.Certificate.GetExpirationDateString()
03-04-2023 13:49:11
PS D:\>Harika İpucu: PowerShell'de sertifika ayrıntıları nasıl alınır?
Çözüm
Umarım PowerShell'de SSL sertifikası son kullanma tarihinin nasıl kontrol edileceğine ilişkin yukarıdaki makale size yardımcı olur.
PowerShell Active Directory komutları ve PowerShell temelleri hakkında daha fazla konuyu ShellGeek ana sayfasında bulabilirsiniz.
