Python ile SSL Sertifikalarının Süresi Dolmuş mu? – Eğlenceli Bir Yolculuk
Merhaba kod meraklıları! Bugün SSL sertifikalarının süresi dolmuş mu dolmamış mı, bunu kontrol eden basit ve eğlenceli bir Python kodu yazacağız. Hazır mısınız? Hadi başlayalım!
İnternetin kapı bekçileri: SSL sertifikaları
SSL sertifikaları internetin kapı bekçileri gibidir. Bu küçük dijital belgeler tarayıcınızın ve web sitenizin güvenli bir şekilde iletişim kurmasını sağlar. Sertifikaların süresi dolarsa ne olur? Burada Python devreye giriyor. Hazır olun, salıyorum kobrayı 🐍
Python ile macera başlıyor
Python ile bir SSL sertifikasının bitiş tarihini kontrol etmek, bir atom reaktörünü çalıştırmak kadar basittir. İşte nasıl yapılacağını gösteren kod:
import ssl
import socket
from datetime import datetime
def get_ssl_expiry_date(hostname):
context = ssl.create_default_context()
with socket.create_connection((hostname, 443)) as sock:
with context.wrap_socket(sock, server_hostname=hostname) as ssock:
ssl_info = ssock.getpeercert()
expiry_date_str = ssl_info['notAfter']
expiry_date = datetime.strptime(expiry_date_str, '%b %d %H:%M:%S %Y %Z')
return expiry_date
def check_ssl_expiry(hostname):
try:
expiry_date = get_ssl_expiry_date(hostname)
now = datetime.utcnow()
days_left = (expiry_date - now).days
return f"SSL certificate for {hostname} expires on {expiry_date}. Days left: {days_left}"
except Exception as e:
return f"An error occurred: {e}"
# Kullanım
hostname = 'kertenkerem.net'
print(check_ssl_expiry(hostname))
Kodun anatomisi
SSL ve Socket kütüphaneleri: ssl ve socket kütüphaneleri, Python’da güvenlik büyüleri yapmanızı sağlar. Bir tür Harry Potter değneği gibi düşünebilirsiniz!
Bağlantı kurma: Bir domain’e bağlanıp SSL sertifikasını alıyoruz. Sanki bir kapıyı çalıp “Hey, bana kim olduğunu göster!” demek gibi.
Sertifika bilgilerini alma: Kapı açıldığında bize sertifikasını gösteriyor. Biz de bu sertifikadan bitiş tarihini öğreniyoruz.
Bitiş tarihini kontrol etme: Sertifikanın ne zaman sona ereceğini öğrenip kaç gün kaldığını hesaplıyoruz.
Eğlenceli bir örnek
Bir kafe işlettiğinizi ve kahve makinenizin servis tarihini kontrol etmek istediğinizi düşünün. Bu kez kahve makinesi yerine SSL sertifikalarını kontrol ediyoruz. Kodumuz da kahve makinesi gibi çalışıp “Bu sertifikanın süresi şu tarihte dolacak. Servis zamanı!” diyor.
hostname = 'kertenkerem.net'
print(check_ssl_expiry(hostname))
Bu satırı çalıştırdığınızda domain’in SSL sertifikasının ne zaman sona ereceğini ve kaç gün kaldığını görürsünüz.
Sonuç
Gördüğünüz gibi Python ile SSL sertifikalarının bitiş tarihini kontrol etmek hem basit hem eğlenceli olabilir. Kendi kapı bekçilerinizi kontrol edin ve her zaman güvende kalın. Kodlamaya devam edin!
Happy coding!