วิธีตรวจสอบ SSL Certificate หมดอายุบน IIS Windows Server 2022 ก่อนเว็บไซต์ล่ม
หนึ่งในสาเหตุที่ทำให้เว็บไซต์องค์กร เว็บขายสินค้าออนไลน์ และระบบภายในจำนวนมากหยุดให้บริการโดยไม่คาดคิด คือการปล่อยให้ SSL Certificate หมดอายุโดยไม่มีการตรวจสอบล่วงหน้า
เมื่อ SSL หมดอายุ ผู้ใช้งานจะพบข้อความเตือนความปลอดภัยจาก Browser ทันที เช่น
Your connection is not private
หรือ
NET::ERR_CERT_DATE_INVALID
ผลกระทบที่ตามมาอาจรุนแรงตั้งแต่การสูญเสียความน่าเชื่อถือ ไปจนถึงการสูญเสียรายได้จากลูกค้าที่ไม่กล้าใช้งานเว็บไซต์
บทความนี้จะสอนวิธีตรวจสอบวันหมดอายุของ SSL Certificate บน IIS Windows Server 2022 หลายรูปแบบ พร้อมวิธีตั้งระบบแจ้งเตือนล่วงหน้าอย่างมืออาชีพ
🔐 ทำไมต้องตรวจสอบวันหมดอายุ SSL
SSL Certificate ทุกประเภทมีวันหมดอายุ
เช่น
Let's Encrypt → 90 วัน
DV SSL → 1 ปี
OV SSL → 1 ปี
EV SSL → 1 ปี
เมื่อหมดอายุจะเกิดผลกระทบดังนี้
🚨 Browser แจ้งเตือนความปลอดภัย
ผู้ใช้ส่วนใหญ่จะออกจากเว็บไซต์ทันที
🚨 SEO อาจได้รับผลกระทบ
Google ให้ความสำคัญกับ HTTPS
🚨 ระบบ Login อาจทำงานผิดปกติ
โดยเฉพาะ SSO และ API
🚨 ลูกค้าเสียความเชื่อมั่น
กระทบภาพลักษณ์องค์กรโดยตรง
🖥️ วิธีที่ 1 ตรวจสอบผ่าน IIS Manager
เปิด
inetmgr
หรือ
IIS Manager
เลือกชื่อ Server
เปิด
Server Certificates
จะพบรายการ Certificate ทั้งหมด
พร้อมข้อมูล
Friendly Name
Issued To
Issued By
Expiration Date
นี่เป็นวิธีที่ง่ายที่สุด
🔍 วิธีที่ 2 ตรวจสอบผ่าน MMC
เปิด Run
mmc
เลือก
File
→ Add/Remove Snap-in
เลือก
Certificates
เลือก
Computer Account
เลือก
Local Computer
จากนั้นเปิด
Certificates
→ Personal
→ Certificates
จะเห็นวันหมดอายุทั้งหมด
⚡ วิธีที่ 3 ตรวจสอบผ่าน PowerShell
ดู Certificate ทั้งหมด
Get-ChildItem Cert:\LocalMachine\My
แสดงเฉพาะชื่อและวันหมดอายุ
Get-ChildItem Cert:\LocalMachine\My |
Select Subject, NotAfter
ตัวอย่างผลลัพธ์
Subject NotAfter
CN=comsiam.com 10/12/2027
CN=shop.comsiam.com 15/11/2026
📅 ตรวจสอบ Certificate ที่ใกล้หมดอายุ
ตัวอย่าง PowerShell
Get-ChildItem Cert:\LocalMachine\My |
Where-Object {
$_.NotAfter -lt (Get-Date).AddDays(30)
}
คำสั่งนี้จะแสดง
SSL ที่เหลืออายุน้อยกว่า
30 วัน
🚀 วิธีสร้างรายงาน SSL ทั้งหมด
Get-ChildItem Cert:\LocalMachine\My |
Select Subject,Issuer,NotAfter |
Export-Csv C:\SSLReport.csv -NoTypeInformation
ผลลัพธ์
C:\SSLReport.csv
สามารถเปิดด้วย Excel ได้ทันที
🌐 ตรวจสอบ SSL ของเว็บไซต์จาก Browser
เปิด
https://yourdomain.com
คลิก
🔒 รูปแม่กุญแจ
เลือก
Certificate
ตรวจสอบ
✅ วันหมดอายุ
✅ Issuer
✅ Domain Name
🔍 ตรวจสอบผ่าน Command Line
PowerShell
Invoke-WebRequest https://yourdomain.com
ใช้ร่วมกับ Script Monitoring ได้
📊 วิธีตรวจสอบหลายเว็บไซต์พร้อมกัน
ตัวอย่าง
$Sites = @(
"comsiam.com",
"shop.comsiam.com",
"server.comsiam.com"
)
นำไปใช้กับระบบ Monitoring ได้
เหมาะสำหรับองค์กรที่มีหลายโดเมน
🛡️ ตั้งแจ้งเตือน SSL หมดอายุ
วิธีที่ 1 ใช้ Task Scheduler
รัน PowerShell ทุกวัน
วิธีที่ 2 ใช้ PRTG
แจ้งเตือนอัตโนมัติ
วิธีที่ 3 ใช้ Zabbix
ตรวจสอบ SSL หลายร้อยเว็บไซต์
วิธีที่ 4 ใช้ Nagios
เหมาะกับองค์กรขนาดใหญ่
ทีมงาน comsiam มักตั้งแจ้งเตือนล่วงหน้า
60 วัน
30 วัน
7 วัน
ก่อนหมดอายุจริง
⚠️ สัญญาณว่า SSL ใกล้หมดอายุ
Browser Warning
Email จาก CA
Monitoring Alert
Event Log แจ้งเตือน
🔍 ตรวจสอบผ่าน Event Viewer
เปิด
eventvwr.msc
ไปที่
Windows Logs
→ Application
หรือ
Windows Logs
→ System
ค้นหา
Schannel
เพื่อตรวจสอบปัญหา SSL
❌ ปัญหาที่พบบ่อย
Certificate หมดอายุแล้ว
Browser แจ้ง Error
ต่ออายุแล้วแต่ยังขึ้นเตือน
Binding ยังชี้ไป Certificate เดิม
Intermediate Certificate หมดอายุ
แม้ตัวหลักยังไม่หมดอายุ
Load Balancer ใช้ Certificate เก่า
เกิดขึ้นบ่อยในระบบ HA
📋 SSL Monitoring Checklist
✅ ตรวจสอบทุกเดือน
✅ ตรวจสอบก่อนหมดอายุ 60 วัน
✅ Backup PFX ทุกครั้ง
✅ ตรวจสอบทุกโดเมน
✅ ตรวจสอบทุก Subdomain
✅ ตรวจสอบ Load Balancer
✅ ตรวจสอบ Reverse Proxy
🛡️ Best Practices
① ตั้งระบบแจ้งเตือนอัตโนมัติ
② ต่ออายุก่อนหมดอายุ 30 วัน
③ สำรองไฟล์ PFX
④ ตรวจสอบ Binding หลังต่ออายุ
⑤ ตรวจสอบจาก Browser จริง
⑥ ทดสอบทุกเว็บไซต์หลังต่ออายุ
ทีมงาน comsiam แนะนำให้รวมการตรวจสอบ SSL Certificate เข้าไปใน Daily Operations Checklist ของผู้ดูแลระบบ เพราะเป็นงานที่ใช้เวลาเพียงไม่กี่นาที แต่ช่วยป้องกันเหตุการณ์เว็บไซต์ล่มที่สร้างความเสียหายได้อย่างมาก
🎯 สรุป
การตรวจสอบวันหมดอายุของ SSL Certificate บน IIS Windows Server 2022 เป็นงานสำคัญที่ผู้ดูแลระบบไม่ควรมองข้าม เพราะ SSL ที่หมดอายุสามารถทำให้เว็บไซต์หยุดให้บริการ สูญเสียความน่าเชื่อถือ และส่งผลกระทบต่อธุรกิจได้ทันที
แนวทางที่ดีที่สุดคือใช้ PowerShell ร่วมกับระบบ Monitoring และตั้งแจ้งเตือนล่วงหน้าอย่างน้อย 30–60 วัน เพื่อให้มีเวลาต่ออายุและทดสอบระบบได้อย่างเพียงพอ ซึ่งเป็นแนวทางที่ทีมงาน comsiam ใช้ในการบริหารจัดการ Web Infrastructure และ IIS Server สำหรับองค์กรและเว็บไซต์ Production