Learning

آموزش افزایش امنیت وردپرس

طبق آمارهای زنده اینترنتی روزانه بیش از 100000 وب سایت هک می شوند. به همین دلیل بسیار مهم است که کمی وقت بگذارید و توصیه های زیر را در مورد چگونگی تقویت بهتر امنیت و بالا بردن امنیت وردپرس خود دنبال کنید. همچنین توصیه می نماییم مقاله امنیت وردپرس را پیش از شروع این مقاله مطالعه فرمایید.

سایت های وردپرس هر روز هک می شوند

اطمینان می دهیم که این پست را با اطلاعات مرتبط به روز نگه می داریم زیرا شرایط با پلتفرم وردپرس تغییر می کند و آسیب پذیری های جدید ظاهر می شود.

فهرست مطالب

1. روی هاست امن وردپرس سرمایه گذاری کنید

وقتی صحبت از امنیت وردپرس به میان می‌آید، موارد تاثیر گذار زیادی وجود دارد، اگرچه ما بهترین توصیه‌ها را در مورد نحوه انجام این کار در زیر به شما ارائه خواهیم داد. همچنین امنیت در سطح وب سرور وجود دارد که میزبان وردپرس شما مسئول آن است.

بسیار مهم است که میزبانی را انتخاب کنید که بتوانید به کسب و کار خود اعتماد کنید. یا اگر وردپرس را بر روی VPS خود میزبانی می کنید، باید دانش فنی انجام این کارها را خودتان داشته باشید.

هاست ایمن وردپرس

سخت شدن سرور کلید حفظ محیط وردپرس کاملاً ایمن است. چندین لایه از اقدامات امنیتی در سطح سخت افزار و نرم افزار لازم است تا اطمینان حاصل شود که زیرساخت فناوری اطلاعات میزبان سایت های وردپرس قادر به دفاع در برابر تهدیدات پیچیده، فیزیکی و مجازی است.

به همین دلیل، سرورهای میزبان وردپرس باید با آخرین سیستم عامل و نرم افزار (امنیتی) به روز شوند و همچنین به طور کامل از نظر آسیب پذیری ها و بدافزارها آزمایش و اسکن شوند. یک مثال خوب برای این موضوع زمانی است که هاستینگ ها مجبور شدند NGINX را برای  آسیب‌پذیری‌های امنیتی OpenSSL که کشف شده بود، وصله کند.

فایروال های سطح سرور و سیستم های تشخیص نفوذ باید قبل از نصب وردپرس بر روی سرور وجود داشته باشند تا حتی در مراحل نصب وردپرس و ساخت وب سایت به خوبی از آن محافظت شود. با این حال، هر نرم افزار نصب شده بر روی دستگاه برای محافظت از محتوای وردپرس باید با آخرین سیستم های مدیریت پایگاه داده سازگار باشد تا عملکرد مطلوب را حفظ کند. سرور همچنین باید طوری پیکربندی شود که از پروتکل های رمزگذاری شبکه ایمن و انتقال فایل (مانند SFTP به جای FTP) استفاده کند تا محتوای حساس را از نفوذ متجاوزان مخرب پنهان کند.

معماری میزبانی هاستینگ

2. از آخرین نسخه PHP استفاده کنید

PHP ستون فقرات سایت وردپرس شما است و بنابراین استفاده از آخرین نسخه در سرور شما بسیار مهم است. هر نسخه اصلی PHP معمولاً تا دو سال پس از انتشار به طور کامل پشتیبانی می شود. در طول این مدت، باگ ها و مسائل امنیتی برطرف شده و به طور منظم وصله می شوند. در حال حاضر، هرکسی که بر روی نسخه PHP 7.1 یا پایین‌تر اجرا می‌شود، دیگر پشتیبانی امنیتی ندارد و در معرض آسیب‌پذیری‌های امنیتی اصلاح نشده قرار دارد.

نسخه های PHP پشتیبانی شده

بررسی PHP در وردپرس

و حدس بزنید چه اتفاقی رخ داد؟ طبق صفحه رسمی  آمار وردپرس، تا زمان نگارش این مطلب، بیش از 57 درصد از کاربران وردپرس هنوز از PHP 5.6 یا پایین تر استفاده می کنند. اگر این را با PHP 7.0 ترکیب کنید، 77.5٪ از کاربران در حال حاضر از نسخه های PHP استفاده می کنند که دیگر پشتیبانی نمی شود. این مسئله واقعا ترسناک است!

گاهی اوقات تست کردن و اطمینان از سازگاری کدهایشان به شرکت‌ها و توسعه‌دهندگان زمان می‌برد، اما هیچ بهانه‌ای برای اجرای چیزی بدون پشتیبانی امنیتی ندارند. ناگفته نماند که اجرای عملکرد بر روی نسخه های قدیمی تاثیر زیادی دارد.

آمار نسخه وردپرس پی اچ پی

نمی دانید در حال حاضر از کدام نسخه PHP استفاده می کنید؟ اکثر هاست ها معمولاً این را در یک درخواست هدر در سایت شما قرار می دهند. یک راه سریع برای بررسی این است که سایت خود را از طریق Pingdom اجرا کنید. روی اولین درخواست کلیک کنید و به دنبال X-Powered-By پارامتر بگردید. معمولاً این نسخه PHP را نشان می دهد که سرور وب شما در حال حاضر از آن استفاده می کند. با این حال، برخی از هاست ها به دلایل امنیتی این هدر را حذف می کنند.

نسخه PHP را در Pingdom بررسی کنید

اگر از یک هاست وردپرس استفاده می‌کنید که از cPanel استفاده می‌کند، معمولاً می‌توانید با کلیک کردن روی «PHP Select» در زیر دسته نرم‌افزار، بین نسخه‌های PHP جابه‌جا شوید.

نسخه cPanel PHP

3. از نام های کاربری و رمزهای عبور هوشمندانه استفاده کنید

با کمال تعجب یکی از بهترین راه‌ها برای تقویت امنیت وردپرس استفاده از نام‌های کاربری و رمزهای عبور هوشمندانه است. برای تلفن های موبایل بسیار آسان است درست است؟ خوب، فهرست سالانه SplashData را در سال 2019 از محبوب ترین رمزهای عبور سرقت شده در طول سال (به ترتیب محبوبیت مرتب شده) بررسی کنید.

  • 123456
  • password
  • 123456789
  • 12345678
  • 12345
  • 111111
  • 1234567
  • sunshine
  • qwerty
  • iloveyou

درست است! محبوب ترین رمز عبور “123456” است و پس از آن یک “گذرواژه” شگفت انگیز قرار دارد. این یکی از دلایلی است که در نصب‌های جدید وردپرس، ما در واقع از یک رمز عبور پیچیده برای ورود به سیستم wp-admin استفاده می‌کنیم (همانطور که در زیر در فرآیند نصب با یک کلیک مشاهده می‌کنیم). این اختیاری نیست.

رمز عبور ایمن وردپرس را اجباری کنید

wp_hash_password  تابع اصلی وردپرس از چارچوب هش رمز عبور phpass و هشت پاس هش مبتنی بر MD5 استفاده می کند.

