تغییر پیشوند دیتابیس وردپرس میتواند به شما در بهبود امنیت کمک کند. این تکنیکی است که تحت امنیت استراتژی مبهم قرار میگیرد. پیشفرض این استراتژی این است که ابهام میتواند حملات را کند نماید، شاید برای بازیگران بد، حرکت به سمت اهداف آسانتر کافی باشد.
انجام اقدامات برای ایمن سازی وردپرس شما بدیهی است که بسیار مهم است و قابل درک است که ایجاد تغییرات در دیتابیس ممکن است باعث ناراحتی شما شود. اما نترس! ما یک برنامه گام به گام تنظیم کردهایم که به شما کمک میکند مطمئن شوید که در مسیر درست پیش میروید.
تغییر پیشوند دیتابیس وردپرس
شما میتوانید پیشوند پیشفرض پایگاه داده وردپرس را به یکی از دو روش تغییر دهید. اگر هنوز وردپرس را نصب نکردهاید، میتوانید به سادگی پیشوند جدول پایگاه داده دیگری را در طول مراحل نصب مشخص کنید. از طرف دیگر، اگر قبلا وردپرس را نصب کردهاید، نیاز به مداخله دستی خواهد بود.
آموزش انتخاب پیشوند دیتابیس جدید
پیشوند پیشفرض جداول وردپرس wp_ است. وردپرس از این برای آسانتر یافتن جداول وردپرس استفاده میکند. مشکل این است که یافتن آن را برای همه آسانتر می کند، از جمله بازیگران بد. بنابراین، با پنهان کردن جداول، یافتن آنها را برای افرادی که مجاز به مشاهده جداول وردپرس نیستند بسیار سختتر میکنیم.
همانطور که در مقدمه توضیح داده شد، این اقدام امنیتی، امنیت با ابهام (security by obscurity) نامیده میشود که شامل پنهان کردن عناصر شناخته شده است تا برای بازیگران بد در مرحله شناسایی خود، شبکه شما را دشوارتر کند. مخفی کردن URL ورود به وردپرس نمونه بارز دیگری از امنیت در مبهم است.
توجه به این نکته مهم است که تغییر پیشوند جدول وردپرس یک اقدام امنیتی همه جانبه و نهایی نیست. این تنها در صورتی کار میکند که بخشی از یک استراتژی امنیتی گستردهتر برای سایت وردپرس شما باشد.
وقتی نوبت به انتخاب یک پیشوند جدید میرسد، سعی کنید فقط به حروف، اعداد و زیرخطها پایبند باشید. به همان اندازه مهم است که از کلمات فرهنگ لغت استفاده نکنید زیرا این کار باعث شکست هدف میشود. خلاق باشید؛ لازم نیست این مقدار را به خاطر بسپارید.
نصب جدید وردپرس
تغییر پیشوند db در هنگام نصب وردپرس پیاده روی در پارک است. نکته ای که در اینجا باید به خاطر داشته باشید این است که بسیاری از ارائه دهندگان هاست خود وردپرس را نصب میکنند و به این ترتیب، در این مرحله نمیتوانید پیشوند جدول را تغییر دهید.
اگر این فرصت را دارید که خودتان وردپرس را نصب کنید، کافیست مقدار مورد نظر را در کادر متنی Table Prefix در طول گزینه پیکربندی دیتابیس در مراحل نصب وارد کنید.
نصب وردپرس موجود
اگر یک نصب وردپرس موجود دارید، همچنان میتوانید پیشوند جدول هر جدول را در دیتابیس وردپرس تغییر دهید. این کار کمی بیشتر از زمان نصب وردپرس طول می کشد.
قبل از شروع
قبل از شروع هر کاری، عاقلانه است که یک نسخه بکاپ از پایگاه داده وردپرس خود و یک نسخه بکاپ از فایل wp-config تهیه کنید. همچنین توصیه میکنیم که یک تغییر مسیر موقت تهیه کنید تا بتوانید در طول فرآیند بازدیدکنندگان را تغییر مسیر دهید.
مرحله ۱: محیط صحنه (staging environment) خود را تنظیم کنید
راه اندازی یک محیط staging به شما کمک میکند تا اعصاب خود را کنترل کنید. این به شما این امکان را میدهد که مطمئن شوید همه تغییرات را درست قبل از اعمال آنها در وبسایت زنده خود انجام داده اید. برخی از ارائه دهندگان هاستینگ قابلیت مرحله بندی را ارائه میدهند. از طرف دیگر، ممکن است بخواهید یک محیط مرحلهبندی وردپرس XAMPP را راهاندازی کنید.
این مرحله کاملا اختیاری است و بر نتیجه نهایی تاثیری نخواهد داشت و یک موضوع احتیاط بیشتری است
اگر این مسیر را طی میکنید، ابتدا مراحل زیر را در محیط استیجینگ خود انجام دهید. اگر همه چیز به خوبی پیش برود، می توانید تغییرات را طبق روال معمول خود به محیط زنده منتقل کنید.
مرحله ۲: پیشوند جدول را در فایل wp-config.php تغییر دهید
فایل wp-config.php یک فایل PHP است که تنظیمات مختلف پیکربندی وردپرس را فهرست میکند. تنظیمی که مورد علاقه ماست متغیر $table_prefix است. تنظیمات باید به این صورت باشد:
$table_prefix='wp_';
فایل wp-config.php خود را که در دایرکتوری روت وردپرس خواهید یافت، باز کنید و مقدار متغیر $table_prefix را از wp_ به چیز دیگری مانند psd26_ تغییر دهید.
پس از تغییر، خط در wp-config.php باید به شکل زیر باشد:
$table_prefix= psd26_’;
مطمئن شوید که تغییرات را ذخیره کرده اید.
وردپرس همیشه به این فایل اشاره میکند. اگر اکنون آن را آپلود کنید، تا زمانی که پیشوند پایگاه داده وردپرس را در MySQL تغییر ندهید، وردپرس قادر به دسترسی به دیتابیس نخواهد بود. شما میتوانید آن را همین الان یا پس از اتمام اجرای کوئریهای جایگزین SQL آپلود کنید.
مرحله ۳: نام تمام جداول دیتابیس وردپرس را تغییر دهید
در مرحله بعد، ما تغییراتی را در پایگاه داده ایجاد خواهیم کرد. در اینجا، پیشوند پایگاه داده پیش فرض هر جدول را تغییر میدهیم تا با مقداری که در فایل wp-config وارد کرده ایم مطابقت داشته باشد.
برای تغییر نام جدول دیتابیس باید به پایگاه داده MySQL وردپرس خود دسترسی داشته باشید. در بیشتر موارد، شما باید بتوانید از طریق phpMyAdmin از بکاپ ارائه دهنده هاست خود به پایگاه داده وردپرس دسترسی داشته باشید.
بسته به پیکربندی هاست خود، ممکن است بیش از یک دیتابیس در سرور MySQL خود داشته باشید. در برخی موارد، پایگاه داده وردپرس دارای نام تصادفی است که ممکن است یافتن آن را دشوار کند. اگر مکان یابی پایگاه داده وردپرس برای شما مشکل است، به دنبال جداول پیش فرض باشید. به طور پیش فرض پایگاه داده MySQL وردپرس شامل ۱۱ جدول است. در زیر یک اسکرین شات از جداول پایگاه داده وردپرس در phpMyAdmin آورده شده است.
همانطور که در تصویر بالا می بینید، همه آنها با پیشوند wp_ شروع میشوند. به خاطر داشته باشید که اگر افزونهای را نصب کنید که جداول خود را به پایگاه داده اضافه میکند، ممکن است جداول بیشتری داشته باشید.
تغییر نام جداول
با اجرای کوئری RENAME SQL در قالب زیر میتوانید نام جداول را به صورت دستی تغییر دهید:
RENAME table `[old_table_name]` TO `[new_table_name]`;
old_table_name نام جدول موجود است و new_table_name نام جدول با پیشوند جدید است.
همچنین، میتوانید درخواستهای زیر را کپی و پیست کنید تا همه جداول را یکجا تغییر نام دهید. دو نکته را باید در نظر داشت:
- باید psd26_ را با پیشوندی که در فایل wp-config.php مشخص کردهاید جایگزین کنید.
- اگر جداول دیگری در دیتابیس وردپرس خود با استفاده از همین پیشوند دارید، مانند جداول ایجاد شده توسط افزونهها، می توانید آنها را به این کوئری اضافه کنید.
برای استفاده از کوئریهای SQL زیر، روی تب SQL (که در تصویر بالا مشخص شده است) کلیک کنید و سپس با در نظر گرفتن دو نکته ذکر شده در بالا، کوئری ها را کپی و پیست کنید.
RENAME table 'wp_commentmeta' TO 'psd26_commentmeta'; RENAME table 'wp_comments' TO 'psd26_comments'; RENAME table 'wp_links' TO 'psd26_links'; RENAME table 'wp_options' TO 'psd26_options'; RENAME table 'wp_postmeta' TO 'psd26_postmeta'; RENAME table 'wp_posts' TO 'psd26_posts'; RENAME table 'wp_terms' TO 'psd26_terms'; RENAME table 'wp_term_relationships' TO 'psd26_term_relationships'; RENAME table 'wp_term_taxonomy' TO 'psd26_term_taxonomy'; RENAME table 'wp_usermeta' TO 'ra66be81_usermeta'; RENAME table 'wp_users' TO 'ra66be81_users';
پس از آماده شدن، روی Go در پایین صفحه کلیک کنید. تا کوئریهای SQL را اجرا کند و هر پیشوند جدول را یکی یکی جایگزین نماید.
مرحله ۴: ورودیهای دیتابیس را تغییر دهید
اکنون که پیشوند جداول را تغییر دادهایم، باید ورودی های پایگاه داده را که به جداول با استفاده از پیشوند قدیمی اشاره میکنند، به روز کنیم. این تضمین می کند که وبسایت وردپرس ما به کار خود ادامه میدهد.
جدول گزینه ها
وردپرس تمام گزینههای سراسری را در جدول گزینهها (Options table) ذخیره میکند. در این جدول، برخی از ورودیها را میبینید که باید پیشوندشان نیز تغییر کند. برای بازیابی لیستی از تمام ورودیهایی که از پیشوند wp_ استفاده میکنند (و بنابراین باید به روز شوند)، از کوئری SQL زیر استفاده کنید: <
SELECT * FROM ` psd26_options` WHERE `option_name` LIKE '%wp_%'
به یاد داشته باشید که psd26_options را تغییر دهید تا پیشوندی را که در مرحله ۳ تنظیم کردهاید منعکس کند. ممکن است کوئری ورودیهای زیادی را که نیاز به تغییر دارند برگرداند. تغییر همه آنها برای جلوگیری از تجربه مشکلات ضروری است.
جدول UserMeta
جدول متای کاربر وردپرس شامل تمام اطلاعات مربوط به کاربران ثبت نام شده، مانند تنظیمات شخصی شده است. در این جدول، چندین ورودی را نیز میبینید که باید پیشوندشان تغییر کند، درست مانند آنچه در جدول Options انجام دادیم. برای بازیابی لیستی از تمام ورودی هایی که از پیشوند wp_ استفاده می کنند، از کوئری SQL زیر استفاده کنید:
SELECT * FROM ` psd26_usermeta` WHERE `meta_key` LIKE '%wp_%'
به یاد داشته باشید که psd26_usermeta را تغییر دهید تا پیشوندی را که در مرحله ۳ تنظیم کردهاید منعکس کنید. همه چیز به نحوه پیکربندی وب سایت شما بستگی دارد، مانند تعداد افزونه های وردپرس که نصب کرده اید و غیره.
هاست وردپرس با وب سرور محبوب لایت اسپید و کش لایت اسپید باعث میشود تا سرعت لود فوق العادهای را تجربه کنید.
با خرید هاست وردپرس کانفیگ حرفهای و نظارت بر سرور به صورت پیوسته توسط تیم فنی پارسدِو انجام خواهد شد.
بک آپ بگیرید و تغییرات را تست کنید
قبل از ایجاد هر گونه تغییر، یک بار دیگر از وردپرس بکاپ تهیه کنید و به آزمایش تغییرات ادامه دهید. حداقل از یک برگه و یک نوشته وبلاگ دیدن کنید و سعی کنید به پیشخوان وردپرس (بخش wp-admin) وارد شوید تا تایید کنید که تغییر پیشوند دیتابیس وردپرس درست انجام شده و همه چیز خوب کار میکند.
اگر ابتدا تغییرات را در یک محیط استیجینگ انجام دادهاید، قبل از تلاش برای ادامه مطمئن شوید که همه چیز خوب است.