خطاهای SSL چیست و چطور آنها را رفع کنیم؟
استفاده از گواهینامه SSL به جلب اعتماد مشتریان کمک میکند، اما مشاهده خطاهای SSL در سایت باعث از دست رفتن اعتماد کاربران و در نتیجه ترک سایت شما میشود. از دست دادن اعتماد مشتریان تنها یکی از پیامدهای منفی خطاهای SSL است که میتواند به کاهش فروش و آسیب به شهرت برند شما منجر شود. اگر در سایت خود این خطاها را مشاهده کردید هر چه زودتر به فکر رفع آن باشید.
در این مقاله، به بررسی دلایل خطاهای SSL میپردازیم و سپس گام به گام شما را با روشهای مختلف برای رفع این خطاها آشنا میکنیم. با رفع خطاهای SSL و برقراری یک اتصال امن، میتوانید وبسایت خود را دوباره به محیطی قابل اعتماد برای مشتریان تبدیل کنید و از ریزش آنها جلوگیری کنید.
گواهینامه SSL چیست؟
SSL که مخفف Secure Sockets Layer و به معنای لایه سوکتهای امن است یک فناوری امنیتی استاندارد بوده که یک ارتباط رمزگذاری شده بین سرور وب و مرورگر ایجاد میکند. این رمزگذاری تضمین میکند که تمام دادههای رد و بدل شده بین سرور وب و مرورگر، محرمانه و یکپارچه باقی میمانند و اطلاعات حساس را از دست هکرها محافظت میکنند. این پروتکلها از الگوریتمهای پیچیده برای رمزگذاری دادههای حساس منتقل شده از طریق شبکه استفاده میکنند. به این ترتیب، کل تبادل بین کلاینت و سرور خصوصی میماند.
TLS یا همان Transport Layer Security نیز یک پروتکل امنیتی و نسخه امنتر و جانشین SSL است. امروزه، همه SSLها بر اساس پروتکل TLS هستند، اما SSL اصطلاح شناخته شدهتری است.
انواع خطاهای SSL Certificate
خطاهای SSL یکی از انواع خطاهای سایت است که به دلیل مشکل گواهی وب سایت یا نحوه پیکربندی آن در سرور به وجود میآیند. اگر مرورگر شما قادر به برقراری ارتباط امن با یک وب سایت نباشد، پیغام خطای خاصی نمایش داده میشود که در ادامه آنها را آوردهایم.
⚠️ خطای Mixed content
یکی از انواع خطاهای SSL رایج است که به عنوان محتوای ناامن نیز شناخته میشود، زمانی رخ میدهد که برخی از قسمتهای سایت به درستی لود نمیشوند. برای مثال آدرس یکی از تصاویر شما همچنان htttp است. برای رفع این مشکل، از افزونهای مانند Really Simple SSL برای تغییر همه URLها به https استفاده کنید.
مرورگر شما این پیام خطا را زمانی نمایش میدهد که سایتی که سعی در دسترسی به آن دارید دارای محتوای ناامن باشد. این معمولاً زمانی اتفاق میافتد که یک گواهینامه SSL نصب میکنید و سایت خود را برای کار با HTTPS پیکربندی میکنید.
محتوای مختلط ممکن است به دلیل منابع خارجی ناامن یا فایلهایی باشد که هنوز با HTTP درخواست میشوند. برنامههایی مانند وردپرس ممکن است URLها را با HTTP در داخل افزونهها و قالبها کدگذاری کنند. در چنین حالتی، مرورگر شما آنها را به عنوان محتوای مختلط میبیند و قفل را نمایش نمیدهد.
⚠️ ارور Certificate name mismatch
خطای Mismatch نام زمانی رخ میدهد که نام دامنه ذکر شده در گواهینامه SSL با URL که سعی در دسترسی به آن دارید مطابقت نداشته باشد. در واقع زمانی رخ میدهد که نام مشترک (Common Name) یا SAN گواهینامه (Subject Alternative Name) با نام دامنهای که در مرورگر وارد شده تطابق ندارد. این خطا به این دلیل رخ میدهد که گواهی امنیتی در ابتدا برای نام دامنه دیگری (یا یک زیر دامنه) صادر شده باشد. گاهی اوقات، اگر SSL شما روی yourdomain.com نصب شده باشد، ممکن است برای www آن فعال نشده باشد و در نتیجه این خطا ظاهر میشود.
⚠️ خطای SSL certificate not trusted
یکی از انواع خطاهای SSL است که نشان میدهد که گواهی SSL توسط شرکتی امضا یا تأیید شده است که مرورگر به آن اعتماد ندارد. این بدان معناست که یا شرکت، که به عنوان مرجع صدور گواهی (CA) شناخته میشود، در لیست داخلی مرورگر از ارائه دهندگان گواهی معتبر نیست یا اینکه گواهی توسط خود سرور صادر شده است. گواهیهای صادر شده توسط سرور اغلب به عنوان گواهیهای خود امضا شناخته میشوند.
⚠️ خطای Expired certificate
این خطا زمانی رخ میدهد که گواهی SSL سایت منقضی شود. طبق استانداردهای صنعت، گواهینامههای SSL نمیتوانند طول عمر بیش از 398 روز داشته باشند. این بدان معناست که هر وب سایتی باید حداقل هر دو سال یک بار گواهینامه SSL خود را تمدید یا جایگزین کند. در غیر این صورت، هنگام تلاش برای بارگیری سایت، این خطا را مشاهده خواهید کرد.
⚠️ خطای SSL Certificate Revoked Error
یکی از خطاهای SSL است و زمانی رخ میدهد که مرجع صدور گواهی دیجیتال (CA) گواهی SSL یک دامنه خاص را باطل یا لغو کرده باشد. CA ممکن است در صورت مشاهده هرگونه نشانهای از به خطر افتادن کلید خصوصی گواهی، آن را باطل کند. همچنین اگر دامنهای که گواهینامه SSL برای آن صادر شده است فعال نباشد، گواهی نامعتبر میشود. گواهیهای باطل شده در لیست ابطال گواهی (CRL) ذخیره میشوند. اگر مرورگر گواهی را در این لیست پیدا کند، خطای SSL نمایش میدهد.
⚠️ ارور Domain name mismatch
یکی از انواع SSL Error Code است و زمانی رخ میدهد که مرورگر سایتی را با نام دامنه صحیح باز نمیکند. برای رفع این مشکل، یک گواهینامه SSL از یک CA معتبر خریداری کنید.
⚠️ ارور SSL handshake failed
خطای SSL handshake یا Error 525 زمانی رخ میدهد که مرورگر و سرور قادر به ایجاد یک اتصال امن نیستند. این خطا ممکن است به دلایل مختلفی اتفاق افتد که عبارتند از:
- تاریخ یا زمان نادرست
- پیکربندی نادرست مرورگر
- گواهی منقضی شده
- استفاده از VPN
- عدم تطابق پروتکل
برای رفع این مشکل، مطمئن شوید که گواهی فعال و به روز شده است و تاریخ و زمان آن صحیح است. همچنین، اگر VPN شما روشن است آن را خاموش کنید.
نکته: اگر از سیستم مدیریت محتوای وردپرس استفاده میکنید ممکن است با انواع خطاهای وردپرس مانند خطاهای 500، انواع خطای 400، برقراری ارتباط با پایگاه داده و غیره روبرو شده باشید که برای رفع هر کدام یک راهکار نیاز دارید.
⚠️ خطای Generic SSL Protocol Error
خطای پروتکل SSL عمومی err_ssl_protocol_error میتواند دلایل مختلفی داشته باشد. گاهی اوقات تنظیمات مرورگر یا افزونهها مانع از برقراری ارتباط امن میشوند. در مواردی دیگر، مشکل از نصب نادرست SSL روی سرور است.
- مشکلات مربوط به مرورگر (تنظیمات یا افزونهها)
- نصب نادرست SSL روی سرور یا امضای نامعتبر گواهی
- امضای نامعتبر گواهی یا منقضی شده
- استفاده از الگوریتمهای رمزگذاری قدیمی
- تداخل فایروال با اتصال SSL
- مشکل در زنجیره اعتماد گواهی
چطور خطاهای SSL را در انواع مرورگر رفع کنیم؟
در ادامه راهکارهایی برای رفع خطای SSL در گوگل کروم و سایر مرورگرها آوردهایم.
✔️ تأیید نصب گواهینامه SSL در وب سایت
قبل از عیب یابی خطای SSL، باید مطمئن شوید که وب سایت شما SSL نصب شده است. یک راه ساده برای انجام این کار این است که از طریق مرورگر خود به وب سایت خود دسترسی پیدا کنید و به نوار آدرس نگاه کنید. اگر وب سایت شما دارای گواهینامه SSL نصب شده باشد، URL باید با https:// به جای http:// شروع شود. همچنین ممکن است یک نماد قفل را مشاهده کنید که نشان میدهد اتصال ایمن است.
✔️ تشخیص مشکل با ابزارهای آنلاین
در مرحله بعد، از یک ابزار آنلاین برای شناسایی مشکلی استفاده کنید که خطای گواهینامه SSL در سایت شما ایجاد کرده است. میتوانید از ابزاری مانند SSL Checker، SSL Certificate Checker یا SSL Server Test استفاده کنید که تأیید میکند گواهینامه SSL نصب و منقضی نشده، نام دامنه به درستی در گواهی ذکر شده است و موارد دیگر. برای استفاده از این ابزار، کافیست آدرس سایت خود را در نوار جستجو کپی و جایگذاری کنید. تا نتایجی مانند تصویر زیر به شما نشان دهد.
✔️ نصب مجدد SSL
حتی اگر قبلاً SSL را برای وب سایت خود نصب کرده باشید، ممکن است دسترسی به آن از طریق یک اتصال HTTPS امن با شکست مواجه شود. در نتیجه، مرورگر شما ممکن است هشداری مبنی بر اینکه گواهینامه SSL توسط یک مرجع معتبر صادر نشده است، ارائه دهد. در بیشتر موارد، این مشکل با نصب مجدد SSL حل میشود. در Site Tools > Security > SSL Manager پس از ورود به ابزار، SSL ایجاد کننده مشکل را حذف کرده و دوباره آن را نصب کنید.
✔️ استفاده از گواهی واسطه
برای رفع خطاهای SSL اگر مرورگری دارید که گواهینامه SSL وب سایت شما را اعمال نمیکند، ممکن است لازم باشد گواهی را از یک مرجع صدور گواهی ریشه معتبر نصب کنید. این به مرورگر کمک میکند تا حضور CA را در زنجیره اعتماد تأیید کند و یک هشدار (یا به طور دقیقتر یک خطا) صادر کند.
✔️ ارتقا به آدرس IP اختصاصی
معمولا یک وب سایت، آدرس IP مخصوص به خود را دارد. اما اگر از یک نوع میزبانی وب غیر از هاست اختصاصی استفاده کنید، ممکن است یک آدرس IP را با چندین سایت دیگر به اشتراک بگذارد. اگر یکی از آن وبسایتها گواهینامه SSL را نصب نکرده باشد، ممکن است مرورگر نداند که باید از کدام سایت بازدید کند و پیام خطای نام ناسازگاری را نمایش دهد. برای حل این مشکل، میتوانید سایت خود را به یک آدرس IP اختصاصی ارتقا دهید.
✔️ تغییر همه URLها به HTTPS
یکی از راههای رفع ارورهای اس اس ال، تغییر همه URL های سایت است. اگر در یکی از صفحات وب خود خطای Missed Content دریافت کردید، میتوانید URL را در سایت WhyNoPadLock.com کپی و جایگذاری کنید تا عناصر ناامن را شناسایی کنید. پس از شناسایی عناصر، کد منبع صفحه را ویرایش کنید و URL محتوای نا امن را به HTTPS تغییر دهید. یکی دیگر از راههای شناسایی این محتواها این است که روی صفحه موردنظر کلیک راست کرده و گزینه inspect را بزنید و با جستجوی کلمه http محتوایی که URL آن رمزنگاری نشده را پیدا کنید.
✔️ تمدید گواهینامه SSL
برای رفع خطای SSl در مرورگر کروم، اگر گواهی SSL شما منقضی شده است، باید فوراً آن را تمدید کنید. مراحل فرآیند تمدید بسته به میزبان وب یا ارائه دهنده گواهی SSL که استفاده میکنید متفاوت است، اما هر میزبان وب دستورالعملهای کمی متفاوت برای دنبال کردن خواهد داشت. باید یک CSR ایجاد کنید و آن را به صورت دستی نصب کنید، یک گواهی جدید درخواست کنید و آن را فعال کنید.
✔️ به روز رسانی نسخه مرورگر یا سیستم عامل
Let’s Encrypt اخیراً گواهیهای خود را ارتقا داده است و گواهیهای جدید دیگر از نسخههای قدیمیتر سیستم عامل و مرورگر پشتیبانی نمیکنند. SSLهای جدید الزامات سیستم عامل به روز شدهای دارند که ممکن است مانع از نمایش صحیح وب سایتهای امن Let’s Encrypt شوند. بنابراین برای رفع خطای SSl در مرورگر کروم یا سایر مرورگرها بهتر است آنها را به روزرسانی کنید.
✔️ درخواست گواهینامه SSL جدید
اگر هنوز در تلاش برای رفع خطای SSL در سایت خود هستید، ممکن است SSL شما به درستی نصب نشده باشد. بنابراین، ممکن است برای حل مشکل نیاز به ایجاد درخواست امضای گواهی جدید داشته باشید.
✔️ دریافت گواهی Wildcard SSL
در نهایت، اگر هنوز هم خطاهای SSL را مشاهده میکنید، ممکن است نیاز باشد گواهی Wildcard SSL دریافت کنید. Wildcard SSL نه تنها SSL را برای دامنه Root شما فعال میکند، بلکه زیر دامنههای آن را نیز پوشش میدهد،
روشهای رفع خطای SSL در اندروید
- تاریخ و زمان را در دستگاه Android خود تصحیح کنید.
- دادهها و کش مرور را در کروم پاک کنید.
- اتصال WiFi را تغییر دهید.
- آنتی ویروس را به طور موقت غیرفعال کنید.
- دستگاه اندروید خود را بازنشانی کنید.
- وبسایت در Incognito/Private باز کنید
- مرورگر خود را به روزرسانی کنید.