نحوه انتخاب رمز عبور قوی

برخی از بهترین اصول امنیتی از اصول اولیه شروع می شوند. گوگل چند توصیه عالی در مورد نحوه انتخاب رمز عبور قوی دارد. یا می توانید از یک ابزار آنلاین مانند Strong Password Generator استفاده کنید.

همچنین استفاده از رمزهای عبور مختلف برای هر وب سایت مهم است. بهترین راه برای ذخیره آنها به صورت محلی در یک پایگاه داده رمزگذاری شده در رایانه شما است. یک ابزار رایگان خوب برای این کار KeePass است. اگر نمی‌خواهید این مسیر را طی کنید، مدیریت‌های رمز عبور آنلاین مانند 1Password یا  LastPass نیز وجود دارد. حتی اگر داده‌های شما به‌طور ایمن در فضای ابری میزبانی شود، این اطلاعات عموماً ایمن‌تر هستند، زیرا از رمز عبور یکسانی در چندین سایت استفاده نمی‌کنید. همچنین شما را از استفاده از یادداشت های چسبناک باز می دارد و تا آنجایی که نصب وردپرس شما پیش می رود، هرگز نباید از نام کاربری پیش فرض “admin” استفاده کنید. یک نام کاربری منحصر به فرد وردپرس برای حساب مدیر ایجاد کنید و در صورت وجود کاربر “admin” را حذف کنید. می‌توانید این کار را با افزودن یک کاربر جدید در قسمت «کاربران» در داشبورد و اختصاص دادن نمایه «مدیر» (همانطور که در زیر مشاهده می‌کنید) انجام دهید.

نقش مدیر وردپرس

پس از اختصاص دادن نقش مدیر به حساب جدید، می توانید به عقب برگردید و کاربر اصلی “Admin” را حذف کنید. اطمینان حاصل کنید که وقتی روی حذف کلیک می‌کنید، گزینه «Attribute all content to» را انتخاب کرده و نمایه سرپرست جدید خود را انتخاب کنید. با این کار شخص به عنوان نویسنده آن پست ها تعیین می شود.

تمام مطالب را به ادمین نسبت دهید

همچنین می توانید با دستور زیر نام کاربری ادمین فعلی خود را به صورت دستی در phpMyAdmin تغییر نام دهید. قبل از ویرایش جداول حتما از پایگاه داده خود نسخه پشتیبان تهیه کنید.

UPDATE wp_users SET user_login = 'newcomplexadminuser' WHERE user_login = 'admin';

4. همیشه از آخرین نسخه وردپرس، افزونه ها و تم ها استفاده کنید

یکی دیگر از راه های بسیار مهم برای تقویت امنیت وردپرس این است که همیشه آن را به روز نگه دارید. این شامل هسته وردپرس، افزونه ها، و تم ها (هر دو از مخزن وردپرس و حق بیمه). اینها به دلایلی به‌روزرسانی می‌شوند و اغلب موارد شامل پیشرفت‌های امنیتی و رفع اشکال می‌شوند.

وردپرس را به روز نگه دارید

متأسفانه، میلیون‌ها کسب‌وکار در آنجا از نسخه‌های قدیمی نرم‌افزار و افزونه‌های وردپرس استفاده می‌کنند و همچنان معتقدند که در مسیر درست موفقیت در کسب‌وکار هستند. آنها دلایلی را برای به‌روزرسانی نکردن ذکر می‌کنند، مانند «سایت آنها خراب می‌شود» یا «اصلاحات اصلی از بین می‌رود» یا «افزونه X کار نمی‌کند» یا «آنها فقط به عملکرد جدید نیاز ندارند».

نحوه شناسایی نفوذ در وردپرس

در واقع، وب‌سایت‌ها بیشتر به دلیل اشکالات نسخه‌های قدیمی وردپرس خراب می‌شوند. تغییرات اصلی هرگز توسط تیم وردپرس و توسعه دهندگان متخصص که خطرات موجود را درک می کنند توصیه نمی شود. و به‌روزرسانی‌های وردپرس عمدتاً شامل وصله‌های امنیتی ضروری به همراه عملکردهای اضافی مورد نیاز برای اجرای آخرین افزونه‌ها هستند.

آیا می دانستید که گزارش شده است که  آسیب پذیری های افزونه 55.9 درصد از نقاط ورود شناخته شده برای هکرها را تشکیل می دهند؟ این همان چیزی است که WordFence در مطالعه‌ای پیدا کرد که در آن با بیش از 1000 صاحب سایت وردپرس که قربانی حملات شده بودند مصاحبه کرد. با به‌روزرسانی افزونه‌های خود، بهتر می‌توانید مطمئن شوید که یکی از این قربانیان نیستید.

سایت های وردپرسی هک شده

همچنین توصیه می شود فقط افزونه های قابل اعتماد را نصب کنید. دسته‌های «ویژه» و «محبوب» در مخزن وردپرس می‌توانند مکان خوبی برای شروع باشند. یا آن را مستقیماً از وب سایت توسعه دهنده دانلود کنید. ما به شدت از هرگونه استفاده از پلاگین ها و تم های وردپرس نال شده منع می کنیم.

اول از همه، شما هرگز نمی دانید کد اصلاح شده ممکن است حاوی چه چیزی باشد. این به راحتی می تواند منجر به هک شدن سایت شما شود. پرداخت نکردن افزونه های ممتاز وردپرس نیز به رشد کل جامعه کمکی نمی کند. ما باید از توسعه دهندگان حمایت کنیم.

می‌توانید از یک ابزار آنلاین مانند  VirusTotal  برای اسکن افزونه یا فایل‌های تم استفاده کنید تا ببینید آیا هر نوع بدافزاری را شناسایی می‌کند یا خیر.

ویروس توتال

نحوه به روز رسانی هسته وردپرس

چند راه آسان برای به روز رسانی نصب وردپرس شما وجود دارد. برخی هاستینگ ها پشتیبان‌گیری خودکار را با گزینه بازیابی با یک کلیک ارائه کرده‌اند. به این ترتیب می‌توانید نسخه‌های جدید وردپرس و افزونه‌ها را بدون نگرانی از خراب شدن آن تست کنید. 

برای به‌روزرسانی هسته وردپرس، می‌توانید روی «به‌روزرسانی‌ها» در داشبورد وردپرس خود کلیک کنید و روی دکمه «اکنون به‌روزرسانی» کلیک کنید.

هسته وردپرس را به روز کنید

همچنین می توانید با دانلود آخرین نسخه و آپلود آن از طریق SFTP، وردپرس را به صورت دستی به روز کنید.

مهم! بازنویسی پوشه های اشتباه اگر به درستی انجام نشود می تواند سایت شما را خراب کند. اگر در انجام این کار راحت نیستید، لطفاً ابتدا با یک توسعه دهنده بررسی کنید.

