به طور معمول یک مدیر سایت یا به عبارتی ادمین سایت، از اختیارات کامل مدیریتی کاربران برخوردار است و میتواند به راحتی کاربران را حذف، اضافه و یا حتی ویرایش کند.
اما ممکن است بنا به دلایلی این مدیریت دچار اختلال شود، برای مثال سایت شما هک شود یا نام کاربری و رمز عبور ادمین سایت تغییر یابد و یا ممکن است ادمین سایت شما، برای مدت کوتاهی در شرکت شما فعالیت داشته باشد و بعد از گذشت زمانی آنجا را ترک کند و یا حتی ادمین سایت، خود رمز عبورش را فراموش کرده باشد.
خوشبختانه جوملا این مواقع را پیش بینی و برای آنها راه حلهایی را ارائه کردهاست تا ادمین سایت بتواند مجددا وارد بخش مدیریتی سایت شود و کنترل موارد را بر عهده بگیرد.
- روش نخست: تنظیمات فایل configuration.php
ابن روش در مواقعی که شما به فایل configuration.php سایت خود از طریق سرور دسترسی داشتهباشید، کاربرد دارد:
با کمک برنامههای انتقال فایل FTP، همانند FileZilla به سرور خود وصل شوید و فایل configuration.php را پیدا کنید.
۱- پیش از هر کاری سطح دسترسی این فایل را چک کنید، اگر سطح دسترسی این فایل به عدد ۴۴۴ و یا هر عددی غیر از ۶۴۴ تغییر یافته بود، آن را به ۶۴۴ تغییر دهید. این کار به شما کمک میکند که پس از اعمال تغییرات لازم بر روی فایل، به هنگام آپلود آن با مشکل مواجه نشوید.
۲- فایل confiuration.php را دانلود کنید.
۳- فایل configuration.php را توسط یک ویرایشگر متن همانند notpad++، texteditor و… باز کنید و خط دستوری زیر را به انتهای لیست اضافه کنید.
public $root_user='myname';
درواقع 'myname' نام کاربری است که شما رمز عبور آن را میدانید ودارای سطح دسترسی در حد Athuor و یا حتی بالاتر از آن است و شما با اینکار به آن دسترسی در سطح ادمین سایت خواهید داد.
۴- پس از انجام تغییرات بالا، فایل را ذخیره کنید و مجدداً در سرور آپلود کنید.
با این کار، کاربری که شما معرفی کردهاید به طور موقت دارای دسترسی Super Administrator خواهد بود.
۵- با نام کاربری و رمز عبور جدید وارد بخش مدیریتی سایت شوید و رمز عبور کاربر ادمین را تغییر دهید و یا حتی میتوانید نام کاربری آن را حذف کنید و کاربر ادمین جدیدی را معرفی کنید.
۶- زمانی که تغییرات را ذخیره کردید پیغامی حاوی لینک Click here to try to do it automatically برای شما ظاهر خواهد شد. دقت داشته باشید که حتما آن را انتخاب کنید، چرا که با این کار دستوری را که پیش از این در فایل configuration.php وارد کرده بودید و کاربر جدیدی را با سطح دسترسی super user معرفی کرده بودید، به صورت اتوماتیک پاک خواهد شد.(به جهت مسائل امنیتی این کار الزامی است)
اگر با انتخاب این لینک، خط موردنظر از فایل شما پاک نشد، مجدداً فایل را دانلود کنید، در یک ویرایشگر متن باز کرده و خط موردنظر را پاک کنید و در نهایت مجدد در سرور آپلود نمایید.
با کمک برنامههای انتقال فایل FTP سطح دسترسی فایل configuration.php را چک کنید، باید مقدار عددی آن برابر با ۴۴۴ باشد.
چنانچه خط
public $root_user='myname';
را به صورت دستی از فایل حذف کردهاید حتماً دقت کنید که سطح دسترسی فایل را به ۴۴۴ تغییر دهید.
اما در شرایطی که شما نام کاربری دیگری را در سایت ندارید باید از طریق دیتابیس، رمز عبور ادمین را ریست و یا بازیابی کنید.
- روش دوم: تغییر در دیتابیس:
اگر روش بالا برای شما کارآمد نبود، دو روش دیگر برای ریست و بازیابی رمز عبور ادمین وجود دارد که در هر دو دسترسی به دیتابیس از طریق phpmyadmin الزامی است.
اول:
تغییر رمز عبور در دیتابیس
۱- از طریق ، phpmyadmin وارد دیتابیس سایت جوملای خود شوید و از بخش دراپ دان سمت چپ بر روی نام دیتابیس خود کلیک کنید. با اینکار تمام جدولهای دادهای شما در بخش سمت راست نمایش داده خواهند شد.
۲- از میان جدولهای نشان داده شده، بر روی جدولی با نام "users_ " کلیلک نمایید.
۳- در این صفحه شما مشخصات ثبت شده کلیه اعضای سایت را میتوانید ببینید. با کمک ابزار سرچ در بالای صفحه میتوانید نام کاربری مورد نظر خود را جستجو کنید.
۴- نام کاربری مدنظر خود را که قصد دارید رمز عبور آن را تغییر دهید پیدا کنید و بر روی گزینه Edit در گوشه سمت چپ سطر، کلیک نمایید.
۵- فرمی برای شما نمایش داده خواهد شد که به شما امکان تغییر پسورد را میدهد.
مقدار زیر را در بخش Password کپی کنید.
d2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199
اکنون به بخش پایین صفحه رفته و دکمه GO را انتخاب نمایید.
با این کار، پیغام "1row affected" در بالای صفحه ظاهر خواهد شد و بعد از آن، پسورد آن نام کاربری به عبارت secret تغییر خواهد یافت.
۷- اکنون شما میتوانید با نام کاربری و رمز عبور تغییر داده شده (secret) وار محیط ادمین سایت شوید.
به محض ورود به بخش ادمین حتماً برای مسائل امنیتی، رمز عبور کاربر را تغییر دهید.
برای شرایطی که سایت شما هک شدهاست حتماً شرایط دیگر کاربران سایت را چک کنید و در صورت لزوم برای آنها رمز عبور جدید تعریف کنید.
دوم:
اضافه کردن یک کاربر جدید با سطح دسترسی super administrator
اگر روش بالا، نتوانست مشکل شما را برطرف کند و یا اینکه مطمین نیستید کدام کاربر دارای دسترسی Super Administrator است میتوانید با پیروی از مراحل زیر، یک کاربر جدید با سطح دسترسی Super Administrator اضافه کنید:
۱- از طریق phpmyadmin وارد دیتابیس سایت جوملای خود شوید و از بخش دراپ دان سمت چپ بر روی نام دیتابیس خود کلیک کنید. در همان بخش سمت چپ، در زیر نام دیتابیس شما، تمامی جدولهای دادهای شما، نمایش داده خواهد شد.
۲- از بالای پنجره سمت راست، تب SQL را انتخاب کنید تا بتوانید دستورات Query را برای این دیتابیس اجرا کنید.
با رفتن به تب SQL، شما شاهد کادری با پیغام
"Run SQL query/queries on database <your database>"
خواهید بود.
۳- هر عبارتی که در کادر سفید رنگ نوشته شدهاست را پاک کنید و دستوراتی که پایینتر برای شما نوشته شدهاست را در آن قسمت قرار دهید و سپس، دکمه GO را بزنید. با این کار Query برای دیتابیس شما اجرا شده و کاربری جدید با سطح دسترسی Super Administrator برای شما ایجاد میشود.
۴- از Query نوشته شده در قسمت پایین میتوانید برای ایجاد کاربریه جدید با سطح دسترسی Super Administrator استفاده کنید.
هشدار:
حواستان به پیشوندهای دیتابیس خود باشد:
کد پایین یک مثال است و عبارت jos31_ پیشوند تعریف شده برای این مثال است. عبارات پیشوندی برای هر دیتابیس به هنگام نصب به صورت رندم و یا بنا به تعریف شما ساخته خواهند شد. برای به کاربردن کد زیر شما نیاز دارید تمامی پیشوندهای jos31_ را به پیشوند دیتابیس خود تغییر دهید.
کد SQL قابل استفاده در جوملای ۲.۵ و ۳.۱:
چنانچه در اجرای تکه کد بالا با مشکل و خطا مواجه شدید به صورت زیر عمل کنید:
کد زیر را در بخش SQL وارد نمایید:
INSERT INTO `jos31_users`
(`name`, `username`, `password`, `params`)
VALUES ('Administrator2', 'admin2',
'd2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199', '');
اگر با اجرای دستور بالا با خطایی مبنی بر قبول نشدن مقدار پیشفرض فیلدهای تاریخ دار مواجه شدید (همانندregisterDate , lastvisitDate) میتوانید به صورت دستی مقدار دهی را انجام دهید.
به این صورت که، در دستورات بالا در کنار فیلدهای name, username, password و params، دو فیلد registerDate , lastvisitDate را وارد نمایید و در بخش Values نیز تاریخ روز را به عنوان مقدار آنها تعریف کنید.(فرمت نوشتن تاریخ را میتوانید از جدول "users_ "، در ستون مربوط به هریک از این فیلدها چک کنید.)
در مرحله بعد:
عبارت پایین رادر بخش SQL وارد کنید.
INSERT INTO `jos31_user_usergroup_map` (`user_id`,`group_id`)
VALUES (LAST_INSERT_ID(),'8');
به جای عبارت ()LAST_INSERT_ID، مقدار عددی درست را وارد کنید.(منظور از مقدار عددی درست، آی دی مربوط به آخرین کاربری است که شما با این دستورات ایجاد کردهاید.)
برای این کار ، به جدول با عنوان "users_" بروید و id کاربری که به تازگی وارد کردهاید (admin2) را جایگزین ()LAST_INSERT_ID کنید و با زدن دکمه GO، دستور Query را اجرا کنید.
اکنون کاربری با نام کاربری admin2 و رمز عبور secret برای شما ایجاد خواهد شد. به محض ورود به بخش مدیریتی سایت، برای کاربر جدید خود پسوردی امنتر تعریف کرده و ایمیلی معتبر در بخش مشخصات آن کاربر وارد نمایید.
برای شرایطی که سایت شما هک شده حتماً شرایط دیگر کاربران سایت بخصوص کاربران ادمین سایت را چک کنید و در صورت لزوم برای آنها رمز عبور جدید تعریف کید.
هشدار:
پسوردی که در این مقاله به شما معرفی شد (secret)، یک پسورد آشنا و عمومی است و با این پسورد احتمال هک شدن سایت شما بسیار بالاست. پس حتماً دقت داشته باشید که به محض ورود به بخش مدیریتی سایت، رمز عبور را به رمز عبوری امن تغییر دهید.
در پایین دو مقدار ممکن دیگر برای رمز عبور نیز برای شما آورده شدهاست:
- admin = 433903e0a9d6a712e00251e44d29bf87:UJ0b9J5fufL3FKfCc0TLsYJBh2PFULvT
- secret = d2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199
- OU812 = 5e3128b27a2c1f8eb53689f511c4ca9e:J584KAEv9d8VKwRGhb8ve7GdKoG7isMm
منبع:
طراحی سایت فوری ستروکیت