برای تأکید بر اهمیت رمزنگاری اطلاعات حساس، مرورگر کروم (از ژانویه ۲۰۱۷) هر زمانی که وبسایتی برای دادههای مستعد و اطلاعاتی از قبیل فرمها، رمزگذاری را انجام نمی دهد، هشداری در کنار نوار آدرس نمایش می دهد.
چگونه سوییچ کنیم؟
اگر واقعاً تصمیم به تغییر دارید، برای اطمینان از اینکه وب سایت شما سالم کار می کند چند نکته را باید مد نظر داشته باشید.اگر سایت شما وردپرسی هست حتما مقاله آموزش ریدایرکت وبسایت وردپرسی به https را مطالعه کنید.
- باید تمام لینک های داخلی خود را تغییر دهید. این به معنای به روز رسانی لینک ها به asset ها (در صورت لزوم) است. مطمئن شوید که همه تغییرات لازم را در بخش های مختلف مانند تم، CSS و فایل های جاوا اسکریپت انجام داده اید. علاوه بر این، می توانید تمام لینک های خود را برای شروع به https: // تغییر دهید که URL های Relative را ایجاد می کند.
- اطمینان از اینکه CDN شما SSL را به خوبی پشتیبانی می کند. بیشتر CDN های معتبر امکان تنظیم SSL زیردامنه ها را نیز می دهند.
- سطوح مختلفی از SSL وجود دارد که هر کدام جوانب مثبت و منفی خود را دارند. برای کسب اطلاعات بیشتر در مورد سطوح و مدل های مختلف SSL پیشنهاد می کنیم این مقاله را به دقت بخوانید.
- مطمئن شوید که لینک Canonical را در <head> وب سایت دارید تا به درستی تمام ترافیک ورودی را از http: // به https: // هدایت کند.
تاثیر انتقال به HTTPS بر رتبه سایت
انتقال از HTTP به HTTPS می تواند رتبه سایت را کمی تحت تأثیر قرار دهد. با تغییر به پروتکل HTTPS، رتبه بندی سایت شما در طول زمان بهبود خواهد یافت. گوگل در سال ۲۰۱۴ اعلام کرد که داشتن گواهی SSL عامل مثبت رتبه بندی وباعث بهینهسازی سئو محسوب میشود بنابراین ارزش سرمایه گذاری دارد.
برای اینکه Googlebot بتواند بعد از سوییچ کردن شما، هر چه سریعتر وبسایت شما را مجدداً ایندکس کند، اطمینان حاصل کنید که در طول ساعات کم ترافیک به https: // سوییچ کنید. به این ترتیب Googlebot می تواند بیشتر از منابع سرور شما استفاده کند.
به این نکته توجه داشته باشید که برای یک وب سایت متوسط ممکن است به دست آوردن رتبه کمی طول بکشد. در صورت داشتن Site map، گوگل بات ممکن است حتی سریعتر بتواند وبسایت شما را دوباره رصد کرده و ایندکس کند.
- آموزش ریدایرکت کردن سایت به https و تاثیر آن بر سئوی سایت
- راهنمای ساده نصب گواهینامه SSL در سایت وردپرس
راه اندازی HTTPS و SSL بر روی سرور
به طور کلی، سرویس دهنده های میزبانی وب، خدماتی دارند که اجازه می دهد شما HTTPS/order a certificate را فعال کنید. چند نوع محدود از گواهی برای انتخاب وجود دارد که بسته به نیاز وب سایت شما، امکانات و قیمت های متنوعی دارد.
اگر وب سرور را خودتان اجرا و مدیریت می کنید، قبل از استفاده از گواهی SSL، چند چیز وجود دارد که باید در پیکربندی سرور خود فعال کنید.
- پرشین تولز در راستای برقرای ارتباط امن کاربر و وب سایت با همکاری شرکتهای اروپایی اقدام به فروش گواهینامه SSL برای وب سایتهای ir یا دامنه های gtld می کند.
تایید OCSP
بررسی اعتبار گواهی SSL می تواند باعث کاهش سرعت بارگذاری شود. برای غلبه بر این مشکل، می توانید از تایید OCSP استفاده کنید. تایید OCSP یک ویژگی است که سرور را قادر می کند یک کپی از پاسخ فروشنده گواهی را هنگام چک کردن گواهینامه SSL دانلود کند. به این ترتیب هنگامی که یک مرورگر به سرور متصل می شود، اعتبار گواهی را به جای درخواست از فروشنده آن، بر اساس کپی موجود در سرور بررسی می کند که موجب بهبود قابل توجه عملکرد می شود.
Apache
قبل از اینکه تایید OCSP را در سرور Apache خود فعال کنید، با استفاده از دستور apache2 –v یا httpd -v در Command Line ، چک کنید که در سرور خود نسخه ۲٫۳٫۳ Apache یا بالاتر را اجرا می کنید. نسخه های پایین تر Apache این ویژگی را پشتیبانی نمی کنند.
در زمان تنظیم HTTPS روی سرور ، باید پیکربندی Virtual Host را که به طور خاص برای استفاده ازHTTPS / SSL ساخته شده است، داشته باشید.
در فایل فوق، مراحل زیر را انجام دهید:
- در قسمت <VirtualHost></VirtualHost> باید SSLUseStapling on را اضافه کنید.
- فقط بالای <VirtualHost></VirtualHost> کد زیر را اضافه کنید:
SSLStaplingCache shmcb:/tmp/stapling_cache (128000) - با اجرای apachectl -t بررسی کنید که تغییرات انجام شده اعتبار داشته باشد. در نهایت Apache با دستور زیر Reload کنید:
service apache2 reload
Nginx
Nginx نیز از تایید OCSP پشتیبانی می کند. قبل از ویرایش پیکربندی سرور، با اجرای دستور nginx -v در Command Line چک کنید که در سرور خود، نسخه ۱٫۳٫۷ Nginx یا بالاتر را اجرا می کنید. نسخه های پایین تر Nginx این ویژگی را پشتیبانی نمی کنند.
در زمان سوییچ به HTTPS روی سرور خود، باید پیکربندی Nginx که مخصوص استفاده از HTTPS / SSL است را استفاده کنید.
در فایل فوق، خطوط زیر را در بخش server {} اضافه کنید:
;ssl_stapling on ;ssl_stapling_verify on ;ssl_trusted_certificate /etc/ssl/private/ca-certs.pem
آخرین خط، اشاره به فایل حاوی لیستی از گواهینامه معتبر CA دارد. این فایل برای تأیید گواهی های کاربران، هنگام استفاده از OCSP استفاده می شود.
پس از اضافه کردن این خطوط به فایل، با اجرای service nginx configtest، بررسی کنید که تغییرات انجام شده مشکلی نداشته باشد. در نهایت Nginx را دوباره با اجرای دستور زیر Reload کنید:
service nginx reload
هدر Strict Transport Security
(Strict Transport Security Header (HSTS یکی دیگر از ویژگی های مفیدی است که مرورگرها را به استفاده از HTTPS به جای HTTP وا می دارد. فعال کردن این ویژگی بدون عوارض خواهد بود.
Apache
اگر شما Apache را اجرا می کنید، ابتدا ماژول Apache Headers را با استفاده از هدرهای a2enmod headers فعال کنید. پس از این، تنها باید خط زیر به VirtualHost (در قسمت <VirtualHost></VirtualHost>) که قبلاً برای HTTPS تنظیم کرده اید، اضافه شود:
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains" Apache را مجدداً Reload کنید.
Nginx
Nginx از شما می خواهد خط زیر را در قسمت server {} فایل پیکربندی سرور خود وارد کنید:
add_header Strict-Transport-Security max-age=31536000;
تست
برای امتحان اینکه آیا گواهی SSL شما به درستی کار می کند یا خیر، به آزمایشگاه های SSL با لینک زیر سر بزنید، نام دامنه خود را وارد کنید و ببینید چه نمره ای دریافت می کنید.
https://www.ssllabs.com/ssltest/
تغییر مسیر URL ها
برای اطمینان از اینکه درخواست به درستی به آدرس HTTPS هدایت می شود، باید یک خط اضافی را به پیکربندی تان اضافه کنید. به این ترتیب، کاربری که سعی در بازدید از وب سایت شما از طریق HTTP دارد، به طور خودکار به HTTPS هدایت می شود.
Apache
در پیکربندی پیش فرض VirtualHost (همانگونه که برای درخواستهای HTTP مورد استفاده قرار می گرفت)، برای اطمینان از اینکه URL ها به درستی هدایت می شوند، موارد زیر را اضافه کنید:
RewriteEngine On RewriteCond %{HTTPS} off [RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
با دیگر تغییراتی که قبلا انجام دادیم، فراموش نکنید Apache را Reload کنید!
Nginx
در Nginx، فایل پیکربندی پیش فرض را که برای درخواست HTTP مورد استفاده قرار می گرفت به صورت زیر تغییر دهید:
} server ;listen 80 ;server_name your-site.com www.your-site.com ;return 301 https://your-site.com$request_uri {
فراموش نکنید که قبل از آزمایش این تغییرات Nginx را Reload کنید.
نتیجه
استفاده از HTTPS اطمینان می دهد که امنیت اطلاعات کاربر در اینترنت برقرار است. به خصوص اگر شما معاملات پولی انجام می دهید.
نوع گواهی ای که شما لازم دارید، بستگی به مورد خاص و بودجه شما دارد. قبل از اینکه گزینه خرید خود را نهایی کنید، تحقیقات لازم را انجام دهید.