مراحل زیر را برای به  روز رسانی نصب موجود خود دنبال کنید:

  1. دایرکتوری های قدیمی wp-includes و wp-admin را حذف کنید .
  2. دایرکتوری ها جدید wp-includesو wp-admin را آپلود کنید.
  3. wp-content فایل‌های جداگانه را از پوشه جدید به پوشه موجود خود آپلود کنید و فایل‌های موجود wp-content را بازنویسی کنید. پوشه موجود wp-content خود را حذف نکنید. هیچ فایل یا پوشه ای را در فهرست موجود wp-content خود حذف نکنید (به جز پوشه ای که توسط فایل های جدید رونویسی شده است).
  4. همه فایل‌های شل جدید را از دایرکتوری ریشه نسخه جدید در فهرست اصلی وردپرس موجود خود آپلود کنید.

نحوه به روزرسانی افزونه های وردپرس

به روز رسانی افزونه های وردپرس فرآیندی بسیار شبیه به روز رسانی هسته وردپرس است. در داشبورد وردپرس خود روی «به روز رسانی ها» کلیک کنید، افزونه هایی را که می خواهید به روز کنید انتخاب کنید و روی «به روز رسانی افزونه ها» کلیک کنید.

افزونه های وردپرس را به روز کنید

به همین ترتیب، شما همچنین می توانید یک افزونه را به صورت دستی به روز کنید. به سادگی آخرین نسخه را از توسعه دهنده افزونه یا مخزن وردپرس بگیرید و آن را از طریق FTP آپلود کنید و افزونه موجود را در پوشه /wp-content/plugins رونویسی کنید.

همچنین توجه به این نکته مهم است که توسعه دهندگان همیشه افزونه های خود را به روز نگه نمی دارند. تیم WP Loop یک تجزیه و تحلیل کوچک عالی از این که تعداد افزونه های وردپرس موجود در مخزن با هسته فعلی وردپرس به روز نیستند، انجام دادند. طبق تحقیقات آنها نزدیک به 50٪ از افزونه های موجود در مخزن در بیش از 2 سال به روز نشده اند .

این بدان معنا نیست که این افزونه با نسخه فعلی وردپرس کار نمی کند، اما توصیه می شود افزونه هایی را انتخاب کنید که به طور فعال به روز می شوند. افزونه های قدیمی به احتمال زیاد دارای آسیب پذیری های امنیتی هستند.

img src: حلقه WP

در مورد افزونه ها بهترین قضاوت خود را به کار ببرید. به تاریخ «آخرین به‌روزرسانی» و تعداد رتبه‌بندی یک افزونه نگاه کنید. همانطور که در مثال زیر مشاهده می شود، این یکی قدیمی است و بررسی های بدی دارد، بنابراین به احتمال زیاد توصیه می کنیم از آن دوری کنید. وردپرس همچنین دارای یک هشدار در بالای اکثر افزونه هایی است که مدتی است به روز نشده اند.

افزونه قدیمی وردپرس با رتبه بندی بد

همچنین منابع زیادی وجود دارد که به شما کمک می کند از آخرین به روز رسانی ها و آسیب پذیری های امنیتی وردپرس مطلع شوید. برخی از آنها را در زیر ببینید:

آرشیو امنیتی وردپرس

5. مدیریت وردپرس خود را قفل کنید

گاهی اوقات استراتژی محبوب امنیت وردپرس با نامعلومی برای یک کسب و کار آنلاین متوسط ​​​​و سایت وردپرسی مناسب است. اگر پیدا کردن درب‌های پشتی خاص را برای هکرها سخت‌تر کنید، احتمال کمتری دارد که مورد حمله قرار بگیرید. قفل کردن قسمت مدیریت وردپرس و ورود به سیستم راه خوبی برای افزایش امنیت شما است. دو روش عالی برای انجام این کار، ابتدا با تغییر URL ورود به سیستم wp-admin پیش‌فرض و همچنین محدود کردن تلاش‌های ورود به سیستم است.

چگونه URL ورود به وردپرس خود را تغییر دهیم

به طور پیش فرض URL ورود به سایت وردپرس شما domain.com /wp-admin است. یکی از مشکلات این است که همه ربات ها، هکرها و اسکریپت های موجود در آنجا نیز این را می دانند. با تغییر URL می توانید خود را کمتر هدف قرار دهید و بهتر از خود در برابر حملات brute force محافظت کنید. این یک راه حل حل نیست، فقط یک ترفند کوچک است که قطعا می تواند به محافظت از شما کمک کند.

برای تغییر URL ورود به وردپرس، توصیه می کنیم از افزونه رایگان ورود WPS Hide  یا افزونه Premium Perfmatters استفاده کنید. هر دو پلاگین دارای یک فیلد ورودی ساده هستند. فقط به یاد داشته باشید که چیزی منحصر به فرد را انتخاب کنید که قبلاً در لیستی وجود نداشته باشد که یک ربات یا اسکریپت ممکن است سعی کند آن را اسکن کند.

آدرس ورودی وردپرس را با Perfmatters مخفی کنید

اگر به دنبال راه حل امنیتی ساده تری برای وردپرس هستید، جایگزین عالی دیگر افزونه Login Lockdown رایگان است. Login LockDown آدرس IP و مهر زمانی هر تلاش ناموفق برای ورود را ثبت می کند. اگر بیش از تعداد معینی تلاش در مدت زمان کوتاهی از همان محدوده IP شناسایی شود، عملکرد ورود برای همه درخواست‌های آن محدوده غیرفعال می‌شود. و کاملاً با افزونه ورود WPS Hide که در بالا به آن اشاره کردیم سازگار است.

قفل کردن وردپرس

نحوه افزودن احراز هویت پایه HTTP (حفاظت htpasswd)

راه دیگر برای قفل کردن ادمین اضافه کردن احراز هویت HTTP است. قبل از اینکه حتی بتوانید به صفحه ورود به وردپرس دسترسی پیدا کنید، این نیاز به یک نام کاربری و رمز عبور دارد. توجه: این معمولاً نباید در سایت های تجارت الکترونیک یا سایت های عضویت استفاده شود. اما می تواند یک راه بسیار موثر برای جلوگیری از ورود ربات ها به سایت شما باشد.

اعلان احراز هویت htpasswd

آپاچی

اگر از هاست cPanel استفاده می کنید، می توانید دایرکتوری های محافظت شده با رمز عبور را از کنترل پنل آنها فعال کنید. برای تنظیم دستی، ابتدا باید یک  .htpasswdفایل ایجاد کنید. شما می توانید از این ابزار مولد دستی استفاده کنید. سپس فایل را در دایرکتوری زیر پوشه wp-admin خود آپلود کنید، مانند:

home/user/.htpasswds/public_html/wp-admin/htpasswd/

سپس یک فایل .htaccess با کد زیر ایجاد کنید و در پوشه /wp-admin/خود آپلود کنید. مطمئن شوید که مسیر دایرکتوری و نام کاربری را به روز کرده اید.

AuthName "Admins Only"
AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/htpasswd
AuthType basic
require user yourusername

یک اخطار برای انجام این کار این است که AJAX (admin-ajax) را در قسمت جلویی سایت شما خراب می کند. این توسط برخی از افزونه های شخص ثالث مورد نیاز است. بنابراین باید کد زیر را نیز به فایل htaccess. بالا اضافه کنید.

<Files admin-ajax.php>
Order allow,deny
Allow from all
Satisfy any
</Files>

Nginx

