یک آموزش مفید که روشی آسان و مؤثر برای محافظت از دسترسی به پنل مدیریت جوملا بدون هیچ گونه هک یا افزونه شخص ثالث را شرح میدهد. این چیزی است که باید در هر سایت جوملایی پیادهسازی شود. ابتدا بررسی میکنیم که چرا این کار ضروری است.
جوملا یک سیستم مدیریت محتوای محبوب است که اغلب توسط کاربران مختلف، از جمله افراد غیرحرفهای، نصب میشود. اکثر کاربران تمایل دارند فقط وردپرس را نصب کنند و در نتیجه، راهاندازی آسان آن اغلب منجر به عواقب جدی میشود.
به دلایلی، حتی مبتدیان هم تمایل دارند نام حساب کاربری Super User را "admin" بگذارند. این یک رفتار رایج است. علاوه بر این، رمزهای عبور اغلب به اندازه کافی ساده انتخاب میشوند تا مبتدیان بتوانند آنها را به خاطر بسپارند. به همین دلیل تصور نتایجی و اتفاقاتی که ممکن است رخ دهد دشوار نیست.
حالا می پردازیم به اقداماتی که شما باید انجام بدید و سایت خودتون را ایمن کنید:
اولین اقدام : هر نام کاربری به جز "admin" انتخاب کنید!
هنگام نصب جوملا، استفاده از "admin" به عنوان حساب کاربری ادمین ضروری نیست. در واقع، این یک روش بد است، زیرا حدس زدن نام کاربری را برای مهاجمان و هکرها آسانتر میکند. هر چیزی به جز "admin" را انتخاب کنید!
آیا میتوانیم این کار را انجام دهیم؟
بله، میتوانیم! و حتی لازم است!
با پوشه administrator چه کارهایی میتوان انجام داد؟
البته جای تعجب نیست که چنین سایتهایی قربانی حملات رباتهای مهاجم میشوند، رباتهایی که به دنبال راههای آسان برای هک استاندارد هستند. هدف چنین رباتهایی اغلب پنل مدیریت است.
بنابراین، اولین فکری که به ذهن کسانی که در مورد هک جوملا شنیدهاند و میخواهند از خود محافظت کنند میرسد این است که "آیا میتوان پوشه مدیر جوملا را به چیز دیگری تغییر داد؟" طبق چنین منطقی، رباتها به جای اشتباه میروند و هکی صورت نمیگیرد.
بنابراین، آیا امکان تغییر پوشه مدیر وجود دارد؟
جواب هم بله است و هم خیر. تا همین اواخر، جواب من خیر بود.
پاسخ استاندارد به این نوع سوالات همیشه نصب یک افزونه، اکستنشن یا ماژول بوده است. با این حال، به نظر شخصی من، هر چه افزونهها، اکستنشنها و ماژولهای بیشتری اضافه کنید، در آینده با مشکلات بیشتری روبرو خواهید شد.
همه افزونهها به یک اندازه پشتیبانی خوبی ندارند و همه گروههای پشتیبانی، مشکلات ناسازگاری خصوصی با سایر افزونهها را حل نمیکنند. اغلب، استدلال پشتیبانی این خواهد بود که "روی یک جوملای تمیز، افزونه ما به خوبی کار میکند و چیزی که کار نمیکند، مشکل افزونههایی است که نصب کردهاید."
من این را بارها شنیدهام، و به نظر میرسد که شما برای افزونه پول دادهاید، آن را خریدهاید، و هیچکس نمیخواهد مشکلات شما را حل کند. عبارت کلیدی در اینجا «مشکلات شما» است.
چه باید کرد؟
شما در واقع میتوانید بدون افزونههای شخص ثالث هم به خوبی از پس کارهایتان بربیایید.
راه حل ساده است: وقتی از یک آدرس مخفی بازدید میکنید، مرورگر شما یک کوکی مخفی ویژه تنظیم میکند که به عنوان گذرگاهی برای پوشه مدیر عمل میکند. همه درخواستهای دیگر رد میشوند. این همان رفتاری را ایجاد میکند که تغییر نام پوشه جوملا ایجاد میکند، بنابراین هرگونه تلاش برای دسترسی به پوشه مدیر منجر به خطای ۴۰۳ (دسترسی رد شد) یا ۴۰۴ (صفحه یافت نشد) خواهد شد.
چطور میتوانی این کار را انجام دهی؟
شما باید فایل .htaccess را تغییر دهید و خطوط زیر را پیدا کنید
## No directory listings
IndexIgnore *
## Can be commented out if causes errors, see notes above.
Options +FollowSymlinks
Options -Indexes
## Mod_rewrite in use.
RewriteEngine Onبیایید خطوط زیر را بعد از آن وارد کنیم RewriteEngine On:
RewriteCond %{HTTP_COOKIE} !joomla2023
RewriteCond %{REQUEST_URI} ^/administrator [NC]
RewriteCond %{REQUEST_URI} !^/administrator/cache [NC]
RewriteRule .? - [F]
RewriteCond %{REQUEST_URI} ^/hiddenway$
RewriteRule .? /administrator/ [CO=joomla2023:1:%{HTTP_HOST},R=303,L]چه چیزی را میتوان در اینجا تغییر داد و این به چه معناست؟
- joomla2023 نام کوکی نصب شده است.البته بهتر است به دلایل امنیتی آن را به یک نام دلخواه تغییر دهید.توجه داشته باشید که باید آن را در دو جا تغییر دهید.
- hiddenway - این در واقع نام جدید پوشه شماست. قطعاً باید به نام دلخواه شما تغییر کند.
پس از اعمال این تغییرات، آدرس اینترنتی (URL) برای دسترسی به پنل مدیریت، https://site.com/hiddenway خواهد بود. توجه به این نکته ضروری است که آدرس اینترنتی (URL) نباید دارای اسلش (/) باشد، در غیر این صورت، کاربر قادر به دسترسی به پنل نخواهد بود
توجه: پس از انجام این تغییرات، آدرس اینترنتی (URL) برای دسترسی به پنل مدیریت به صورت زیر خواهد بود.
https://site.com/hiddenwayآدرس اینترنتی (URL) نباید دارای اسلش (/) باشد، در غیر این صورت، کاربر قادر به دسترسی به پنل نخواهد بود. این بدان معناست که اگر سعی کنید آدرسی مانند این را باز کنید: به
https://site.com/hiddenway/
پنل مدیریت دسترسی نخواهید داشت! مطمئن شوید که/در انتهای آدرس اینترنتی (URL) اسلش وجود ندارداز اسلش (/) استفاده نکنید!
چه مشکلاتی وجود دارد؟
با این حال، ممکن است هنگام اجرای این راه حل، مشکلاتی وجود داشته باشد. شرکتهای هاستینگ اغلب سرورهای Nginx و Apache را طوری پیکربندی میکنند که با هم کار کنند، که این امر میتواند به دلیل پیکربندی نادرست باعث نقص سیستم شود. در چنین مواردی، توصیه میشود با ارائه دهنده هاستینگ خود تماس بگیرید و از آنها بخواهید قانونی برای سرور پروکسی اضافه کنند تا کوکیهای Apache را نادیده بگیرد