امروزه، باوجود تهدیدات امنیتی زیادی که در فضای آنلاین وجود دارد؛ وبسایتها میبایست با فعالسازی پروتکل امنیتی HTTPS از امنیت بازدیدکنندگان صفحات خود اطمینان داشته باشند.
ضرورت این مسئله ازآنجهت است که گزارش بیشتر از نیمی از سازمانهایی که در فضای آنلاین فعالیت میکنند حاکی از آن است که آنها هماکنون بیشتر از هر زمان دیگری هدف حملات قرار میگیرند.
ازآنجاییکه بخش عمدهای از حملههایی که به وبسایتها انجام میشود؛ به دلیل پسوردهای به سرقت رفته و ارتباطات ناامن است – که هردو توسط پروتکل HTTPS محافظت میشوند – درک اینکه چرا توجه به معیارهای امنیتی مهم است مشکل نیست.
باوجوداینکه وردپرس یک سیستم مدیریت محتوای فوقالعاده است؛ سایتهای وردپرسی از ابتدا توسط پروتکل HTTPS محافظت نمیشوند. معمولاً بعضی از سرویسدهندههای هاست گواهینامههای SSL را بهصورت رایگان ارائه میدهند.
این گواهینامههای رایگان برای مجهز کردن وردپرس به HTTPS ضروری هستند؛ اما هنوز موارد اضافی دیگری برای فعالسازی تمام موارد لازم هستند.
بنابراین قصد داریم در این آموزش، همهی آنچه برای فعالسازی پروتکل HTTPS در وبسایت خودتان باید بدانید را ارائه دهیم.
تعریف مختصر HTTPS
HTTPS ترکیبی است از پروتکل انتقال متن HTTP (Hyper Text Transfer Protocol) و اقدامات امنیتی لایهی سوکت های امن SSL (Secure Sockets Layer) .
وجود یک کانکشن HTTP برای هر کاربر برای اتصال به یک وبسایت لازم است؛ اما بدون SSL هیچگونه محافظتی از دادههای کاربر نخواهد شد. یعنی هکرها و یا بدافزارها بهراحتی میتوانند اطلاعات خصوصی کاربر، مانند رمز عبور یا اطلاعات بانکی او را به سرقت ببرند.
داشتن یک اتصال HTTPS هم از حریم خصوصی ترافیک دادههای یک وبسایت محافظت میکند؛ هم ماهیت امن یک وبسایت را برای کاربر بازدیدکننده از آن وبسایت اثبات میکند. درواقع، وقتی یک کاربر از وبسایتهای محافظتشده با پروتکل HTTPS بازدید میکند، یک آیکون قفل سبزرنگ در مرورگر او در کنار آدرس سایت خواهد دید. این یک مشخصه برای اثبات استفاده امن از وبسایتها است که علاوه بر ایجاد حس اطمینان برای کاربر، یک استاندارد است که همهی کاربران داشتن آن را از وبسایتها انتظار دارند.
مراحل اضافه کردن پروتکل HTTPS به وبسایت وردپرس
گام ۱) گرفتن یک گواهینامهی SSL
وبسایتهایی که گواهینامهی SSL را از طریق ارائهدهندهی هاست خود میگیرند؛ میتوانند بهراحتی آن را از طریق پنل مدیریت خود فعال کنند. اما وبسایتهایی که میزبان آنها از گواهینامه SSL پشتیبانی نمیکند میبایست بهصورت دستی گواهینامه SSL را به دست آورده و نصب کنند.
برای انجام این کار، شما به یک گواهینامه (که درواقع یک نوع فایل است) از یک موسسهی رسمی معتبر نیاز دارید. پیشنهاد ما به شما استفاده از گواهینامههای LetsEncrypt ]پیشنهاد تغییر مثال[ به دلیل داشتن گواهینامههای رایگان و دستورالعملهای ساده و کاربرپسند آن است.
گام ۲) نصب یک گواهینامهی SSL در وردپرس
در این شرایط بهترین انتخاب برای مدیران وبسایتها، مراجعه مستقیم به ارائهدهندگان هاست آنها برای کمک به انجام تغییرات در وبسایت است. خوشبختانه خیلی از ارائهدهندگان سرویسهای هاست این نیاز کاربران را پیشبینی کردهاند و گزینههایی برای پشتیبانی از گواهینامههای SSL را قرار دادهاند.
توجه: قبل از ایجاد هرگونه تغییر عمده در پسزمینهی سایتتان، تهیه نسخهی پشتیبان از کل سایت را فراموش نکنید. در این صورت اگر اشتباهی رخ داد میتوانید بدون نگرانی وبسایت خود را بهصورت امن به حالت قبل برگردانید.
همانطور که گفته شد بعضی از ارائهدهندگان هاست میتوانند به شما نصب گواهینامههای SSL خریداریشده را پیشنهاد بدهند. اگر این امکان فراهم نباشد، امکان نصب دستی گواهینامه SSL وجود دارد. اما این کار به تجربه و دانش بیشتری نیاز دارد و به افراد بیتجربه توصیه نمیشود.
خوشبختانه افزونههای وردپرسی زیادی هم در دسترساند که میتوانند گواهینامهی SSL شما را فعال کنند. استفاده از افزونههای وردپرس برای نصب SSL یکی از متداولترین روشهای این کار است.
گام ۳) دو روش برای ایجاد ارتباط HTTPS برای وردپرس
علاوه بر این، اگر میخواهید نصب SSL بهصورت دستی انجام شود، اما به توانایی خود در ایجاد تغییرات در کدهای سایت اعتماد ندارید؛ میتوانید یک توسعهدهندهی وردپرس استخدام کنید تا این تغییرات فنی را برای شما انجام دهد.
روش آسان – استفاده از HTTPS در وردپرس با استفاده از افزونه
بدون شک، سادهترین روش برای استفاده از HTTPS در وردپرس استفاده از افزونه است.
تعداد زیادی از افزونههایی از برنامه نویسان مختلف وجود دارند که تمام مراحل را برای شما انجام میدهند. این مراحل شامل بررسی گواهینامهی SSL، استفاده وردپرس از HTTPS در URL سایت، ارتباط خودکار منابع قدیمی HTTP به HTTPS و بررسی تمام محتوای سایت برای یافتن ایرادات امنیتی هستند.
یکی از بهترین افزونهها، افزونهی WordPress Really Simple SSL Pro است.
این افزونه برای تأمین امنیت پایگاه دادهی وبسایت، کلیه مراحل نصب گفتهشده در بالا را انجام میدهد. بهعنوانمثال، در این افزونه، وضعیت سنج SSL نقطهبهنقطه و یک اسکنر داخلی که خطاهای محتوایی را پیدا میکند، پشتیبانی میشود.
این محصول به زودی در مارکت شرق وب به فروش می رسد
همه موارد از طریق داشبورد مدیریت جامع افزونه کنترل میشود و به مدیر سایت اجازه میدهد تا انتخاب کند چه صفحاتی HTTPS را اجرا کنند، درحالیکه همزمان برای بازدیدکننده از سایت دسترسی آسان و امنی را مهیا میکند.
این افزونه روی وبسایتهای مختلف بهخوبی کار میکند و مهم نیست که چه تعداد از آنها را مدیریت میکنید.
روش سخت – آموزش مرحلهبهمرحله نصب HTTPS روی وردپرس
وارد تنظیمات وبسایت خودتان شوید. از صفحه General در زیر قسمت General Settings آدرس جدیدی که از طریق گواهینامه SSL به دست آوردهاید را با آدرس قبلی جابجا کنید.
سپس روی Save Changes کلیک کنید تا تغییرات ذخیره شود. وردپرس بهصورت خودکار شما را از صفحه خارج میکند و اگر شما دوباره بخواهید Log In انجام دهید با خطا مواجه خواهید شد که باهم در ادامه این مشکل را حل میکنیم.
این مرحله با توجه به اینکه شما از چه نوع سروری استفاده میکنید متفاوت است.
برای همهی وبسایتهایی که از سرورهای nginx استفاده نمیکنند، خطوط کد زیر باید در فایل .htaccess آنها اضافه شوند.
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] </IfModule>
اما برای وبسایتهایی که از سرورهای nginx استفاده میکنند (که معمولاً زیاد هم نیستند) خطوط کد زیر باید اضافه شود.
server { listen 80; server_name example.com www.example.com; return 301 https://example.com$request_uri; }
در هر دو مثال شما باید بهجای “example.com” دامنهی اصلی سایت خودتان را قرار بدهید.
پسازاین کار وردپرس شروع به بارگذاری کامل وبسایت با استفاده از HTTPS میکند که این کار، مشکل ایجادشده در قسمت اول را برطرف میکند.
حالا باید خطاهای مرتبط با محتوا برطرف شوند.
متأسفانه وبسایت شما به دلیل اینکه هنوز بعضی از منابع از حالت HTTP استفاده میکنند ب خطاهایی مواجه خواهد شد. یعنی شما باید با استفاده از ابزار Inspect بهدقت بررسی کنید که کدام محتواها از اتصالات ناامن استفاده میکنند.
سه بخش مهم برای بررسی، پایگاه داده وردپرس، قالب ورد پرس و پلاگین های وردپرس هستند. برای رفع خطاها باید هر جا آدرس قدیمی وبسایت شما در پایگاه داده وجود داشت؛ با آدرس جدید HTTPS جایگزین شود.
درنهایت، برای بهبود سئوی سایت میبایست گوگل را از اینکه وبسایت شما از HTTP به HTTPS تغییر کرده؛ مطلع کنید.
برای این کار وارد اکانت Google Search Console شوید، و روی Add a Property کلیک کنید. سپس آدرس جدید را در قسمت موردنظر وارد کنید و یک روش را برای اثبات اینکه مالک سایت هستید انتخاب کنید.
پس از پایان این کار شما با موفقیت وبسایت وردپرسی خودتان را در قالب HTTPS درآوردهاید.
جایگزینهای افزونهی Really Simple SSL Pro
اگر مایل به استفاده از برنامههای دیگری هستید در اینجا سه افزونه دیگر و روش استفاده از آنها را معرفی میکنیم.
افزونهی Really Simple SSL
نسخهی حرفهای این افزونه شامل پشتیبانی از خطاهای محتوایی، امکان فعالسازی امنیت دقیق HTTP و سایز جزئیات دیگر است.
افزونهی WP Force SSL
نکته: با این افزونه، کاربرها باید عبارت https را از تنظیمات General Settings به آدرس سایت اضافه کنند.
افزونهی Easy HTTPS Redirection Plugin
این افزونه بهصورت رایگان، موتورهای جستجو را به ایندکس کردن نسخهی HTTPS وبسایت شما وادار میکند. همچنین، بهصورت خودکار یک مسیر هدایت به نسخه HTTPS راهاندازی میکند که وقتی کاربرانی که تلاش میکنند به صفحات ناامن وارد شوند را به صفحات امن هدایت میکند.
بهعلاوه این افزونه از ترجمه به زبانهای مختلف پشتیبانی میکند. همچنین مستندات مفید این افزونه در دسترس است و این افزونهی بسیار معتبر از پشتیبانی ۲۴ ساعته برخوردار است.