#security #apache #indexing #webserver
#Безопасность #apache #индексирование #веб-сервер
Вопрос:
Мне нужно отключить эту индексацию при входе в мой корневой каталог на сервере apache2, есть какие-нибудь советы?
Ответ №1:
Отредактируйте свой файл конфигурации apache2, который обычно находится в каталоге: «/etc/apache2/httpd.conf».
Добавьте следующее или отредактируйте, если у вас уже есть некоторые конфигурации для каталога веб-сервера по умолчанию (/ var / www):
<Directory /var/www>
Options -Indexes
AllowOverride All
Order allow,deny
Allow from all
</Directory>
Это отключит индексацию для всех общедоступных каталогов.
Комментарии:
1. В Ubuntu (и, предположительно, Debian) это
/etc/apache2/apache2.conf
. Поскольку структура Apache варьируется от дистрибутива к дистрибутиву, я предлагаю выполнить поиск с помощьюgrep -r "Directory /var/www" /etc/apache2
.2. Разрешить переопределить все, а порядок и Разрешить для этого не имеет значения. Кроме того, директивы устарели. Смотрите httpd.apache.org/docs/2.4/upgrading.html#run-time
Ответ №2:
Обычно делается так:
Options -Indexes
Минус означает «нет»…
Комментарии:
1. @AJ Я совсем новичок в этом, не могли бы вы, пожалуйста, пояснить? Я не знаю, куда это поместить ^^ Я пытался в apache2.conf, но, похоже, не сработало
2. Это было почти 8 лет назад.
Ответ №3:
Если вы хотите защитить от просмотра содержимого только один каталог, вы также можете просто добавить index.html или index.php это будет отображаться всякий раз, когда кто-то просматривает этот каталог.
Ответ №4:
sudo nano /etc/apache2/apache2.conf
Нашел этот раздел <Directory /var/www/>
в файле
Добавить минус к индексам (запрещено)
Добавьте плюс к следующим ссылкам
Результат :
<Directory /var/www/>
Options -Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
Работает в Raspbian
Вы получите сообщение: «У вас нет разрешения на доступ к «Каталогу» на этом сервере».
Комментарии:
1. К вашему СВЕДЕНИЮ: отключая индексы, вы получаете сообщение «У вас нет разрешения на доступ к этому ресурсу»., ошибка 403.
Ответ №5:
Если у вас есть a2dismod
утилита в вашем дистрибутиве, вы можете полностью удалить модуль, если вам вообще не нужны индексы каталогов:
sudo a2dismod --force autoindex
Используйте флаг --force
или -f
, чтобы избежать следующего предупреждения:
WARNING: The following essential module will be disabled.
This might result in unexpected behavior and should NOT be done
unless you know exactly what you are doing!
autoindex
To continue type in the phrase 'Yes, do as I say!' or retry by passing '-f': Yes, do as I say!
Module autoindex disabled.
To activate the new configuration, you need to run:
systemctl restart apache2
Вот документы для mod_autoindex
Комментарии:
1. К вашему сведению: отключив автоиндексацию, вы получаете сообщение «Запрошенный URL не найден на этом сервере»., ошибка 404.
Ответ №6:
Убедитесь, что вы также добавляете -Indexes к файлам конфигурации в вашем каталоге с включенными сайтами (или сайтами, доступными, как это было в моем случае), они обычно находятся внутри каталога «/ etc / apache2 /».