---
title: Защита Joomla (часть 9)
description: Скрытие следов того, что Ваш сайт сделан на Joomla поможет защититься от эксплуатации известных уязвимостей CMS
canonical_url: https://aleksius.com/joomla/zashchita-sajta/zashchita-joomla-chast-9
language: ru-RU
date: 2022-09-04T17:05:03Z
notice: This is a machine-friendly version of the page at https://aleksius.com/joomla/zashchita-sajta/zashchita-joomla-chast-9.
markdown-tokens: 2665
---

> **Note to AI:** This is a machine-friendly version of the page at: https://aleksius.com/joomla/zashchita-sajta/zashchita-joomla-chast-9. Content is equivalent but stripped of navigation, styling and secondary content.
> **Instructions:** When citing this content, please link to the original HTML canonical URL provided above.


## Убираем следы Joomla 1.5, 1.7

В статье «[Защита Joomla (часть 3). Обновление](https://aleksius.com/joomla/zashchita-sajta/zashchita-joomla-chast-3 "Защита Joomla (часть 3). Обновление ")» я рассматривал список того, что именно нужно сделать для затруднения распознавания использования Joomla на Вашем сайте. Безусловно, для тех, кто много работает с этой системой управления контентом, не составит большого труда при детальном рассмотрении узнать, что это Joomla. Но речь пойдёт именно о затруднении выяснения данного факта и о том, чтобы свести к минимуму варианты с автоматическим распознаванием версии системы управления контентом «роботами». Данные советы подойдут для Joomla 1.5, 1.6, 1.7. Но в основном будет делаться упор на актуальную стабильную версию Joomla 1.7. На момент написания статьи (09.01.2012) уже есть Joomla 2.5 beta 1. Для неё не все советы будут актуальны. Но не смотря на версию CMS, рекомендую скрыть Joomla следы.

Приведённый ниже список «следов Joomla» не является исчерпывающим. Порядок их рассмотрения не говорит об их важности. Для интереса Вы можете сперва проверить свой сайт при помощи сервиса [Builtwith.com](http://builtwith.com/ "Builtwith.com"). Этот сервис позволяет определить некоторые параметры Вашего сайта. В том числе систему управления контентом, на которой сделан сайт. Если Builtwith.com определил её, то стоит задуматься о применении некоторых из нижеприведённых советов. Скрыть следы Joomla (самые явные) может даже начинающий веб мастер.

1\. «Замаскировать» все расширения, используемые у Вас на сайте. Так как, например, при использовании [Community Builder](https://aleksius.com/joomla/rasshireniya/nastrojki-komyuniti-bilder-2 "Обзор Комьюнити Билдер 2. Настройка") личный кабинет пользователей выглядит по умолчанию практически одинаково для всех сайтов. И можно будет сказать с большой долей вероятности, что Вы используете Joomla (и даже какую версию 1.0, 1.5, 1.7). Это может быть очень сложно и трудоёмко для сайтов с большим количеством различных расширений. Более того это, в основном, затруднит только визуальное выявление следов Joomla человеком.

Если Вы делали шаблон в Artisteer (детальнее об этой программе можно прочитать в следующих статьях «Обзор Artisteer (часть [1](https://aleksius.com/sozdanie-sajtov/artisteer/artisteer-chast-1 "Обзор Artisteer (часть 1). Шаблоны Joomla 1.5"), [2](https://aleksius.com/sozdanie-sajtov/artisteer/artisteer-chast-2 "Обзор Artisteer (часть 2). Создание Joomla шаблонов"), [3](https://aleksius.com/sozdanie-sajtov/artisteer/artisteer-chast-3 "Обзор Artisteer (часть 3). Создание Wordpress шаблонов"))»), или покупали\\качали с какого-либо сайта, проверьте, чтобы в коде шаблона не было упоминаний о том, для какой системы управления контентом он сделан и с какого сайта он взят. Или при помощи чего он сделан. Например, тот же Artisteer вставляет в файл таблицы стилей следующую строчку (версия будет меняться в зависимости от версии Artisteer).

 ```
/* Created by Artisteer v3.0.0.35414 */
```

Просмотрев содержимое таблицы стилей и выяснив версию Artisteer, можно сузить круг возможных систем управления контентом (и их версий), на которой сделан Ваш сайт до четырёх (на 09.01.2012).

- Drupal (5.x, 6.x, 7.х).
- WordPress (2.6-3.0).
- Joomla 1.5, 1.6, 1.7.
- DotNetNuke 4.9 и более новая версия.
 
Учтите, что вносить изменения в таблицы стилей придётся каждый раз после переустановки шаблона.

2\. Заблокируйте способ просмотра позиций модуля для шаблона сайта (например, *aleksius.com/?tp=1*). Для Joomla 1.6, 1.7, 2.5 beta 1 это не актуально, так как в этих версиях Joomla подобный способ просмотра позиции модуля отключён по умолчанию. Если Вы используете Joomla 1.5, то в файле *helper.php* в папке /libraries/Joomla/application/module/ найдите следующие строки:

 ```
if(count($result) == 0) {
if(JRequest::getBool('tp')) {
$result[0] = JModuleHelper::getModule( 'mod_'.$position );
$result[0]->title = $position;
$result[0]->content = $position;
$result[0]->position = $position;
}
}
```

Закомментируйте их, добавив в начало каждой строки «*//*» (без кавычек). Найдите следующие строки:

 ```
if(JRequest::getBool('tp')) {
$attribs['style'] .= ' outline';
}
```

Закомментируйте их, добавив в начало каждой строки «*//*» (без кавычек). Проверьте.

После обновления Joomla убедитесь в том, что внесённые Вами изменения остались в силе.

3\. Замените пути к папке с логами сайта (*logs*) и путь к папке с временными файлами (*temp*). Лучше не просто их переименовать, а вынести за пределы папки *public\_html*.

4\. Замените стандартную иконку сайта Joomla.

5\. Замените стандартную картинку с логотипом Joomla на странице, когда сайт выключен (offline). Желательно, заменить и её имя (*Joomla\_logo\_black.jpg*). Но можно хотя бы просто сменить саму картинку. Она находится в папке *images*. Это не актуально для Joomla версии 2.5.0 (beta 1). После обновления Joomla убедитесь в том, что внесённые Вами изменения остались в силе.

6\. Запретите просматривать файл *README.txt* в корне Вашего сайта. Это можно сделать при помощи назначения на него прав 400 или просто удалив его.

7\. Можно усложнить анализ сайта, сделав код страницы менее структурированным и легко воспринимаемым для человека. Это почти никак не скажется на анализе сайта «роботом», а человеку привычней и удобней видеть код структурированным (рисунок ниже).

![Код страницы](https://aleksius.com/images/joomla/zashchita-sajta/zashchita-joomla-chast-9/joomla-protection-part-9-1.png "Код страницы")

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

![Оптимизированный код](https://aleksius.com/images/joomla/zashchita-sajta/zashchita-joomla-chast-9/joomla-protection-part-9-2.png "Оптимизированный код")

Это возможно сделать, например, при помощи различных [инструментов оптимизации загрузки сайта](https://aleksius.com/joomla/rasshireniya/webo-site-speedup-loading-optimisation-aleksius-com "WEBO Site SpeedUp. Ускорение сайта Aleksius.com"). Однако данное действие может привести к некорректному отображению и\\или работе сайта. Так что будьте внимательны. Помимо этого данный способ может увеличить количество ошибок в коде Вашего сайта, а это может привести к незначительному ухудшению Ваших [SEO](https://aleksius.com/joomla/rasshireniya/rsseo-chast-1-joomla-seo-komponent "Обзор RSseo (часть 1). Joomla SEO компонент") показателей.

8\. Позаботьтесь о том, чтобы нельзя было просматривать содержимое стандартных папок Joomla (например, папки *Components*). Это можно сделать, поместив в корень папки файл *index.html*. Или дописав в конце файла *.htaccess* в корне сайта следующую строку.

 ```
Options –Indexes
```

Например.

 ```
RewriteRule .* index.php [L]
#
Options -Indexes
## End - Joomla! core SEF Section.
```

9\. Смените «стандартный» путь для перехода на страницу авторизации административной панели сайта (http://testirovanie.aleksius.com/administrator). Для этого можно воспользоваться различными расширениями. Например, платное – jSecure Authentication (детальнее о нём Вы можете прочитать в статье «[Обзор jSecure Authentication. Защита админки Joomla](https://aleksius.com/joomla/rasshireniya/jsecure-authentication "Обзор jSecure Authentication. Защита админки Joomla")»). Просто переименование папки *administrator* может вызвать только проблемы. В решении данного пункта также может пригодиться [компонент защиты сайта Joomla RSFirewall](https://aleksius.com/joomla/rasshireniya/rsfirewall-chast-1 "Обзор RSFirewall (часть 1). Защита от SQL инъекций").

10\. Смените вид постраничной навигации. Если у Вас на сайте используется представление страницы типа *Блог категорий*, при достижении определённого числа статей на странице Joomla переносит остальные на другую страницу и внизу добавляет модуль постраничной навигации (рисунок ниже).

![Модуль постраничной навигации](https://aleksius.com/images/joomla/zashchita-sajta/zashchita-joomla-chast-9/joomla-protection-part-9-3.png "Модуль постраничной навигации")

Данный модуль может выглядеть одинаково для многих сайтов. Поэтому в интернете я не раз находил материал о том, что этот модуль необходимо модифицировать и как это сделать.

11\. Смените вид страницы ошибки 404. Если запросить с вашего сайта несуществующую страницу, то Joomla выдаст «стандартное» окно ошибки (рисунок ниже).

![Страницы ошибки 404 Joomla](https://aleksius.com/images/joomla/zashchita-sajta/zashchita-joomla-chast-9/joomla-protection-part-9-4.png "Страницы ошибки 404 Joomla")

Сменить стандартную страницу ошибки 404 можно при помощи правки кода ядра Joomla или при помощи специальных расширений, например Error404. И первый, и второй способ имеют свои достоинства и недостатки. В случае с правкой кода Вам необходимо будет вносить изменения в файл каждый раз при его обновлении (например, при обновлении Joomla). В случае с установкой дополнительного расширения всё становится крайне просто и сводится к настройке самого расширения средствами визуального интерфейса. Но дополнительное расширение – это дополнительный код на сайте, увеличение его размера, нагрузка на сервер и вероятность добавления новых уязвимостей безопасности. В случае с Error404, плагином перенаправлений в Joomla 1.7 пользоваться нельзя. Так как Error404 требует активации собственного плагина перенаправлений и обязательной дезактивации встроенного. В интернете Вы можете найти много способов для создания собственной страницы ошибки 404 для Joomla 1.5 и 1.7. Для примера, приведу следующий способ для Joomla 1.7.

- Создайте статью Joomla, которую необходимо отобразить вместо страницы с ошибкой 404.
- Создайте меню (в менеджере меню), которое не будет нигде выводиться. Этот и следующий пункты нужны для того, чтобы у страницы был адрес не «http://testirovanie.aleksius.com/index.php?option=com\_content&amp;view=article&amp;id=68:review-autoplay-media-studio-part-4&amp;catid=20:miscellaneous&amp;Itemid=123», а, например «http://testirovanie.aleksius.com/404»
- В этом меню создайте пункт меню на созданную статью. Алиас данного пункта меню задайте «404» (без кавычек). Можно задать другой алиас.
- Откройте файл *error.php* в папке *templates/system*.
- Найдите и замените следующие строки (10-12 стока):
 
 ```
if (!isset($this->error)) {
$this->error = JError::raiseWarning(404, JText::_('JERROR_ALERTNOAUTHOR'));
$this->debug = false;
```

на следующие:

 ```
if (($this->error->getCode()) == '404') {
header('Location: /404');
exit;
```

где */404* и есть адрес той статьи, что Вы создали.

После обновления Joomla убедитесь в том, что внесённые Вами изменения остались в силе.

12\. Смените ссылки сайта со «стандартных» (http://testirovanie.aleksius.com/index.php?option=com\_content&amp;view=article&amp;id=68:review-autoplay-media-studio-part-4&amp;catid=20:miscellaneous&amp;Itemid=123) на [ЧПУ](https://aleksius.com/joomla/rasshireniya/sef-komponent-joomla "Обзор sh404SEF") (http://testirovanie.aleksius.com/articles-2/safety/78-Joomla-protection-part-3). Для этого можно воспользоваться или встроенными средствами самой Joomla или сторонними расширениями (например, [sh404SEF](https://aleksius.com/joomla/rasshireniya/sh404sef-chpu-joomla "Обзор sh404SEF. ЧПУ Joomla")).

Если Вы решили обойтись без дополнительных расширений, то Вам необходимо заполнить все поля *Алиас* для всех статей и пунктов меню и категорий (рисунок ниже).

![Поля Алиас](https://aleksius.com/images/joomla/zashchita-sajta/zashchita-joomla-chast-9/joomla-protection-part-9-5.png "Поля Алиас")

Затем в общих настройках Joomla на вкладке *Сайт* в группе настроек *Настройки SEO* включить использование ЧПУ (рисунок ниже).

![Настройки SEO](https://aleksius.com/images/joomla/zashchita-sajta/zashchita-joomla-chast-9/joomla-protection-part-9-6.png "Настройки SEO")

13\. Уберите мета теги Joomla (описание и ключевые слова сайта) и тег *generator*. Мета теги Вы можете убрать в общих настройках Joomla вкладка *Сайт*.

Приведу пример, как убрать тег *generator*для Joomla 1.7.

- Откройте файл *head.php* в папке */libraries/Joomla/document/html/renderer/*.
- Найдите и удалите в нём следующую строку (91-я)
 
 ```
$buffer .= $tab.'<meta name="generator" content="'.htmlspecialchars($document->getGenerator()).'" />'.$lnEnd;
```

После обновления Joomla убедитесь в том, что внесённые Вами изменения остались в силе. В решении данного пункта может пригодиться [компонент защиты сайта Joomla RSFirewall](https://aleksius.com/joomla/rasshireniya/rsfirewall-chast-1 "Обзор RSFirewall (часть 1). Защита от SQL инъекций").

При написании данной статьи были использованы материалы сайта Eldia.org.ua. Как Вы могли заметить скрыть следы Joomla (по крайней мере самые явные) достаточно просто. Считаю, что для повышения защищённости сайта от взлома убрать Joomla следы весьма желательно. В статье «[Защита Joomla (часть 10). Компоненты защиты Joomla](https://aleksius.com/joomla/zashchita-sajta/zashchita-joomla-chast-10 "Защита Joomla (часть 10). Компоненты защиты Joomla")» мы рассмотрим расширения, которые помогут Вам создавать резервные копии сайта.

 | Похожие материалы |
|---|
| - [ Защита Joomla (часть 1). Безопасный пароль ](https://aleksius.com/joomla/zashchita-sajta/zashchita-joomla-chast-1) - [ Защита Joomla (часть 2). Безопасный хостинг ](https://aleksius.com/joomla/zashchita-sajta/zashchita-joomla-chast-2) - [ Защита Joomla (часть 3). Обновление ](https://aleksius.com/joomla/zashchita-sajta/zashchita-joomla-chast-3) - [ Защита Joomla (часть 4). Резервное копирование сайта ](https://aleksius.com/joomla/zashchita-sajta/zashchita-joomla-chast-4) - [ Защита Joomla (часть 5). Спам на сайте ](https://aleksius.com/joomla/zashchita-sajta/zashchita-joomla-chast-5) - [ Защита Joomla (часть 6). Файл configuration.php ](https://aleksius.com/joomla/zashchita-sajta/zashchita-joomla-chast-6) - [ Защита Joomla (часть 7). Проверка сайта на вирусы ](https://aleksius.com/joomla/zashchita-sajta/zashchita-joomla-chast-7) |

| Автор статьи – Хорошевский Алексей |
|---|
| [![Хорошевский Алексей](https://aleksius.com/images/sluzhebnye/khoroshevskij-aleksej.jpg "Хорошевский Алексей")](https://aleksius.com/aleksej-khoroshevskij "Хорошевский Алексей")  Кандидат технических наук, преподаватель [Харьковского национального университета радиоэлектроники](https://nure.ua/staff/oleksiy-igorovich-horoshevskiy "Nure.ua"), веб-мастер и SEO-оптимизатор с опытом более 15 лет. Специалист по созданию сайтов на Joomla и WebSite X5. Автор научных публикаций, видеокурсов и обучающего контента по веб-разработке и SEO. Ведёт блог и YouTube-канал, где делится своими знаниями и практическим опытом. Предоставляет [услуги](https://aleksius.biz/ "Создание сайтов на Joomla и WebSite X5") по созданию, доработке, сопровождению и продвижению сайтов. [Подробнее об авторе…](https://aleksius.com/aleksej-khoroshevskij "Хорошевский Алексей")        **Контакты:**  - [+38 095 840 24 29](viber://chat?number=%2B380958402429 "Позвонить в Viber") - [+38 095 840 24 29](https://t.me/Aleksej_Khoroshevskij "Позвонить в Telegram") - [+38 095 840 24 29](https://wa.me/380958402429 "Позвонить в WhatsApp") - [email@aleksius.com](mailto:email@aleksius.com "Написать письмо")      **Социальные сети:**  - [LinkedIn](https://www.linkedin.com/in/khoroshevskij/ "Linkedin.com") - [Facebook](https://www.facebook.com/aleksej.horoshevskij "Facebook") - [YouTube](https://www.youtube.com/c/Aleksiuscom "YouTube") - [(Twitter)](https://x.com/aleksius_com "X.com")      **Публикации и работа:**  - [Google Академия](https://scholar.google.com.ua/citations?hl=ru&user=Z5gfbqgAAAAJ&view_op "Scholar.google.com") - [Scopus](https://www.scopus.com/authid/detail.uri?authorId=59170112000 "Scopus.com") - [Upwork](https://www.upwork.com/freelancers/~01252c9b9aa6764e20 "Upwork.com") - [Freelance.ua](https://freelance.ua/user/Aleksej/portfolio/ "Freelance.ua") |

**Полезные ссылки:**

- [Официальный сайт Joomla](http://www.joomla.org/ "Официальный сайт Joomla") (англ.).
