مهمترین کاری که پس از طراحی سایت با وردپرس باید انجام دهید، در نظر گرفتن تمهیداتی برای امن تر کردن سایت وردپرس است. برقراری و افزایش امنیت در وردپرس همواره یکی از چالشی ترین و مهمترین بحث ها در فضای وردپرس بوده است. وردپرس به دلیل محبوبیت زیادی که بین دیگر سیستم های مدیریت محتوا داشته و کاربران زیادی از آن استفاده می کنند، همیشه در معرض هک و نفوذ بیشتری قرار دارد.
در اینجا ترفندها و روش هایی را برای افزایش امنیت وردپرس ذکر میکنیم :
بخش های مختلف این مقاله
تغییر پیشوند جداول دیتابیس در حین نصب وردپرس
بسته به کنترل پنل هاست شما، هنگام نصب وردپرس روی دایرکت ادمین یا هنگام نصب وردپرس روی سی پنل، وردپرس از شما می پرسد که می خواهید پیشوند جداول دیتابیس تان به چه صورت باشد. اگر شما در این بخش تغییری ایجاد نکنید وردپرس به صورت پیشفرض، پیشوند جداول شما را _wp خواهد گذاشت.
اگر به دنبال افزایش بیشتر امنیت وردپرس هستید، در حین نصب حتماً پیشوند جداول را به یک پیشوند تصادفی و پیچیده تر تغییر دهید. به عنوان مثال _8usaw2gok
اگر هنگام نصب وردپرس فراموش کردید اینکار را انجام دهید میتوانید بعدا از طریق phpmyadmin یا افزونه های وردپرس اینکار را انجام دهید.
بروزرسانی وردپرس و افزونه ها
تیم وردپرس مدام در حال افزودن قابلیتهای جدید و رفع مشکلات و باگهای امنیتی این سیستم مدیریت محتوا و تلاش برای افزایش امنیت وردپرس است. مخصوصاً وقتی یک آپدیت جزیی صورت می گیرد که با رقم سوم در شماره نسخه وردپرس نشان داده می شود مثل ۴٫۹٫۱ ، این بروزرسانی ها به طور خاص برای اهداف امنیتی هستند. بنابراین وقتی وردپرس آپدیت میشود باید در اولین فرصت اقدام به آپدیت وردپرس کنید.
برای افزونه ها و قالب ها نیز حتماً به روز رسانی ها را انجام دهید. اطمینان حاصل کنید که به محض انتشار آخرین نسخه، افزونه ها و قالب های سایت خود را به روز کرده اید. اگر همه چیز را به روز رسانی شده نگه دارید، کمتر امکان دارد که سایت شما هک شود.
از نام کاربری Admin استفاده نکنید
به جای اینکه نام کاربری پیشفرض وردپرس را استفاده کنید، خود نام کاربری مقاومتری انتخاب کنید. این گزینه نیازمند هیچ هزینهای نیست اما عدم رعایت آن میتواند برایتان هزینه سنگینی ایجاد کند! هرگز فراموش نکنید
استفاده از پسوردهای قوی و طولانی
نکتهای که همیشه باید به خاطر داشته باشید: پیچیده، طولانی و یکتا بودن رمز عبور است ، سعی کنید حداقل 8 کاراکتر داشته ترکیبی از حروف کوچک و بزرگ و اعداد و کاراکترهایی مثل #$%^ باشد. اگر نمی خواهید از رمز عبورهای پیشنهادی وردپرس در حین نصب استفاده کنید و می خواهید رمز عبوری داشته باشید که بتوانید آن را به خاطر بسپارید حتماً به نشانگر قوی بودن رمز عبور توجه کنید یا می توانید از سرویسی مانند Strong Random Password Generator استفاده کنید.
محدود کردن تعداد دفعات تلاش برای ورود
اطلاعات لاگین قوی تنها یک قسمت از معادله است. یک هکر با داشتن زمان کافی و تعداد دفعات تلاش برای ورود نامحدود، بالاخره موفق به هک کردن سایت خواهد شد.
بنابراین با محدود کردن تعداد دفعات تلاش برای ورود، سطح امنیت در وردپرس را بالا ببرید. وردپرس به صورت پیشفرض هیچ محدودیتی برای تعداد دفعات تلاش برای ورود به سایت قرار نداده است. اما افزونه هایی مانند افزونه WP Limit Login Attempts یا Login LockDown شما را قادر می سازد که تنظیم کنید یک آدرس IP مشخص قبل از ممنوعیت به صورت موقت یا دائمی چقدر مجاز است برای وارد شدن به سیستم تلاش کند.
غیرفعال کردن اجرای فایل PHP در وردپرس
هاست به شما این اجازه میده تا هر فایلی را در هر جایی قرار داده و با دستورات PHP هر کاری که میخواهید در سایت انجام دهید. برخی دایرکتوریها هستند که اصلا نیازی به اجرای فایلهای PHP در اونها نخواهید داشت که مهمترین این بخش پوشه uploads وردپرس هست که فایلهای چند رسانهای مثل تصویر، ویدئو، صوت و… در این مسیر قرار میگیرد. بنابراین لازمه اجرای دستورات PHP را در این مسیر با استفاده از روش زیر غیرفعال کنید.
وارد هاست خود شده و به مسیر public_html/wp-content/uploads مراجعه کنید.
یک فایل با نام htaccess. بسازید و کدهای زیر را در آن قرار دهید.
deny from all
غیرفعال کردن XML-RPC
XML-RPC یک برنامه رابط کاربری یا API است که ایجاد آن برای مدتی طول کشید و توسط تعدادی افزونه و قالب استفاده میشود. البته باید تکنیکهای فنی زیادی را در استفاده از آن رعایت کرد تا با خطرات امنیتی مواجه نشویم. متاسفانه گاهی اوقات این ویژگی هدف حمله هکرها است. بنابراین باید آن را به نحوی محافظت کنید. می توانید این کار را با استفاده از افزونه هایی مانند Disable XML-RPC Pingback و Disable XML-RPC انجام دهید. یا قطعه کد زیر را به function.php درون قالب خود اضافه کنید :
add_filter('xmlrpc_enabled', '__return_false');
مخفی کردن wp-config.php و htaccess.
یکی دیگر از روشهای برقراری امنیت کامل در وردپرس، مخفی کردن همین دو فایل است. کار به ظاهر سادهای است اما کمی اشتباه در انجام آن، میتواند وبسایتتان را از دسترس خارج کند. پس اول یک نسخه پشتیبان تهیه کرده و سپس عملیات را آغاز کنید. ناگفته نماند که افزونه Yoast SEO این کار را برایتان سادهتر میکند. برای این منظور به بخش ابزارها>> ویرایشگر فایل مراجعه کنید. در اینجا با فایل htaccess. مواجه میشوید. حال قطعه کد زیر را برای حفظ ایمنی بیشتر wp-config.php وارد کنید.
order allow,deny
deny from all
order allow,deny
deny from all
توجه به سطح دسترسی فایل ها
سطح دسترسی در واقع به معنای میزان دسترسی کاربران و بازدیدکنندگان به فایل ها و فولدر های داخل هاست است.
برای بررسی جواز دسترسی فایل ها و پوشه های روی هاست، باید از ابزار File Manager یا همان مدیریت فایل در کنترل پنل هاست استفاده کرد. مثلاً در سی پنل با وارد شدن به File Manager می توانید ، از طریق ستون آخر یعنی Permission اقدام به تغییر عدد جواز دسترسی فایل ها کنید و یا از همان جا ببینید که جواز دسترسی هر کدام از پوشه ها و فایل ها چیست.
پنهان کردن نمایش نسخه وردپرس
وردپرس به صورت پیش فرض یک تگ متا داخل سورس کد خود دارد که نسخه وردپرس سایت شما را نشان می دهد و نیز آن را به اسکریپت هایی که در بخش <head> لود می شوند، اضافه می کند.
این اطلاعات برای کسی که قصد هک کردن سایت شما را دارد بسیار مفید است. مخصوصاً وقتی که شما از نسخه های قدیمی تر وردپرس که باگ های امنیتی شناخته شده دارند استفاده می کنید. با اضافه کردن کد زیر به ابتدای فایل function.php سایت خود می توانید این شماره نسخه را پاک کنید.
function remove_wordpress_version_number() {
return '';
}
add_filter('the_generator', 'remove_wordpress_version_number');
function remove_version_from_scripts( $src ) {
if ( strpos( $src, 'ver=' . get_bloginfo( 'version' ) ) )
$src = remove_query_arg( 'ver', $src );
return $src;
}
add_filter( 'style_loader_src', 'remove_version_from_scripts');
add_filter( 'script_loader_src', 'remove_version_from_scripts');
غیرفعال کردن مشاهده پوشههای هاست
از نکاتی که بر اساس کانفیگ هاست ممکنه این قابلیت در هاست غیرفعال نشده باشه مرور پوشه ها در سایت است. Directory browsing میتونه توسط هکرها مورد استفاده قرار گرفته و فایلهای موجود در هر پوشه به راحتی بررسی شده و با پیدا کردن راههای نفوذ به راحتی سایت شما هک شود. این مورد به هینجا محدود نمیشه و افراد میتونند با پیدا کردن پوشههای شما فایلهای موجود در هاست را هم مورد سرقت قرار دهند. بنابراین لازمه این قابلیت را غیرفعال کنید. برای این منظور کارهای زیر را طی کنید.
وارد هاست خود شده و به مسیر public_html مراجعه کنید.
فایل htaccess. را در ریشه وب سایت خود جستجو کرده و سپس برای ویرایش آن اقدام کنید.
دستور Options -Indexes را در انتهای فایل .htaccess اضافه کنید.
فایل را ذخیره کنید.
تغییر آدرس صفحه ورود به وردپرس
تغییر ادرس صفحه لوگین براحتی توسط افزونه های امنیتی وردپرس قابل انجام بوده و نقش مهمی در جلوگیری از هک شدن سایت شما دارد.