اگر Nginx را اجرا می کنید، می توانید با احراز هویت اولیه HTTP نیز دسترسی را محدود کنید.

پس از فعال شدن سایت وردپرس شما برای دسترسی به آن نیاز به احراز هویت دارد. می‌توانید اعتبارنامه‌ها را در هر زمانی تغییر دهید یا زمانی که دیگر به آن نیاز ندارید، آن را غیرفعال کنید.

یک مسیر URL را قفل کنید

اگر از فایروال برنامه های وب (WAF) مانند Cloudflare یا Sucuri استفاده می کنید، آنها همچنین راه هایی برای قفل کردن مسیر URL دارند. اساساً می توانید یک قانون تنظیم کنید تا فقط آدرس IP شما بتواند به URL ورود به سیستم مدیریت وردپرس شما دسترسی داشته باشد. باز هم، این معمولاً نباید در سایت‌های تجارت الکترونیک یا سایت‌های عضویت استفاده شود، زیرا آنها نیز به دسترسی به پشتیبان سایت شما متکی هستند.

  • Cloudflare یک ویژگی URL قفل در حساب های حرفه ای و بالاتر خود دارد. شما می توانید یک قانون برای هر URL یا مسیری تنظیم کنید.
  • Sucuri یک ویژگی مسیر URL لیست سیاه دارد. سپس می توانید IP خود را در لیست سفید قرار دهید.

6. از احراز هویت دو مرحله ای استفاده کنید

ما نمی توانیم احراز هویت دو مرحله ای را فراموش کنیم! مهم نیست که رمز عبور شما چقدر امن باشد، همیشه خطر کشف آن وجود دارد. احراز هویت دو مرحله ای شامل یک فرآیند دو مرحله ای است که در آن شما نه تنها برای ورود به رمز عبور بلکه به روش دوم نیاز دارید. به طور کلی یک پیامک (پیامک)، تماس تلفنی، یا رمز عبور یکبار مصرف مبتنی بر زمان (TOTP) است. در بیشتر موارد، این 100٪ در جلوگیری از حملات brute force به سایت وردپرس شما موثر است. چرا؟ زیرا تقریبا غیرممکن است که مهاجم هم رمز عبور و هم تلفن همراه شما را داشته باشد.

در مورد احراز هویت دو مرحله ای واقعاً دو بخش وجود دارد. اولین مورد، حساب شما و یا داشبوردی است که با ارائه دهنده میزبانی وب خود دارید. اگر کسی به این دسترسی پیدا کند، می‌تواند رمزهای عبور شما را تغییر دهد، وب‌سایت‌های شما را حذف کند، رکوردهای DNS و انواع چیزهای وحشتناک را تغییر دهد.

احراز هویت دو مرحله ای در وردپرس

بخش دوم احراز هویت دو مرحله ای به نصب واقعی وردپرس شما مربوط می شود. برای این کار چند افزونه پیشنهاد می کنیم:

بسیاری از افزونه ها برنامه‌های Authenticator مخصوص به خود را دارند که می‌توانید روی تلفن خود نصب کنید:

پس از نصب و پیکربندی یکی از افزونه های فوق، معمولاً یک فیلد اضافی در صفحه ورود به وردپرس خود برای وارد کردن کد امنیتی خود خواهید داشت. یا با افزونه Duo، ابتدا با اطلاعات کاربری خود وارد سیستم شوید و سپس باید یک روش احراز هویت، مانند Duo Push، تماس یا رمز عبور را انتخاب کنید.

این روش را می توان به راحتی با تغییر URL پیش فرض ورود به سیستم، که قبلاً به آن پرداختیم، ترکیب کرد. بنابراین نه تنها URL ورود به وردپرس شما چیزی است که فقط شما می دانید، بلکه اکنون برای ورود به آن نیاز به احراز هویت اضافی دارد.

صفحه احراز هویت دو عاملی وردپرس

بنابراین مطمئن شوید که از احراز هویت دو مرحله‌ای استفاده می‌کنید، این می‌تواند راهی آسان برای افزایش امنیت وردپرس شما باشد.

7. از HTTPS برای اتصالات رمزگذاری شده استفاده کنید – گواهی SSL

یکی از نادیده گرفته‌شده‌ترین راه‌ها برای تقویت امنیت وردپرس نصب گواهی SSL و اجرای سایت خود از طریق HTTPS است. HTTPS (پروتکل امن انتقال متن فوق العاده) مکانیزمی است که به مرورگر یا برنامه وب شما اجازه می دهد به طور ایمن با یک وب سایت ارتباط برقرار کند. یک تصور اشتباه بزرگ این است که اگر کارت های اعتباری را قبول نمی کنید، به SSL نیاز ندارید.

اتصالات رمزگذاری شده HTTPS

1. امنیت

البته، بزرگترین دلیل برای HTTPS امنیت بیشتر است و بله این به شدت به سایت های تجارت الکترونیک و فروشگاه های اینترنتی مربوط می شود. با این حال، اطلاعات ورود شما چقدر مهم است؟ برای کسانی از شما که دارای وب سایت های وردپرس چند نویسنده هستند، اگر از طریق HTTP اجرا می کنید، هر بار که شخصی وارد می شود، این اطلاعات به صورت متن ساده به سرور ارسال می شود. HTTPS برای حفظ ارتباط امن بین وب سایت و مرورگر کاملاً حیاتی است. به این ترتیب بهتر می توانید از دسترسی هکرها و یا یک واسطه به وب سایت خود جلوگیری کنید.

بنابراین چه وبلاگ، سایت خبری، آژانس و غیره داشته باشید، همه آنها می توانند از HTTPS بهره مند شوند زیرا این تضمین می کند که هیچ چیز در متن ساده منتقل نمی شود.

2. سئو

گوگل رسما اعلام کرده است که HTTPS یک فاکتور رتبه بندی است. در حالی که این تنها یک عامل رتبه بندی کوچک است، اکثر شما احتمالاً از هر مزیتی که می توانید در SERP به دست آورید برای شکست دادن رقبای خود استفاده کنید.

3. اعتماد و اعتبار

بر اساس نظرسنجی از GlobalSign ، 28.9٪ از بازدیدکنندگان به دنبال نوار آدرس سبز در مرورگر خود هستند. و 77 درصد از آنها نگران رهگیری یا سوء استفاده آنلاین از داده های خود هستند. با دیدن آن قفل سبز، مشتریان بلافاصله با آگاهی از اینکه داده هایشان امن تر است، آرامش بیشتری خواهند داشت.

4. داده های ارجاع

بسیاری از مردم نمی دانند که داده های ارجاع HTTPS به HTTP در Google Analytics مسدود شده است. بنابراین چه اتفاقی برای داده ها می افتد؟ خوب، بیشتر آن فقط با بخش “ترافیک مستقیم” جمع شده است. اگر شخصی از HTTP به HTTPS می‌رود، ارجاع‌دهنده همچنان پاس داده می‌شود.

5. هشدارهای کروم

