- 1,625 بازدید
- بدون نظر
همانطور که اطلاع دارید دیتابیس یک عامل اصلی برای اجرا شدن سایت وردپرسی هست. همه اطلاعات اصلی مثل پسوردها، نام کاربری، اطلاعات نوشتهها و تنظیمات وردپرس شما در دیتابیس ذخیره خواهند شد. در کل میتوان دیتابیس را به عنوان مغز اصلی وردپرس شما معرفی کرد.
در هر صورت باید مواظب این مغز باشید چون بصورت متداول هکرها سعی میکنند با استفاده از SQL Injection در دیتابیس شما اقدام به تغییر اطلاعات سایتتان کنند. باید کاری کنید که این SQL Injectionها روی سایت شما تاثیری نداشته باشد.
بهترین راه برای گول زدن هکر هم این هست که مسیری که دنبال میکنند را تغییر دهید تا با بنبست روبرو شوند! حالا چطور و چگونه؟
تغییر پیشوند جداول وردپرس
اول اجازه بدید توضیح بدم که پیشوند جداول دیتابیس وردپرس دقیقا چیست؟ وقتی در حال نصب وردپرس هستید یک گزینه به نام پیشوند جداول به شما نمایش داده میشود که بصورت پیشفرض _wp هست. شما اجازه تغییر آنرا به هر اسمی که دوست داشته باشید دارید.
در واقع این پیشوندها قبل از نام جداول دیتابیس شما قرار خواهند گرفت و با تغییر آنها، مسیر کلی جداول دیتابیس تغییر خواهد کرد و این یعنی همان تغییر آدرس و به به بنبست خوردن هکر!
آموزش تغییر پیشوند جداول دیتابیس وردپرس
برای اینکار باید چند مرحله انجام شود که بصورت قدم به قدم به شما این مراحل را توضیح خواهم داد.
ابتدا، از دیتابیس خود بک آپ بگیرید.
اولین قدم این هست که برای محکم کاری بیشتر، از دیتابیس خود بک آپ گیری کنید.
تغییر پیشوند جداول در فایل wp-config.php
بعد از بک آپ گیری از دیتابیس وردپرس، وارد فایل wp-config.php شوید. این فایل در پوشه روت یا همان public_html سایت شما قرار دارد. آنرا با یک ویرایشگر باز کنید. در اینجا عبارت table_prefix را جستجو کنید. این عبارت در خطی شبیه به زیر وجود دارد.
$table_prefix = 'wp_';
حالا عبارت wp_ را به عبارت دیگری ( مثلا: mw_ ) تغییر دهید. با اینکار عملا جداول شما از این آدرس خوانده میشود.
نکته: شما میتوانید از عدد، عبارت و _ در پیشوند استفاده کنید. عباراتی مثل $ یا % مجاز نیست!
تغییر پیشوند جداول دیتابیس از PHPMyAdmin
برای اینکار وارد کنترل پنل هاست خود شوید. اگر از سی پنل استفاده میکنید، وارد صفحه ورود سی پنل شوید.
بعد از وارد شدن به سی پنل، روی PHPMyAdmin کلیک کنید.
وقتی وارد مدیریت دیتابیسها شدید، از سمت چپ دیتابیس وردپرس خودتان را انتخاب کنید:
بعد از انتخاب دیتابیس، از بالای صفحه روی گزینه Sql کلیک کنید.
حالا این عبارت را در بخش SQL وارد کنید.
RENAME tablewp_commentmeta
TOmw_commentmeta
; RENAME tablewp_comments
TOmw_comments
; RENAME tablewp_links
TOmw_links
; RENAME tablewp_options
TOmw_options
; RENAME tablewp_postmeta
TOmw_postmeta
; RENAME tablewp_posts
TOmw_posts
; RENAME tablewp_terms
TOmw_terms
; RENAME tablewp_termmeta
TOmw_termmeta
; RENAME tablewp_term_relationships
TOmw_term_relationships
; RENAME tablewp_term_taxonomy
TOmw_term_taxonomy
; RENAME tablewp_usermeta
TOmw_usermeta
; RENAME tablewp_users
TOmw_users
;
با اینکار، نام جداول دیتابیس شما از wp_ به mw_ تغییر خواهد یافت. حالا اگر جدولی بیش از جداول پیشفرض وردپرس دارید، باید یک خط جدید به این دستور اضافه کنید. دقت کنید عبارت mw_ را باید به عبارتی که در wp-config.php وارد کردید، تغییر دهید. بعد از اضافه کردن خط به تعداد جداول دیتابیس سایتتان، روی Go کلیک کنید تا دستور اجرا شده و نام تمام جداول دیتابیس شما تغییر کند.
جدول options در دیتابیس
جدول wp_options خودش دارای ردیفهایی هست که از پیشوند دیتابیس استفاده میکنند. برای تغییر این پیشوندها، دستور زیر را در SQL اجرا کنید.
SELECT * FROMmw_options
WHEREoption_name
LIKE '%wp_%'
جدول UserMeta در دیتابیس
جدول usermeta نیز دارای اطلاعاتی حیاتی هست که باید حتما تغییر کند. پس دستور زیر را هم اجرا کنید.
SELECT * FROMmw_usermeta
WHEREmeta_key
LIKE '%wp_%'
حالا سایتتان را تست کنید. امید است که مشکلی بوجود نیامده باشد. در صورتی که مشکلی بوجود آمد بک آپ دیتابیس را بازگردانی کنید و مراحل را مجدد انجام دهید. دقت داشته باشید در این آموزش از پیشوند mw_ استفاده شد. اگر شما پیشوند دیگری را استفاده کردید، حتما میبایست در تمام دستورات SQL از پیشوند خودتان به جای mw_ استفاده کنید.
موفق باشید. 😉