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

آخرین بروزرسانی : ۲۳ مهر ۱۴۰۳
افزونه المنتور پرو

کاملاً اورجینال با قابلیت آپدیت خودکار در پنل پیشخوان وردپرس

در این نوشته شما می خوانید

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

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

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

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

 چک لیست امنیتی محافظت از فایل wp-config

فایل wp-config، فایل پیکربندی وردپرس است که مشخصات پایگاه داده سایت و اطلاعات مهم دیگر در آن ذخیره می شود. اهمیت بالای این فایل باعث می شود که هدف حمله بسیاری از فایل های مخرب و هکرها قرار بگیرد؛ برای محافظت از این فایل اقدامات زیر پیشنهاد می شود:

تغییر محل فایل : فایل wp-config به طور پیش فرض در روت یا ریشه وبسایت قرار دارد؛ شما میتوانید مسیر فایل را به محل دیگری منتقل کنید اما فراموش نکنید که باید یک فایل wp-config دیگر در همان محل اصلی بسازید و آدرس فایل اصلی را به ترتیب زیرداخل آن وارد کنید (آدرس فایل wp-config اصلی را در خط دوم کد جایگزین کنید):
define(‘ABSPATH’, dirname(__FILE__) . ‘/’);
require_once(ABSPATH . ‘../path /wp-config.php’);

محدودسازی دسترسی: یک اقدام هوشمندانه برای محافظت از این فایل مهم، تغییر سطح دسترسی است. شما میتوانید هم از طریق کنترل پنل هاست permission یا دسترسی را روی read قرار دهید و هم اینکه با واردکردن کدهای محدودکننده یا deny در فایل .htaccess به این هدف برسید.

کنترل کلیدهای امنیتی و SALTها: به صورت خودکار در هنگام نصب و فعالسازی وردپرس داخل فایل wp-config کلیدهای امنیتی ایجاد شده و توسط هسته وردپرس جهت رمزگذاری استفاده می شوند. گاهی این کلیدها ایجاد نمی شوند یا اینکه شما قصد دارید برای حفظ امنیت کلیدهای جدیدی در فایل wp-config  قرار دهید. برای این منظور وارد لینک زیر شوید:
https://api.wordpress.org/secret-key/1.1/salt/

چک لیست امنیتی محافظت از پوشه wp- admin

چک لیست امنیتی محافظت از پوشه wp- admin

پوشه wp-admin همان پیشخوان وردپرس شماست. همین یک جمله نشاندهنده اهمیت بالای این پوشه و لزوم حفظ امنیت این بخش از وبسایت وردپرسی است؛ در صورت نفوذ به این بخش امکان بروز آسیب به تمامی وبسایت شما وجود دارد.

استفاده از نام کاربری و رمز عبور قوی و تغییر مداوم آن: اگر از آن دسته از افرادی هستید که نام کاربری را admin و پسوورد را 12345 قرار میدهید؛ وبسایت شما امنیت خیلی پایینی دارد! در نام کاربری و رمز عبور خود حتما از ترکیبی از اعداد و حروف و علائم مختلف استفاده کنید.

فعالسازی ورود دو مرحله ای: ورود یا احراز هویت دومرحله ای به پیشخوان وردپرس معمولا از طریق ارسال پیامک تایید شماره همراه یا لینک تایید ایمیل انجام می شود. علاوه بر این، افزونه wordfence نیز امکانی تحت عنوان Two-Factor Authentication دارد که برای همین هدف استفاده می شود.

تغییر url ورود به wp-admin: شاید قبلا با افزونه هایی که صفحه ورود به پیشخوان را تغییر می دهند آشنا شده باشید. با کمک این افزونه ها می توانید یک نام دلخواه به جای آدرس همیشگی ورود به پیشخوان وردپرس درنظر بگیرید. اگر کاربر حرفه ای وردپرس هستید می توانید راه حل دستی را هم امتحان کنید؛ وارد هاست شوید و نام فایل wp-login.phpرا به نام دلخواه تغییر دهید. بعد فایل را ادیت کنید و هرجا wp-login.php وجود دارد با نام دلخواه خود جایگزین کنید. حالا بعد از این می توانید با اضافه کردن نام دلخواه خود به انتهای url سایت وارد پیشخوان وردپرس شوید.