از  24 ژوئیه 2018 ، نسخه‌های Chrome 68 و بالاتر شروع به علامت‌گذاری همه سایت‌های غیر HTTPS به‌عنوان «غیر ایمن» کردند. صرف نظر از اینکه آنها داده ها را جمع آوری می کنند یا خیر. به همین دلیل است که HTTPS از همیشه مهمتر است!

این امر به ویژه در صورتی مهم است که وب سایت شما اکثریت ترافیک خود را از کروم دریافت کند. می توانید در Google Analytics زیر بخش Audience در مرورگر و سیستم عامل نگاه کنید، بنابراین درصد ترافیکی که سایت وردپرس شما از Google Chrome دریافت می کند را ببینید. گوگل این موضوع را برای بازدیدکنندگان واضح تر می کند که وب سایت وردپرس شما ممکن است با اتصال ایمن اجرا نشود.

6. عملکرد

به دلیل پروتکلی به نام HTTP/2، بسیاری از اوقات، کسانی که سایت‌های بهینه‌سازی شده را از طریق HTTPS اجرا می‌کنند، حتی می‌توانند بهبود سرعت را مشاهده کنند. HTTP/2 به دلیل پشتیبانی مرورگر به HTTPS نیاز دارد. بهبود عملکرد به دلایل مختلفی از جمله توانایی HTTP/2 برای پشتیبانی از مالتی پلکس بهتر، موازی سازی، فشرده سازی HPACK با رمزگذاری هافمن، پسوند ALPN و فشار سرور است.

برای برقراری ارتباط امن و رمزگذاری شده بین شما و سرور هنگام ورود به سایت و مدیریت آن، خط زیر را به فایل wp-config.php خود اضافه کنید:

define('FORCE_SSL_ADMIN'، true);

(مطالعه پیشنهادی: اگر از نسخه‌های قدیمی TLS استفاده می‌کنید، ممکن است بخواهید اعلان‌های ERR_SSL_OBSOLETE_VERSION را در Chrome اصلاح کنید).

8. فایل wp-config.php خود را ایمن کنید

فایل wp-config.php شما مانند قلب و روح نصب وردپرس شما است. در مورد امنیت وردپرس این تا حد زیادی مهمترین فایل در سایت شما است. این شامل اطلاعات ورود به پایگاه داده شما و کلیدهای امنیتی است که رمزگذاری اطلاعات در کوکی ها را کنترل می کند. در زیر چند کار وجود دارد که می توانید برای محافظت بهتر از این فایل مهم انجام دهید.

1. wp-config.php را منتقل کنید

به طور پیش فرض، فایل wp-config.php شما در دایرکتوری اصلی نصب وردپرس شما (  /publicپوشه HTML شما) قرار دارد. اما می‌توانید آن را به دایرکتوری غیرwww. آرون آدامز توضیح بسیار خوبی در مورد اینکه چرا  این کار مفید است، نوشت.

برای انتقال فایل wp-config.php خود به سادگی همه چیز را از آن در فایل دیگری کپی کنید. سپس در فایل wp-config.php خود می توانید قطعه زیر را قرار دهید تا به سادگی فایل دیگر خود را در آن قرار دهید. توجه: مسیر دایرکتوری ممکن است بر اساس میزبان وب و تنظیمات شما متفاوت باشد. به طور معمول هر چند آن را به سادگی یک دایرکتوری بالا است.

<?php 
include('/home/yourname/wp-config.php');

2. کلیدهای امنیتی وردپرس را به روز کنید

کلیدهای امنیتی وردپرس مجموعه ای از متغیرهای تصادفی هستند که رمزگذاری اطلاعات ذخیره شده در کوکی های کاربر را بهبود می بخشند. از زمان وردپرس 2.7 4 کلید مختلف وجود داشته است: AUTH_KEYSECURE_AUTH_KEY,  LOGGED_IN_KEY و NONCE_KEY.

وقتی وردپرس را نصب می کنید، اینها به صورت تصادفی برای شما تولید می شوند. با این حال، اگر چندین مهاجرت را انجام داده اید یا سایتی را از شخص دیگری خریداری کرده اید، ایجاد کلیدهای جدید وردپرس می تواند خوب باشد.

وردپرس در واقع یک ابزار رایگان دارد که می توانید از آن برای تولید کلیدهای تصادفی استفاده کنید. می توانید کلیدهای فعلی خود را که درفایل wp-config.php ذخیره شده اند به روز کنید.

کلیدهای امنیتی وردپرس

3. مجوزها را تغییر دهید

معمولاً فایل‌های موجود در دایرکتوری ریشه یک سایت وردپرس روی 644 تنظیم می‌شوند، به این معنی که فایل‌ها توسط صاحب فایل قابل خواندن و نوشتن هستند و توسط کاربران در مالک گروه آن فایل قابل خواندن و برای بقیه قابل خواندن هستند. طبق اسناد وردپرس، مجوزهای موجود در فایل wp-config.php باید روی 440 یا 400 تنظیم شود تا از خواندن آن توسط سایر کاربران روی سرور جلوگیری شود. شما به راحتی می توانید این مورد را با سرویس گیرنده FTP خود تغییر دهید.

مجوزهای wp-config.php

در برخی از پلتفرم‌های میزبانی، ممکن است نیاز باشد مجوزها متفاوت باشد زیرا کاربری که سرور وب را اجرا می‌کند، اجازه نوشتن فایل‌ها را ندارد. اگر در این مورد مطمئن نیستید، با ارائه دهنده هاست خود چک کنید.

9. XML-RPC را غیرفعال کنید

در سال های گذشته XML-RPC به یک  هدف بزرگ برای حملات brute force تبدیل شده است. همانطور که Sucuri اشاره کرد، یکی از ویژگی های پنهان XML-RPC این است که می توانید از متد system.multicall برای اجرای چندین روش در یک درخواست استفاده کنید. این بسیار مفید است زیرا به برنامه اجازه می دهد چندین دستور را در یک درخواست HTTP ارسال کند. اما اتفاقی که می افتد این است که از آن برای اهداف مخرب استفاده می شود.

چند پلاگین وردپرس مانند Jetpack وجود دارد که به XML-RPC متکی هستند، اما اکثر افراد در آنجا به این نیاز ندارند و غیرفعال کردن دسترسی به آن می تواند مفید باشد. مطمئن نیستید که XML-RPC در حال حاضر در وب سایت شما اجرا می شود؟ دانیلو ارکولی، از تیم Automattic، ابزار کوچکی به نام  XML-RPC Validator نوشت. می توانید سایت وردپرس خود را از طریق آن اجرا کنید تا ببینید آیا XML-RPC فعال است یا خیر.

اعتبار سنجی XML-RPC وردپرس

برای غیرفعال کردن کامل این مورد می‌توانید افزونه Disable XML-RPC را نصب  کنید. یا می توانید آن را با افزونه perfmatters غیرفعال کنید که شامل بهبود عملکرد وب نیز می شود.

اگراز وب سرور Nginxاستفاده می کنید به راحتی می توانید جلوی این آسیب پذیری را بگیرید. زیرا وقتی حمله ای از طریق XML-RPC شناسایی می شود، یک قطعه کد کوچک به فایل پیکربندی NGINX اضافه می شود تا آنها را در مسیر خود متوقف کند – باعث ایجاد خطای 403 می شود.

