ایمن نگاه داشتن سیستم مدیریت محتوای وردپرس بسیار حائز اهمیت است چرا که وبمسترها باید اطمینان حاصل کنند که سایت تا حد ممکن آسیبپذیر نیست، اطلاعات در جای امنی ذخیره شدهاند و وبسایت یا وبلاگ ایشان از پرفورمنس خوبی برخوردار است که در همین راستا در ادامه با یکسری روشهای حفظ امنیت در این سیستم مدیریت محتوای پرطرفدار آشنا خواهیم شد.
امنیت کاربری
یکی از بخش کلیدی که هکرها تلاش میکنند به آن دسترسی پیدا کنند، ادمین پنل وردپرس است. اگر کاربری این امکان را داشته باشد تا با پِرمیشنهای ادمین وارد سایت شود، به تمامی قسمتهای پیشخوان مدیریت سایت دسترسی خواهد داشت که در این ارتباط برخی مجرمین سایبری ممکن است از طریق یک باتنت تلاش کنند تا به طور مکرر با استفاده از ترکیب یوزرنیم و پسوردهای گوناگون وارد سایت شوند. به منظور کاهش میزان آسیبپذیری احتمالی سایت، میتوانید امنیت ادمین پنل وردپرس را با رعایت نکات زیر بهبود ببخشید:
- از نام کاربری و رمزعبور منحصربهفرد و ایمن استفاده کنید: از نام کاربری پیشفرض «admin» هرگز استفاده نکنید و اگر در گذشته این نام کاربری را انتخاب کردهاید، میتوانید با استفاده از پلاگینهایی مانند Username Changer، نام کاربری خود را به یک یوزرنیم امنتر تغییر دهید یا میتوانید یک حساب کاربری دیگر با دسترسیهای ادمین ایجاد کنید و نام کاربری قبلی را محدود کنید. توجه داشته باشید که از به کار بردن سایر یوزرنیمهای مشابه و یا قابلحدس مثل «administrator»، نام سایت و یا نام خودتان نیز اجتناب کنید.
در ارتباط با انتخاب رمزعبور، بهتر است که از پسوردی متشکل از اعداد، حروف و کاراکترهای گوناگون استفاده کنید. از انتخاب رمزعبوری مشابه نام کاربری، نام سایت یا نام خودتان و یا کلماتی ساده با تعداد حروف کم نیز اجتناب کنید مضاف بر اینکه سعی کنید از کلمات فرهنگ لغت استفاده نکنید و ترکیبی از کاراکترها را به صورت اتفاقی به عنوان رمزعبور انتخاب نمایید (همچنین با استفاده از یک ابزار مدیریت پسورد میتوانید رمزعبورهایی ایمن و پیچیده انتخاب کنید و آنها را امن نگاه دارید که در همین رابطه توصیه میکنیم به مقالهٔ چگونه یک پسورد امن انتخاب کنیم؟ مراجعه نمایید.)
- استفاده از فناوری احراز هویت دو مرحلهای: احراز هویت دو مرحلهای یا اصطلاحاً 2FA برای ورود به سایت، علاوه بر نام کاربری و رمزورود، کدی منحصربهفرد را از کاربر درخواست میکند که این کد تنها برای یک بار استفاده تولید شده و به دیوایسی که معمولاً موبایل است از طریق اساماس یا یک اپلیکیشن ارسال میشود.
- هویت کاربر را بررسی کنید: فرمهای reCAPTCHA که از کاربر درخواست میکنند تا نوشتهای که در تصویر میبینند را ارسال کنند، یک روش بسیار مفید برای پیشگیری از حملات Brute-force باتنتها برای ورود به سایت است. باتنتها معمولاً نمیتوانند به طور خودکار این قسمت از مرحلهٔ ورود به سایت را انجام دهند و از همین روی از دسترسی آنها به سایت جلوگیری میشود.
- حفاظت از پسورد با wp-login.php: اگر توسعهدهنده یا کاربر پیشرفتهٔ وردپرس هستید و با تغییرات سمت سرور مشکلی ندارید، میتوانید درخواست لاگین سمت سرور کنید قبل از اینکه صفحهٔ ادمین پنل وردپرس نمایش داده شود.
امنیت کدها
فرقی نمیکند که خودتان در حال توسعهٔ پوسته یا پلاگینی برای وردپرس باشید یا از تِم و پلاگینهای آماده استفاده کنید زیرا تحت هر شرایطی باید مراقب امنیت کدها باشید تا راه را برای ورود هکرها باز نکنید. کدهای ناامن موجب میشوند که هکرها به تمام یا بخشی از سایت وردپرستان دسترسی پیدا کنند اما با استفاده از نکات زیر میتوانید دربارهٔ درستی و امنیت کدها اطمینان حاصل کنید:
- وردپرس را آپدیت نگاه دارید: میتوانید با افزودن کد زیر به فایل wp-config.php
، قابلیت آپدیت خودکار نسخههای اصلی را به وردپرس اضافه کنید:
define( 'WP_AUTO_UPDATE_CORE', true );
گرچه این کار راهحل و ایدهٔ خوبی به نظر میرسد اما ممکن است شما را با مشکلاتی مانند ناسازگاری قالبها یا پلاگینهایی که پیش از این استفاده میکردید با ورژن جدید وردپرس مواجه سازد که در همین راستا بهتر است همیشه محیطی برای تست و بررسی چنین مواردی در اختیار داشته باشید.
- دقت در انتخاب قالبها و پلاگینها: قالبها و افزونههایی را انتخاب کنید که به طور مرتب بهروزرسانی میشوند. گرچه این استراتژی امنیت سایت شما را به طور کامل تضمین نمیکند اما این اطمینان را میدهد تا در صورت وجود آسیبپذیری امنیتی در یک قالب یا افزونه، به سرعت بهروزرسانی و اصلاح میشود.
- توسعهٔ قالبها و افزونهها: فرقی نمیکند که در استفاده از وردپرس تازهکار باشید یا مدت زیادی است که به توسعهٔ پلاگینها و قالبهای آن مشغول هستید، به هر حال بهتر است که از شیوههای کلیدی حفظ امنیت وردپرس استفاده کنید که برای این منظور میتوانید از Defensive Programming استفاده کنید.
امنیت میزبانی
به غیر از نصب ایمن وردپرس و بهبود مرحلهٔ احراز هویت کاربر و نیز اطمینان حاصل کردن از کیفیت و امنیت کدها، یکی دیگر از موارد مهمی که باید به آن توجه کنید، استفاده از یک میزبانی امن با پشتیبانی خوب است که در این رابطه بهتر است نکات زیر را همواره مد نظر داشته باشیم:
- در انتخاب شرکت هاستینگ دقت کنید: شرکتهای متعددی وجود دارند که میزبانی مدیریت شدهٔ وردپرس را در اختیار شما قرار میدهند. به طور مثال، برخی از این شرکتها به صورت خودکار جلوی حملات DoS و DDoS و دیگر انواع آسیبپذیریها را میگیرند که برای کسب اطلاعات بیشتر در این رابطه، میتوانید به آموزش آشنایی با مفهوم هاستینگ و معیارهای انتخاب یک شرکت وب هاست خوب مراجعه نمایید.
- اجازهٔ دسترسی به فایلها و فولدرها را بررسی کنید: اگر از یک میزبانی حرفهای سایت استفاده کنید، ضروری است که از درستی پِرمیشن فایلها و پوشههای وردپرس اطمینان حاصل کنید به طوری که این کار از سوءاستفادهٔ هکرها از فایلهایی که از امنیت بالایی برخوردار نیستند، جلوگیری به عمل میآورد.
پوشههای وردپرس باید دارای پرمیشن 755 و فایلهای وردپرس باید دارای پرمیشن 644 باشند که این از یک هاست به هاست دیگر متفاوت است. اگر به هنگام نصب افزونهها یا آپلود یک فایل با پیغام خطا مواجه میشوید، هرگز مجوز دسترسی به هیچ پوشهای را به 777 تغییر ندهید و اگر دارای دسترسی شِل هستید، میتوانید با اجرای این دستورات از امنیت وردپرس اطمینان حاصل کنید:
find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \;
find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \;
- ایمنسازی سمت سرور: اگر از کاربران حرفهای وردپرس هستید و میزبانی وب را خودتان مدیریت میکنید، اطمینان پیدا کنید که کاربر دیتابیس شما تنها به پرمیشنهای SELECT ،INSERT ،UPDATE و DELETE دسترسی دارد به علاوه اینکه برای دیتابیس از نامکاربری و رمزعبور قوی استفاده کنید و در نهایت با اضافه کردن کد زیر به فایل wp-config.php
، اجازهٔ ویرایش فایل در سمت سرور را از کاربران بگیرید:
define('DISALLOW_FILE_EDIT', true);
جمعبندی
در این مقاله با یکسری نکات دربارهٔ روشهای حفظ امنیت در وردپرس، از تشخیص هویت کاربر تا روشهایی با استفاده از کدنویسی و تنظیمات مرتبط با میزبانی، آشنا شدیم اما در عین حال یکی دیگر از راهکارهایی که برای حفظ امنیت وردپرس پیش روی شما است، استفاده از پلاگینهای امنیتی نظیر WordFence یا BulletProof Security است. پلاگینهای متعددی وجود دارند که هر کدام نقاط قوت و ضعف خود را دارند که قبل از انتخاب میبایست تحقیق کنید تا پلاگینی که پاسخگوی نیازهای شما است را بیابید. همچنین نکاتی مطرحشده در مقالات زیر نیز میتواند در این رابطه مفید واقع گردد:
- نکاتی که رعایت آنها در حین توسعهٔ وردپرس الزامی است
- آشنایی با ۶ استراتژی که ضریب امنیتی برنامههای تحت وب را بالا خواهد برد
همواره به یاد داشته باشید که پیشگیری بهتر از درمان است. یک اشتباه کوچک کافی است تا اطلاعاتتان را با نصب یک نسخهٔ هکشده از دست بدهید و از همین روی نصب یک سرویس پشتیبانگیری از وردپرس ضروری است که برای کسب اطلاعات بیشتر میتوانید به مقالهٔ معرفی ۵ پلاگین کاربردی برای بکاپگیری از سایتهای وردپرسی مراجعه نمایید.
حال نوبت به نظرات شما میرسد. به غیر از موارد فوق چه راهکارهای دیگری برای افزایش امنیت وبسایتهایی که با سیستم مدیریت محتوای Wordpress طراحی شدهاند مد نظر دارید؟ نظرات، دیدگاهها و تجربیات خود را با سایر کاربران سکان آکادمی به اشتراک بگذارید.