Изменить URL-адрес администратора Joomla

Обновление:

Поскольку был задан этот вопрос, Joomla StackExchange был настроен и там есть такие же вопросы добавьте любые ответы или комментарии к этому вопросу

Оригинал:

Я использую Joomla 3.0.3 для довольно большого нового клиента, безопасность обязательна. Поэтому я решил попробовать изменить URL-адрес администратора, обычно

example.com/administrator

изменился на

  example.com/newadminurl

Причина в том, что если папки находятся не там, где ожидают потенциальные хакеры, это первое препятствие, прежде чем они смогут попробовать что-то еще.

Однако теперь это означает, что всякий раз, когда я перехожу к новому URL-адресу, возникает ошибка 403. Я попытался найти глобальный параметр конфигурации, который мне нужно изменить, но ничего не нашел в Интернете или на сайте Joomla. Кто-нибудь знает, как изменить это глубоко в исходном коде?


person tim.baker    schedule 22.02.2013    source источник


Ответы (3)


Несмотря на то, что существуют хаки, которые делают это, они создают новые проблемы безопасности, поскольку Joomla! ядро не создано для такой работы.

Фактически, как в ядре, так и в сторонних расширениях и шаблонах загрузка моделей, контроллеров и других активов из /administrator является обычной практикой.

Лучший способ защитить свой сайт:

  1. Держите свою Joomla! актуальная установка (наиболее распространенная причина - устаревшие установки)
  2. Не взламывайте основные файлы, если вам нужна дополнительная функциональность, дублируйте основной компонент и расширяйте его, а не ядро.
  3. Добавьте realm пароль /administrator
  4. Секретное слово в URL-адресе /administrator, например. /administrator/?s3cr3tpa55w0rd
  5. Белый список IP-адресов, который позволяет только избранным IP-адресам получать доступ к /administrator
  6. Используйте уникальные и надежные пароли
  7. Не сообщайте пароли даже своим близким...
  8. Примените политику паролей на своем сайте.
  9. Храните проверенную и регулярную резервную копию сайта в хранилище за пределами сервера.
  10. Запустите сканер файлов, который поможет вам обнаружить взлом, чтобы вы знали, где была взята ваша последняя хорошая копия.

Вы можете найти расширения, которые делают одну или несколько из этих вещей за вас, в разделе Доступ и безопасность раздела Joomla! Extension Directory (JED), а для встроенного резервного копирования в облако или другое хранилище вы не можете пройти мимо Akeeba Backup (и лично за крошечную плату по сравнению со стоимостью моего времени мы всегда пользуемся версиями Pro).

Фактически Akeeba Admin Tools Pro ( включены в любую из их подписок) также предоставляет большинство функций из этого списка через свой WAF (брандмауэр веб-приложений). Не охвачена только одна область: управление паролями которым доступно несколько решений.

person Craig    schedule 23.02.2013

Шаг 1. Создайте новый каталог в корневом каталоге (например, «newadminurl»)

Шаг 2. Создайте файл index.php в вашем каталоге «newadminurl».

$admin_cookie_code="3429020892";
setcookie("JoomlaAdminSession",$admin_cookie_code,0,"/");
header("Location: /administrator/index.php");
?>

Шаг 3. Добавьте это в .htaccess вашего реального каталога администратора Joomla.

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/administrator
RewriteCond %{HTTP_COOKIE} !JoomlaAdminSession=3429020892
RewriteRule .* - [L,F]

Пояснение:

Теперь вам нужно открыть "http://yoursite.com/newadminurl/", прежде чем вы откроете свой "администратор " дорожка. Здесь мы создали файл cookie, срок действия которого истекает в конце сеанса, и перенаправляем на фактическую страницу администрирования. Ваш фактический путь «администратора» недоступен, пока вы не откроете свою секретную ссылку.

Надеюсь, это то, что вы искали.

person Sagar Awasthi    schedule 25.02.2014
comment
Это должен быть правильный ответ как здесь, так и в ветке Joomla StackExchange. - person eja; 27.05.2018
comment
Это не нарушает страницу администратора, но также скрывает URL-адрес /administrator для пользователей, которые не знают скрытый URL-адрес, это как раз то, что мне нужно. Спасибо! - person Saruva; 29.01.2019

В ядре и в стороннем расширении могут быть всевозможные зависимости, которые будут жестко кодировать путь администратора, даже если для этого есть переменные платформы.

Я бы порекомендовал вам вместо этого настроить свой .htaccess, чтобы предотвратить публичный просмотр вашей папки администратора и ограничить доступ только к утвержденным IP-адресам. Это не позволит им получить доступ к папкам администратора, но, конечно, не защитит от атак, которые не требуют прямого доступа (например, какое-то стороннее приложение, которое вызывает код в папке администратора для компонента из внешнего интерфейса).

Примечание. Это находится в файле .htaccess в вашей папке administrator, а не в .htaccess в корне сайта, т. е. [siteroot]/administrator/.htaccess

Вот пример .htaccess, который вы можете настроить:

ErrorDocument 403 http://www.your-ip-is-not-allowed-to-access-this-section.com
Order deny,allow
Deny from all
Allow from X.X.X.X

Где X.X.X.X., если IP-адрес, который вы хотите разрешить в разделе администратора. Вы можете указать несколько адресов с помощью нескольких Allow from X.X.X.X строк.

person Eric G    schedule 23.02.2013