location ~* ^/xmlrpc.php$ {
return 403;
}

10. نسخه وردپرس خود را مخفی کنید

مخفی کردن نسخه وردپرس شما دوباره به موضوع امنیت وردپرس به دلیل نامعلومی می‌پردازد. هرچه دیگران کمتر در مورد پیکربندی سایت وردپرس شما بدانند بهتر است. اگر ببینند که نصب وردپرس منقضی شده ای دارید، این می تواند نشانه خوش آمدگویی برای مزاحمان باشد. به طور پیش فرض، نسخه وردپرس در سربرگ کد منبع سایت شما نمایش داده می شود. باز هم، توصیه می کنیم به سادگی مطمئن شوید که نصب وردپرس شما همیشه به روز است، بنابراین لازم نیست نگران این موضوع باشید

.

نسخه وردپرس در کد منبع

برای حذف آن می توانید از کد زیر استفاده کنید. به سادگی آن را به فایل functions.php قالب وردپرس خود اضافه کنید.

مهم! اگر به درستی انجام نشود، ویرایش کد منبع یک پوسته وردپرس می تواند سایت شما را خراب کند. اگر در انجام این کار راحت نیستید، لطفاً ابتدا با یک توسعه دهنده بررسی کنید.

function wp_version_remove_version() { 
return ''; 
} 
add_filter('the_generator', 'wp_version_remove_version');

همچنین می توانید از یک افزونه ممتاز مانند  perfmatters  استفاده کنید که به شما امکان می دهد نسخه وردپرس را با یک کلیک مخفی کنید، همراه با سایر بهینه سازی ها برای سایت وردپرس خود.

مخفی کردن نسخه وردپرس با Perfmatters

مکان دیگری که نسخه وردپرس نمایش داده می شود، فایل readme.html پیش فرض (مانند تصویر زیر) است که در هر نسخه وردپرس موجود است. در ریشه نصب شما قرار دارد، domain.com/readme.html. شما می توانید با خیال راحت این فایل را از طریق FTP حذف کنید.

نسخه وردپرس در فایل readme

اگر وردپرس 5.0 یا بالاتر را اجرا می کنید، این دیگر قابل اجرا نیست زیرا شماره نسخه دیگر در فایل موجود نیست.

11. جدیدترین هدرهای امنیتی HTTP را اضافه کنید

گام دیگری که می توانید برای تقویت امنیت وردپرس خود بردارید، استفاده از هدرهای امنیتی HTTP است. این ها معمولاً در سطح وب سرور پیکربندی می شوند و به مرورگر می گویند که چگونه هنگام مدیریت محتوای سایت شما رفتار کند. تعداد زیادی هدر امنیتی HTTP مختلف وجود دارد، اما در زیر به طور معمول مهمترین آنها وجود دارد.

می‌توانید با راه‌اندازی ابزارهای توسعه کروم و مشاهده سرصفحه در پاسخ اولیه سایت، بررسی کنید که کدام هدرها در حال حاضر در سایت وردپرس شما اجرا می‌شوند.نمونه ای را در زیر می بینید که از strict-transport-securityx-content-typeو x-frame-optionsهدرها استفاده می کن.

هدرهای امنیتی HTTP

همچنین می توانید وب سایت وردپرس خود را با ابزار رایگان securityheaders.io توسط اسکات هلم اسکن کنید. این به شما نشان می دهد که در حال حاضر کدام سرفصل های امنیتی HTTP را در سایت خود دارید. اگر مطمئن نیستید که چگونه آنها را پیاده سازی کنید، همیشه می توانید از میزبان خود بپرسید که آیا می توانند کمک کنند.

اسکن هدرهای امنیتی HTTP

همچنین مهم است که به یاد داشته باشید هنگامی که هدرهای امنیتی HTTP را پیاده‌سازی می‌کنید چگونه می‌تواند بر زیر دامنه‌های وردپرس شما تأثیر بگذارد . برای مثال، اگر هدر Content Security Policy را اضافه کنید و دسترسی به دامنه ها را محدود کنید، باید زیر دامنه های خود را نیز اضافه کنید.

نکته: همچنین مهم است که به یاد داشته باشید هنگامی که هدرهای امنیتی HTTP را پیاده‌سازی می‌کنید چگونه می‌تواند بر زیر دامنه‌های وردپرس شما تأثیر بگذارد . برای مثال، اگر هدر Content Security Policy را اضافه کنید و دسترسی به دامنه ها را محدود کنید، باید زیر دامنه های خود را نیز اضافه کنید.

12. از افزونه های امنیتی وردپرس استفاده کنید

در این قسمت به برخی از افزونه های امنیتی وردپرس اشاره می کنیم. توسعه دهندگان و شرکت های بزرگ زیادی وجود دارند که راه حل های عالی برای کمک به محافظت بهتر از سایت وردپرس شما ارائه می دهند. در اینجا چند مورد از آنها وجود دارد.

در اینجا برخی از ویژگی های معمولی و استفاده از افزونه های بالا آورده شده است:

  • هنگام ایجاد نمایه های کاربر، رمزهای عبور قوی ایجاد و اجبار کنید
  • گذرواژه‌ها را مجبور کنید منقضی شوند و مرتباً بازنشانی شوند
  • ثبت عملیات کاربر
  • به روز رسانی آسان کلیدهای امنیتی وردپرس
  • اسکن بدافزار
  • احراز هویت دو مرحله ای
  • reCAPTCHA ها
  • فایروال های امنیتی وردپرس
  • لیست سفید IP
  • لیست سیاه IP
  • تغییرات فایل
  • نظارت بر تغییرات DNS
  • شبکه های مخرب را مسدود کنید
  • مشاهده اطلاعات WHOIS در مورد بازدیدکنندگان

یک ویژگی بسیار مهم که بسیاری از پلاگین های امنیتی شامل یک ابزار کنترلی است. این بدان معناست که آنها نصب وردپرس شما را بررسی می کنند و به دنبال تغییراتی در فایل های اصلی که توسط WordPress.org ارائه شده است (از طریق API) هستند. هر گونه تغییر یا اصلاح در این فایل ها می تواند نشان دهنده هک باشد. همچنین می‌توانید از WP-CLI برای اجرای چک‌سام خود استفاده کنید.

یکی دیگر از افزونه های عالی که شایسته تقدیر است، افزونه WP Security Audit Log است. این یک راه حل کامل گزارش فعالیت وردپرس است. در زمان نوشتن این مطلب، افزونه WP Security Audit Log بیش از 80000 نصب فعال با امتیاز 4.7 از 5 ستاره دارد. اگر به دنبال راه حل امنیتی سازگار با چند سایت وردپرس هستید، این یک انتخاب عالی است.

نمایشگر گزارش حسابرسی امنیتی

13. امنیت پایگاه داده

چند راه برای بهبود امنیت در پایگاه داده وردپرس شما وجود دارد. اولین مورد استفاده از یک نام پایگاه داده هوشمندانه است. اگر نام سایت شما ترفندهای والیبال است، به طور پیش فرض پایگاه داده وردپرس شما به احتمال زیاد نام دارد wp_volleyballtricks. با تغییر نام پایگاه داده خود به نام مبهم تر، به محافظت از سایت شما کمک می کند و شناسایی و دسترسی به جزئیات پایگاه داده شما را برای هکرها دشوارتر می کند.