قفل گذاری روی پوشه wp-admin :

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

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

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

مخفی کردن نام کاربری

اگر مشابه تصویر بالا نام کاربری را درست وارد کنید و رمز عبور صحیح نباشد؛ وردپرس چنین پیغامی نمایش می دهد که باعث لو رفتن نام کاربری شما می شود. برای تغییر این پیغام می توانید کد زیر را در فایل functions.php قالب خود قرار دهید:
function es_error_login(){

return ‘نام کاربری و پسورد اشتباه است یا خطایی رخ داده است’;

}

add_filter( ‘login_errors’, ‘es_error_login’ );

فعالسازی captcha برای صفحه ورود به wp-admin : با کمک افزونه advanced google recaptcha و استفاده از sitekey و secretkey گوگل می توانید reCAPTCHA را برای فرم های ورود، عضویت و به طور کلی همه فرم های سایت فعال کنید.

فعالسازی captcha برای صفحه ورود به wp-admin

چک لیست امنیتی محافظت از وردپرس

چک لیست امنیتی محافظت از وردپرس

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

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

مخفی سازی ورژن وردپرس: هسته وردپرس به صورت مداوم در حال بروزرسانی و انتشار نسخه های جدید است. برخی از ورژن های وردپرس امکان دارد که باگ های امنیتی داشته باشند. اگر هکر ورژن وردپرس شما را پیدا کند؛ می تواند از نقاط ضعف سایت شما برای شکستن حصار امنیتی وبسایت شما استفاده کند. برای مخفی سازی ورژن وردپرس می توانید از افزونه های WP Hide & Security Enhancer و WP Hardening و کد زیر در فایل php قالب استفاده کنید:

function test_remove_version() {return ”;} add_filter(‘the_generator’, ‘test_remove_version’);

بستن دسترسی Rest Api: RestApi یک قابلیت مفید کاربردی است که توسعه دهندگان وردپرس با کمک آن ارتباط مناسبی میان اپلیکیشن و سایت های دیگر با وبسایت وردپرسی ایجاد می کنند. جدا از این قابلیت های مهم، هکرها می توانند از دسترسی های RestApi برای نفوذ به سایت شما استفاده کنند؛ بنابراین اگر از این قابلیت استفاده نمی کنید حتما با استفاده از کدنویسی یا افزونه هایی مثل Disable REST API این قابلیت را غیرفعال کنید.

فعالسازی پروتکل https یا SSL : فعالسازی پروتکل https روی وبسایت ها درحال حاضر به یکی از الزامات اصلی تبدیل شده که علاوه بر امنیت برای سئو وبسایت شما نیز حائز اهمیت است.

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

اعمال محدودیت در ویرایش فایلها: زمانی که طراحی و آماده سازی وبسایت به پایان رسید، دلیلی ندارد که امکان ویرایش فایل های قالب و افزونه برای همه افراد امکانپذیر باشد. با اضافه کردن کد زیر به فایل wp-config.php می توانید امکان تغییر فایل ها را از بین ببرید.
define( ‘DISALLOW_FILE_EDIT’, true );

غیر فعالسازی XML-RPC: این فایل شامل ویژگی هایی است که امکان ارتباط با وبسایت وردپرسی شما را از طریق تلفن همراه و دیگر سیستم ها را امکانپذیر می کند. فعال بودن این فایل می تواند نگرانی هایی را از لحاظ امنیتی برای وبسایت ایجاد کند (خطر حملات بروت فروس و DDos). برای غیرفعالسازی این فایل علاوه بر استفاده از افزونه disable XML-RPC می توانید از کدنویسی و اعمال محدودیت در فایل htacess نیز اقدام کنید.

