How to make your wordpress website secure

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

انتخاب میزبان (HOST) مطمئن

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

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

در بروزرسانی های دوره‌ای که وردپرس منتشر می کند؛ برطرف کردن مشکلات، رفع حفره های امنیتی و آسیب پذیری‌ها یا اضافه کردن ویژگی های جدید مورد توجه است. پس همیشه وردپرس خود را بروز نگاه دارید. برای اطمینان از بروزرسانی ها می توانید با اضافه کردن کد زیر در فایل wp-config.php آنها را بصورت خودکار دریافت کنید.

define ( 'WP_AUTO_UPDATE_CORE', true );

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

شاید برای آن دسته از افرادی که وردپرس خود را بروز نگاه می دارند اعمال این تغییر الزامی نباشد. اما برای مطمئن شدن از اینکه وجود آسیب‌پذیری در یک نسخه از وردپرس باعث سواستفاده نشود با اضافه کردن کد زیر در فایل function.php پوسته خود می‌توانید آن را مخفی کنید.

remove_action( 'wp_head', 'wp_generator' );

غیرفعال کردن ویرایشگر پوسته و افزونه

ویرایشگر پوسته و افزونه‌ی موجود در پیشخوان وردپرس در صورت نفوذ به یک حساب کاربری ممکن است باعث از دسترس خارج شدن سایت شود. برای غیرفعال کردن ویرایشگر، کد زیر را در فایل wp-config.php وارد نمایید.

define( 'DISALLOW_FILE_EDIT', true );

فعال کردن SSL در وبسایت

فعال کردن پروتکل SSL برای هر وبسایت امری ضروری است. SSL برای انتقال امن اطلاعات مورد استفاده قرار می گیرد. با فعال کردن آن نشانی سایت شما از http://dangoweb.ir به https://dangoweb.ir تغییر پیدا می کند. هم اکنون بیشتر میزبانان وب این ویژگی را بصورت رایگان برای سایتهای زیرمجموعه خود فعال می کنند. پس از فعالسازی می توانید از آموزش تغییر مسیر از http به https برای انتقال نشانی استفاده کنید.

تهیه پشتیبان بصورت منظم

مطمئن شوید که به صورت دوره‌ای و منظم از سایت وردپرس خود پشتیبان تهیه می‌کنید. در دسترس بودن یک پشتیبان از داده ها می تواند خیال شما را بابت از دست دادن اطلاعات خود راحت کند! برای اینکار می توانید از افزونه‌های پشتیبان‌گیری مانند All-in-One WP Migration استفاده کنید.

بروزرسانی افزونه‌ها و پوسته‌ها

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

add_filter( 'auto_update_plugin', '__return_true' )
add_filter( 'auto_update_theme', '__return_true' );

نکته: البته از نسخه ۵.۵ وردپرس ویژگی بروزرسانی خودکار برای هسته (وصله های امنیتی) و همچنین افزونه ها و پوسته ها اضافه شده که با فعالسازی هریک می توان بدون بررسی های دوره ای و استفاده از کدهای بالا، آن ها را بروزرسانی کرد.

حذف افزونه‌ها و پوسته‌های بی‌مصرف

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

تغییر افزونه‌های تاریخ گذشته

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

استفاده نکردن از افزونه و پوسته تجاری رایگان!

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

نام کاربری admin را انتخاب نکنید!

بارها دیده شده در هنگام ساخت نام کاربری برای مدیریت از نام کاربری متداول admin استفاده می شود. حدس این نام کاربری برای نفوذ کننده بسیار آسان می باشد پس سعی کنید نام کاربری مناسبی انتخاب کنید.

پیشنهاد: کاربری با نام کاربری admin بسازید و نقش کاربری آن را مشترک قرار دهید.

گذرواژه ایمن استفاده کنید

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

پیشنهاد: سعی کنید بصورت دوره‌ای گذروازه‌تان را تغییر دهید.

استفاده از کپتچا در فرم‌ها

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

محدود کردن تلاش برای ورود

با این محدودیت امکان سواستفاده نفوذگر در صورت آزمایش گذرواژه و حدس زدن آن به حداقل خواهد رسید. مثلا می توان با دو تلاش غیرموفق از طریق فرم ورود، آی‌پی مورد نظر را مسدود کرد. برای اینکار می توان از افزونه‌هایی نظیر WP Limit Login Attempts بهره برد.

پیگیری رفتار کاربران

پیگیری کردن اعمال کاربر در سایت یکی از ظرفیت هایی است که می توان از آن برای افزایش امنیت و همچنین کنترل درخواست ها استفاده کرد. در این زمینه می توان افزونه WP Security Audit Log را پیشنهاد کرد. این افزونه با ثبت و ضبط رفتار کاربر می تواند بخوبی مدیریت را از وقایع موجود در سایت باخبر سازد.

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

دیدگاه