توصیه دوم استفاده از پیشوند جدول پایگاه داده متفاوت است. به طور پیش فرض وردپرس از wp_. تغییر آن به چیزی شبیه به آن 39xw_ می تواند بسیار امن تر باشد. هنگامی که وردپرس را نصب می کنید، یک پیشوند جدول می خواهد (همانطور که در زیر مشاهده می کنید). همچنین راه هایی برای تغییر پیشوند جدول وردپرس در نصب های موجود وجود دارد.

پیشوند جدول وردپرس

14. همیشه از اتصالات امن استفاده کنید

ما نمی توانیم به اندازه کافی تاکید کنیم که استفاده از اتصالات امن چقدر مهم است! اطمینان حاصل کنید که وردپرس شما میزبان آن با اقدامات احتیاطی مانند ارائه SFTP یا SSH است. پروتکل SFTP یا Secure File Transfer Protocol (همچنین به عنوان پروتکل انتقال فایل SSH شناخته می شود)، یک پروتکل شبکه ای است که برای انتقال فایل استفاده می شود. این یک روش امن تر در مقایسه با FTP استاندارد است.

همچنین مهم است که مطمئن شوید روتر خانگی شما به درستی تنظیم شده است. اگر شخصی شبکه خانگی شما را هک کند، می‌تواند به انواع اطلاعات، از جمله جایی که اطلاعات مهم شما در مورد سایت(های) وردپرس شما ذخیره می‌شود، دسترسی پیدا کند. در اینجا چند نکته ساده وجود دارد:

  • مدیریت از راه دور را فعال نکنید. کاربران معمولی هرگز از این ویژگی استفاده نمی کنند و با خاموش نگه داشتن آن می توانید شبکه خود را در معرض دنیای خارج قرار ندهند.
  • روترها به طور پیش فرض از IP هایی در محدوده ای مانند 192.168.1.1 استفاده می کنند. از محدوده متفاوتی مانند 10.9.8.7 استفاده کنید.
  • بالاترین سطح رمزگذاری را در Wifi خود فعال کنید.
  • IP Wifi خود را در لیست سفید قرار دهید تا فقط افرادی که رمز عبور و IP خاصی دارند بتوانند به آن دسترسی داشته باشند.
  • سیستم عامل روتر خود را به روز نگه دارید.

و همیشه هنگام ورود به سایت وردپرس خود در مکان های عمومی مراقب باشید. به یاد داشته باشید، استارباکس یک شبکه امن نیست! قبل از اینکه روی اتصال کلیک کنید، اقدامات احتیاطی مانند تأیید SSID شبکه را انجام دهید.

15. مجوزهای فایل و سرور را بررسی کنید

مجوزهای فایل در نصب و سرور وب شما برای تقویت امنیت وردپرس شما بسیار مهم است. اگر مجوزها خیلی آزاد باشند، شخصی می تواند به راحتی به سایت شما دسترسی پیدا کند و ویران کند. از طرف دیگر، اگر مجوزهای شما خیلی سخت باشد، این می تواند عملکرد سایت شما را مختل کند. بنابراین مهم است که مجوزهای صحیح را در سراسر صفحه تنظیم کنید.

مجوزهای فایل

  • در صورتی که کاربر حق خواندن فایل را داشته باشد، مجوز خواندن  اختصاص داده می شود.
  • در صورتی که کاربر حق نوشتن یا تغییر فایل را داشته باشد، مجوزهای نوشتن به آنها اختصاص داده می شود.
  • در صورتی که کاربر حق اجرای فایل و/یا اجرای آن را به صورت اسکریپت داشته باشد، مجوزهای اجرا به آنها اختصاص داده می شود.

مجوزهای دایرکتوری

  •  در صورتی که کاربر حق دسترسی به محتویات پوشه/دایرکتوری شناسایی شده را داشته باشد، مجوزهای خواندن اختصاص داده می شود.
  • در صورتی که کاربر حق اضافه کردن یا حذف فایل‌هایی را که در داخل پوشه/دایرکتوری قرار دارند، داشته باشد، مجوزهای نوشتن اختصاص داده می‌شود.
  • در صورتی که کاربر حق دسترسی به دایرکتوری واقعی و اجرای توابع و دستورات، از جمله توانایی حذف داده های داخل پوشه/دایرکتوری را داشته باشد، مجوزهای اجرا به آنها اختصاص داده می شود.

می توانید از یک افزونه رایگان مانند iThemes Security برای اسکن مجوزهای سایت وردپرس خود استفاده کنید.

اسکن مجوزهای فایل وردپرس

در اینجا چند توصیه معمول برای مجوزها در مورد مجوزهای پرونده و پوشه در وردپرس وجود دارد. برای توضیح بیشتر به مقاله Codex WordPress در مورد تغییر مجوزهای فایل مراجعه کنید .

  • همه فایل ها باید 644 یا 640 باشند. استثنا: wp-config.php باید 440 یا 400 باشد تا دیگر کاربران روی سرور نتوانند آن را بخوانند.
  • همه دایرکتوری ها باید 755 یا 750 باشند.
  • به هیچ دایرکتوری نباید ۷۷۷ داده شود، حتی دایرکتوری های آپلود.

16. ویرایش فایل را در داشبورد وردپرس غیرفعال کنید

بسیاری از سایت های وردپرسی دارای چندین کاربر و مدیر هستند که می تواند امنیت وردپرس را پیچیده تر کند. یک روش بسیار بد این است که به نویسندگان یا مشارکت کنندگان دسترسی سرپرست داده شود ، اما متأسفانه، همیشه این اتفاق می افتد. مهم است که به کاربران نقش ها و مجوزهای صحیح بدهید تا چیزی را خراب نکنند. به همین دلیل، غیرفعال کردن “ویرایشگر ظاهر” در وردپرس می تواند مفید باشد.

احتمالاً اکثر شما در یک نقطه یا نقطه دیگر آنجا بوده اید. شما می روید به سرعت چیزی را در Appearance Editor ویرایش کنید و ناگهان با صفحه سفید مرگ روبرو می شوید. خیلی بهتر است فایل را به صورت محلی ویرایش کنید و از طریق FTP آپلود کنید. و البته، در بهترین عمل، ابتدا باید مواردی مانند این را در یک سایت توسعه آزمایش کنید.

ویرایشگر ظاهر وردپرس

همچنین، اگر سایت وردپرس شما هک شده باشد، اولین کاری که ممکن است انجام دهند این است که سعی کنند یک فایل یا قالب PHP را از طریق ویرایشگر ظاهر ویرایش کنند. این یک راه سریع برای آنها برای اجرای کدهای مخرب در سایت شما است. اگر آنها از داشبورد به این دسترسی نداشته باشند، برای شروع، می تواند به جلوگیری از حملات کمک کند. کد زیر را در wp-config.phpفایل خود قرار دهید تا قابلیت های ‘edit_themes’، ‘edit_plugins’ و ‘edit_files’ همه کاربران حذف شوند.