چک لیست امنیتی محافظت از افزونه ها

چک لیست امنیتی محافظت از افزونه ها

دانلود و خرید افزونه ها از منابع معتبر: افزونه های رایگان را حتما یا از مخزن وردپرس یا از نشانی https://wordpress.org/plugins/ دانلود کنید. افزونه های پولی یا نسخه پریمیوم را هم یا از وبسایت سازنده و یا از مارکت های ایرانی معتبر و دارای پشتیبانی تهیه کنید. امکان اینکه ارائه دهندگان افزونه نامعتبر، با دستکاری افزونه ها کدهای مخرب یا تبلیغات مزاحم به سایت شما اضافه کنند خیلی زیاد است.

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

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

چک لیست امنیتی محافظت از قالب

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

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

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

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

چک لیست امنیتی محافظت از wp-content

چک لیست امنیتی محافظت از wp-content

کلیه فایلهای رسانه وردپرس، قالب و افزونه های شما در پوشه Wp-content نگهداری می شوند. برخی از سایت ها فایل های تصویری، صوتی یا ویدیویی را منتشر می کنند و برای آنها اهمیت دارد که کاربران قادر به دانلود این فایلها نباشند یا هکرها نتوانند فایل های مخرب در این پوشه قرار دهند.

ممانعت از اجرای کدهای php : پوشه uploads موجود در این پوشه محلی برای نگهداری فایل های رسانه است که نیاز به اجرای کد php ندارد. با قراردادن کدهای مناسب در فایل htaccess می توانید از اجرای کدهای اجرایی در این بخش جلوگیری کنید.

جلوگیری از مرور و نمایش فایل ها: باتوجه به ثابت بودن آدرس ذخیره سازی فایل ها در پوشه wp-content هکرها می توانند به سادگی به پوشه uploads و فایل های رسانه شما دسترسی داشته باشند. با این حال، خوشبختانه می توانید در این مرحله هم محدودیت اعمال کنید. برای این منظور هم از طریق کنترل پنل هاست و هم از طریق اضافه کردن کد در فایل htaccess از مرور دایرکتوری ها توسط کاربران جلوگیری می شود.

چک لیست امنیتی محافظت از دیتابیس

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

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

$table_prefix = ‘wp_’;

تغییر پیشوند جدول در هنگام نصب وردپرس از طریق پنجره زیر انجام می شود:

تغییر جدول دیتابیس در وردپرس

چک لیست امنیتی محافظت از هاست

چک لیست امنیتی محافظت از هاست

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

فعالسازی فایروال سخت افزاری و نرم افزاری روی و آنتی ویروس هاست

مجهز بودن به تدابیری امنیتی مناسب برای مقابله با حملات DDOS : حملات DDos به یک باره با ترافیک خیلی زیادی سایت شما را هدف قرار می دهند. این موضوع خیلی مهم است که هاستیگ بتواند از سایت شما در برابر این حملات محافظت کند.

بکاپ گیری منظم به صورت هفتگی یا روزانه

امکان فعالسازی SSL به صورت رایگان

ارائه تنظیمات کامل در کنترل پنل هاست (چه سی پنل و چه دایرکت ادمین)

پشتیبانی قوی و پاسخگو

کمک گرفتن از یک افزونه‌ امنیتی

تا اینجای آموزش با چک لیست های امنیتی مختلف آشنا شدید؛ علاوه بر همه این موارد نصب و فعالسازی یک افزونه امنیتی مثل یک سرباز 24 ساعته از سایت شما محافظت می کند. افزونه های امنیتی به صورت خودکار از ورود کدهای مخرب جلوگیری می کنند وIP های مشکوک نیز مسدود می شود. معروف ترین افزونه های امنیتی وردپرس wordfence  و all in one WP security هستند که هر دو به شکل مناسبی از سایت شما محافظت می کنند.

جمع بندی

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

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

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