15 راهکار برای برقراری امنیت وردپرس بدون افزونه
۱۵ راهکار برای برقراری امنیت وردپرس بدون افزونه
برقراری امنیت وردپرس یکی از مهمترین کارهایی است که هر طراح سایت و دارندگان سایت باید کاملا به آن واقف باشند. شاید بتوان گفت یکی از بحث های پرطرفدار در انجمن های وردپرسی همین است. روش های زیادی برای تامین امنیت وجود دارد، شما ممکن است از افزونه هایی که برای این کار ساخته شده اند استفاده کنید اما در این مقاله ما به شما ترفندهایی معرفی میکنیم تا شما بتوانید امنیت وبسایت وردپرسی خودتان را بدون هیچ افزونه ای، بالا ببرید.
بیشتر ترفندهایی که در این مقاله ذکر میشوند، مربوط به بخش مدیریت وردپرس میشود اما برای برخی مرحله ها هم نیاز است به سراغ فایل های wp-config.php و .htaccess که به ترتیب مربوط به کانفیگ وردپرس و کانفیگ سرور میشود بریم و تغییراتی در آنها انجام دهیم. شما میتوانید این فایل ها را در پوشه public_html، در مسیری که وردپرس را نصب کردید، پیدا کنید.
۱- بروزرسانی همیشگی
محل: پنل مدیریت وردپرس
تیم امنیتی وردپرس به صورت دائمی مشکلات امنیتی و آسیب پذیری ها را رصد میکنند و هرگاه باگی پیدا شد آن را رفع میکنند و شما باید وردپرس خودتان را آپدیت نگه دارید تا هکرها با این آسیب پذیری ها نتوانند به وبسایت شما آسیب برسانند. دقت کنید که تنها آپدیت خود وردپرس کافی نیست بلکه افزونه هایی که استفاده میکنید نیز باید همیشه به روز باشند.
۲- دسترسی کمتر = امنیت بیشتر
محل: پنل مدیریت وردپرس
صاحبان وبسایت گاهی اوقات به نویسنده ها و دست اندرکاران وبسایت، دسترسی های زیادی میدهند که این میتواند یک مشکل امنیتی جدی ایجاد کند. با توجه به استانداردهای سطح دسترسی هر کاربر باید فقط دسترسی کارهایی که ضروری هستند را داشته باشد. وردپرس برای این کار سیستم مدیریت دسترسی عالی دارد که کاربران را به 5 دسته تقسیم میکند:
-مشترک: فقط میتواند مشخصات خود را مدیریت کند.
-مشارکت کننده: امکان نوشتن و مدیریت پست را دارد اما اجازه انتشار آن را ندارد.
-نویسنده: امکان نوشتن و انتشار مطلب را دارد.
-ویرایشگر: نوشته های کاربران را مدیریت و منتشر میکند.
-ادمین: به تمام ویژگی های مدیریتی وردپرس دسترسی دارد.
دقت کنید که همیشه فقط به کاربرانی که واقعا به آنها اعتماد دارید و در ضمن ضروری است که به ویژگی های مدیریتی دسترسی داشته باشند، مقام ادمین بودن را اعطا کنید. مثلا اگر میخواهید افزونه ها همیشه به روز باشند و…
همیشه میتوانید از این سطوح دسترسی را تغییر دهید.
اگر مایل بودید باز هم امنیت را افزایش دهید از جدول نقش ها و توانایی ها استفاده کنید! و به هر کاربر اندازه ای که برایش ضروری است دسترسی بدهید. این کار سبب میشود که اگر چنانچه حساب کاربری آن فرد هک شد، ضرر کمتری به وبسایت شما برسد.
۳- نام کاربری پیشفرض حساب ادمین را تغییر دهید!
محل: پنل مدیریت وردپرس
نام کاربری ادمین ممکن است مشکلات جدی ایجاد کند از جمله حملات خودکاری که به وبسایت ها میشود. این حملات به دنبال وبسایت هایی میگردند که نام کاربری پیش فرض ادمین تغییر نکرده باشد.
تغییر نام کاربری کار آسانی نیست، زیرا وردپرس اجازه نمیدهد که نام کاربری را از ناحیه پنل مدیریت تغییر دهید. اگرچه شما میتوانید نام کاربری را از طریق دیتابیس عوض کنید اما راه بهتر آن است که یک ادمین جدید بسازید و با استفاده از آن، ادمین قبلی را پاک کنید.
۴- کاربران رده بالا از رمزهای قوی استفاده کنند.
محل: پنل مدیریت وردپرس
استفاده از رمزهای عبور قوی برای کاربران سطح بالا برای امنیت وردپرس بسیار مهم است. هنگامی که یک کاربر جدید ثبت نام می کند، وردپرس به طور پیش فرض رمزهای عبور قوی تولید می کند، اما کاربران می توانند آن را به صورت ضعیف تر تغییر دهند. توجه داشته باشید که کاربران سطح بالا (مدیر و ویرایشگر) باید همیشه از رمزهای عبور قوی استفاده بکنند. اگر می ترسید رمزهای عبور پیچیده را بخاطر بسپارید، به شما یک برنامه مدیریت رمز را پیشنهاد میکنیم!
۵- به طور منظم از محتوای وبسایت، نسخه پشتیبان تهیه کنید.
محل: پنل مدیریت وردپرس
اگر یک وبسایت فعال دارید، محتوای شما مهمترین دارایی شما است. در طی انواع خاصی از حملات، ممکن است پست ها، صفحات، تصاویر و سایر انواع محتوا به خطر بیفتد. بنابراین، هرگز فراموش نکنید که آنها را در دستگاه محلی خود و یا در یک فضای ذخیره سازی ابری ذخیره کنید.
می توانید به راحتی از تمام مطالب خود از طریق Tools> Export در پنل مدیریتی نسخه پشتیبان تهیه کنید. وردپرس با زدن دکمه “بارگیری پرونده بارگیری پرونده” ، یک فایل XML ایجاد می کند که هر زمان که لازم باشد، می توانید با بارگذاری همان فایل XML در صفحه ابزارها> وارد کردن مدیر مدیر، به راحتی محتوای خود را برگردانید.
۶- افزونه ها و پوسته هایی را که استفاده نمیکنید، حذف کنید.
محل: پنل مدیریت وردپرس
صاحبان سایت ها معمولا به پوسته ها و پلاگین هایی که استفاده نمیکنند، توجه نمیکنند و آنها را پاک نمیکنند که همین مورد میتوانید گاهی اوقات مشکلات امنیتی جدی را به سایت وارد کند. هر چه تعداد افزونه های وبسایت بالا برود، آسیب پذیری آن نیز بالا میرود و هر پوسته ای که نصب میکنید ریسک هک وبسایت را بیشتر میکند.
بنابراین فقط پوسته ها و افزونه هایی را که نیاز دارید، نصب کنید. و افزونه ها و تم هایی که استفاده نمیکنید را حتما پاک کنید. به طور خلاصه، مواردی را که غیرفعال هستند را حذف کنید و نگران نباشید! اگر در آینده به آنها احتیاج پیدا کردید میتوانید دوباره آنها را نصب کنید.
۷- به طور منظم از دیتابیس، بکاپ تهیه کنید.
محل: کنترل پنل ( سی پنل یا دایرکت ادمین)
در کنار پشتیبان گیری از محتوای وبسایت، پشتیبان گیری از دیتابیس وبسایت نیز میتواند مفید باشد. پشتیبان گیری از دیتابیس از طریق بخش سی پنل وبسایت انجام میشود، از منوی فایل، گزینه بکاپ را در بخش سی پنل کلیک کنید، اگر مشکلی نباشد میتوانید به سرعت از پایگاه داده های خود پشتیبان بگیرید.
برخی از طرح های هاستینگ نیز دارای پشتیبان گیر اتوماتیک از دیتابیس را دارند که برای آنهایی که این ویژگی برایشان حیاتی است، مناسب به نظر میرسد.
۸- پیشوند جداول دیتابیس خود را تغییر دهید.
محل: wp-config.php
به صورت پیشفرض، وردپرس از wp_prefix برای پیشوند جداول استفاده میکند. برای برقراری امنیت وردپرس شما میتوانید یک پیشوند پیچیده تری استفاده کنید. که این پیشوند را باید در فایل wp-config.php و در قسمت table_prefix$ بنویسید. دقت کنید که شما میتوانید از اعداد، حروف و _ برای پیشوند استفاده کنید.
۹- ورود امن را اجباری کنید!
محل: wp-config.php
اگر شما بتوانید کاربران را مجاب کنید تا از طریق پروتکل امن SSL وارد وبسایت شوند، میتوانید امنیت وردپرس را تا سطح قابل ملاحظه ای افزایش دهید. برای خرید گواهینامه SSL میتوانید از ارائه دهنده هاستینگ بخرید. اگرچه این روزها بیشتر سرویس های هاستینگ این گزینه را رایگان ارائه میدهند.
با داشتن گواهینامه SSL میتوانید ناحیه وردپرس یا کل وبسایت را امن کنید. تنها کافی است در فایل wp-config.php خط زیر را وارد کنید تا کاربران از طریق https:// وارد سایت بشوند:
define( 'FORCE_SSL_ADMIN', true );
۱۰- برای برقراری امنیت وردپرس ویرایش پوسته ها و افزونه ها را غیرفعال کنید.
محل: wp-config.php
به طور پیشفرض کاربرهای ادمین میتوانند پوسته ها و افزونه ها را ویرایش کنند. در یک دنیای کامل و عالی این یک ویژگی خوب است! اما اگر هکر ها بتوانند به اکانت های ادمین ها دسترسی پیدا کنند، میتواند خطرناک به نظر برسد!
با افزودن خط زیر به wp-config.php میتوانید کاری کنید که ویرایشگرهای پوسته و افزونه ها برای ادمین ها غیرفعال شوند:
define( 'DISALLOW_FILE_EDIT', true );
اگر نمیخواهید ویرایشگرها را برای ادمین ها غیرفعال کنید و فقط میخواهید کاری کنید که ادمین ها نتوانند پوسته ها و افزونه ها را آپدیت کنند خط زیر را وارد کنید:
define( 'DISALLOW_FILE_MODS', true );
دقت کنید که هیچوقت از این دو دستور به صورت همزمان استفاده نکنید، اگر میخواهید افزونه ها و پوسته ها آپدیت شوند از دستور اولی و اگر نمیخواهید از دومی استفاده کنید.
۱۱- به HTML های فیلترنشده اجازه انتشار ندهید!
محل: wp-config.php
وردپرس به ادمین ها و ویرایشگر ها اجازه به صورت پیشفرض اجازه میدهد که از کدهای HTML و JavaScript (داخل تگ <script>) از صفحه ها، پست ها، نظرات و … استفاده کنند. گاهی اوقات این ویژگی نیز میتواند خطرساز باشد!
برای برقراری امنیت وردپرس شما میتوانید این ویژگی را نیز از طریق کد زیر در wp-config.php غیرفعال کنید:
define ( 'DISALLOW_UNFILTERED_HTML', true );
این کد باعث میشود که تمام نشانه گذاری های HTML و کدهای JavaScript در متن ها، در نظر گرفته نشوند و پست ها و نظرات به صورت یک متن یک دست دیده شوند.
۱۲- دسترسی به فایل wp-config را محدود کنید.
محل: htaccess.
به صورت پیشفرض هرکسی میتواند به فایل wp-config دسترسی پیدا کنید و این به این معنی است که میتواند تمام اطلاعات پیکربندی را به دست بیاورد که شامل نام دیتابیس، نام کاربری و رمز و … میباشد.
شما با خط کد زیر در فایل .htaccess میتوانید دسترسی به فایل wp-config را محدود کنید:
<Files wp-config.php>
Order Allow,Deny
Deny from all
</Files>
توجه کنید که این تکه کد را داخل تگ <if Module> قرار دهید.
۱۳- دسترسی به تمام فایل های .htaccess را محدود کنید.
محل: htaccess.
همچنین این امکان پذیر است که دسترسی به تمام فایل های .htaccess را در جایی که وردپرس نصب است، محدود کنید. فایل .htaccess شما اطلاعاتی مثل پیکربندی سرور آپاچی را دارد که در هر صورت آنها از طریق مرورگر باز هم قابل مشاهده خواهند بود.
اگر در مرورگر خود http://yoursite.com/.htaccess را تایپ کنید، میبینید که هرکسی به سادگی میتواند به این فایل دسترسی داشته باشد. پس از کد زیر استفاده کنید تا از این فایل محافظت کنید!
<Files ~ "^.*\.([Hh][Tt][Aa])">
Order Allow,Deny
Deny from all
Satisfy all
</Files>
۱۴- دسترسی به XML-RPC را غیرفعال کنید.
محل: htaccess.
وردپرس از پروتکل XML-RPC برای برقراری ارتباط با برنامه های انتشار از راه دور یا برنامه های شخص ثالث استفاده میکند که در حال حاضر این ویژگی میتواند یک آسیب پذیری باشد و هکرها میتوانند از این طریق به وبسایت آسیب برسانند.
اگر شما از برنامه شخص ثالثی در وبسایتتان استفاده نمیکنید کد زیر را وارد کنید تا این پروتکل غیرفعال شود:
<FilesMatch "^(xmlrpc\.php)">
Order Deny,Allow
Deny from all
</FilesMatch>
توجه: برخی از افزونه های محبوب وردپرس از XML-RPC استفاده میکنند، مثل JetPack. اگر از JetPack یا افزونه های دیگری که با XML-RPC کار میکنند را نیاز دارید، این پروتکل را غیرفعال نکنید.
۱۵- دایرکتوری مرورگر را غیرفعال کنید.
محل: htaccess.
اگرچه برخی از کاربران وردپرس این را نمیدانند اما بعضی از دایرکتوری های وردپرس میتواند به شکل زیر در مرورگر لیست شوند.
دسترسی عمومی به درخت دایرکتوری شما می تواند برای امنیت وردپرس بسیار مضر باشد، زیرا هر کس می تواند اطلاعات حساس زیادی را درباره نصب شما بدست آورد. با افزودن خط زیر به پرونده .htaccess می توانید این ویژگی را غیرفعال کنید:
Options -Indexes
سخن پایانی
امنیت وبسایت و وردپرس امری بسیار حائز اهمیت است به طوری که هر کاربر وردپرسی باید اصول اولیه و مقدماتی امنیت را رعایت کند تا از خودش و بقیه کاربران وبسایتش محافظت کند. در این مقاله ما اصول اولیه امنیت وردپرس را بدون استفاده از هیچ افزونه ای بررسی کردیم. امیدواریم این راه ها و روش ها بتواند به امنیت هرچه بیشتر وبسایت وردپرسی شما کمک کند. 15 راهکار برای برقراری امنیت وردپرس بدون افزونه در این مطلب ارائه دادیم، نظرات و تجربههای خود را با ما در میان بگذارید.
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.