define('DISALLOW_FILE_EDIT', true);

17. جلوگیری از Hotlinking

مفهوم hotlinking بسیار ساده است. شما یک تصویر را در اینترنت در جایی پیدا می کنید و از URL تصویر مستقیماً در سایت خود استفاده می کنید. این تصویر در وب سایت شما نمایش داده می شود اما از محل اصلی ارائه می شود. این در واقع دزدی است زیرا از پهنای باند سایت هات لینک شده استفاده می کند. این ممکن است به نظر مشکل بزرگی نباشد، اما می تواند هزینه های اضافی زیادی ایجاد کند.

Huffington یک مثال عالی است. هافینگتون پست یک کارتونی از او را که از چندین تصویر تشکیل شده بود لینک داد و اسکناس فوق العاده 1000 دلاری به دست آورد.

صورت حساب هات لینکینگ

جلوگیری از Hotlinking در آپاچی

برای جلوگیری از هات لینک در آپاچی کافی است کد زیر را به .htaccessفایل خود اضافه کنید.

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://dropbox.com/hotlink-placeholder.jpg [NC,R,L]

ردیف دوم ارجاع دهنده مجاز را تعریف می کند – سایتی که مجاز است مستقیماً به تصویر پیوند دهد، این باید وب سایت واقعی شما باشد. اگر می خواهید چندین سایت را مجاز کنید، می توانید این ردیف را کپی کرده و ارجاع دهنده را جایگزین کنید. اگر می‌خواهید قوانین پیچیده‌تری ایجاد کنید، نگاهی به این ژنراتور حفاظتی htaccess بیندازید.

جلوگیری از Hotlinking در NGINX

برای جلوگیری از hotlinking در NGINX کافی است کد زیر را به فایل پیکربندی خود اضافه کنید.

location ~ .(gif|png|jpe?g)$ {
valid_referers none blocked ~.google. ~.bing. ~.yahoo yourdomain.com *.yourdomain.com;
if ($invalid_referer) {
return 403;
}
}

جلوگیری از Hotlinking در CDN

اگر تصاویر خود را از CDN ارائه می کنید، ممکن است تنظیمات کمی متفاوت باشد. در اینجا منابعی با ارائه دهندگان محبوب CDN آورده شده است.

18. همیشه پشتیبان بگیرید

پشتیبان‌گیری تنها چیزی است که همه می‌دانند به آن نیاز دارند، اما همیشه از آن استفاده نمی‌کنند. بیشتر توصیه‌های بالا اقدامات امنیتی هستند که می‌توانید برای محافظت بهتر از خود انجام دهید. اما مهم نیست که سایت شما چقدر امن باشد، هرگز 100% امن نخواهد بود. بنابراین در صورت وقوع بدترین اتفاق، می‌خواهید نسخه پشتیبان تهیه کنید.

اگر هاست شما پشتیبان ندارد، برخی از خدمات و افزونه های محبوب وردپرس وجود دارد که می توانید از آنها برای خودکارسازی فرآیند استفاده کنید.

افزونه های پشتیبان گیری وردپرس

افزونه های پشتیبان وردپرس به شما این امکان را می دهند که از طریق FTP نسخه پشتیبان تهیه کنید یا با منبع ذخیره سازی خارجی مانند Amazon S3، Google Cloud Storage، Google Drive یا Dropbox ادغام کنید. ما به شدت توصیه می کنیم با یک راه حل افزایشی بروید تا از منابع کمتری استفاده کنید.

19. حفاظت از DDoS

DDoS نوعی از حملات DOS است که در آن از چندین سیستم برای هدف قرار دادن یک سیستم استفاده می شود که باعث حمله انکار سرویس (DoS) می شود. حملات DDoS چیز جدیدی نیستند – طبق گفته بریتانیکا، اولین مورد مستند به اوایل سال 2000 برمی گردد. برخلاف کسی که سایت شما را هک می کند، این نوع حملات معمولاً به سایت شما آسیب نمی رسانند، بلکه به سادگی سایت شما را برای چند ساعت یا چند روز از کار می اندازند

برای محافظت از خودت چه کاری میتوانی انجام دهی؟ یکی از بهترین توصیه ها استفاده از یک سرویس امنیتی شخص ثالث معتبر مانند Cloudflare  یا Sucuri است. اگر کسب‌وکاری را اداره می‌کنید، سرمایه‌گذاری در برنامه‌های برتر آن‌ها منطقی است.

محافظت DDoS در برابر Cloudflare و Sucuri

حفاظت پیشرفته DDoS آنها را می توان برای کاهش حملات DDoS در همه اشکال و اندازه ها از جمله حملاتی که پروتکل های UDP و ICMP را هدف قرار می دهند و همچنین SYN/ACK، تقویت DNS و حملات لایه 7 مورد استفاده قرار داد. مزایای دیگر شامل قرار دادن شما در پشت یک پروکسی است که به پنهان کردن آدرس IP اصلی شما کمک می کند، اگرچه ضد گلوله نیست.

بررسی حملات DDoS

حتماً مطالعه زیر را در مورد چگونگی توقف حمله DDoS بررسی کنید. ما یک مشتری با یک سایت تجارت الکترونیک کوچک داشتیم که Easy Digital Downloads را اجرا می کرد و در عرض 7 روز بیش از 5 میلیون درخواست را در یک صفحه دریافت کرد . این سایت معمولاً تنها بین 30 تا 40 مگابایت در روز از پهنای باند و چند صد بازدید کننده در روز تولید می کند. اما بدون شک، سایت فوراً به بین 15-19 گیگابایت انتقال داده در روز رفت! این  افزایش 4650 درصدی است. و گوگل آنالیتیکس هیچ ترافیک اضافی نشان نداد. پس این خوب نیست.

پهنای باند بالا ناشی از حمله DDoS

مشتری فایروال برنامه وب Sucuri را در سایت خود پیاده سازی کرد و تمام پهنای باند و درخواست ها فوراً در سایت کاهش یافت (همانطور که در زیر مشاهده می کنید) و از آن زمان تاکنون هیچ مشکلی وجود نداشته است. بنابراین اگر با چنین مسائلی روبرو هستید، قطعاً یک سرمایه گذاری و صرفه جویی در زمان خوبی است.

فایروال برنامه وب Sucuri اضافه شد

خلاصه

همانطور که می بینید، راه های زیادی وجود دارد که می توانید امنیت وردپرس خود را تقویت کنید. استفاده از رمزهای عبور هوشمندانه، به روز نگه داشتن هسته و افزونه ها، و انتخاب یک هاست مدیریت شده ایمن وردپرس تنها مواردی هستند که سایت وردپرس شما را ایمن نگه می دارند. برای بسیاری از شما، سایت وردپرس شما هم کسب و کار و هم درآمد شماست، بنابراین مهم است که کمی وقت بگذارید و برخی از بهترین شیوه های امنیتی ذکر شده در بالا را زودتر اجرا کنید.

آیا نکات امنیتی مهمی در وردپرس وجود دارد که از قلم انداخته باشیم؟ اگر چنین است، در نظرات زیر به ما اطلاع دهید.

.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *