Назад | Перейти на главную страницу

Как apache использует или разрешает просмотр / usr / share? (Linux / Ubuntu)

По умолчанию apache.conf (сервер ubuntu) содержит следующий блок:

# Sets the default security model of the Apache2 HTTPD server. It does
# not allow access to the root filesystem outside of /usr/share and /var/www.
# The former is used by web applications packaged in Debian,
# the latter may be used for local directories served by the web server. If
# your system is serving content from a sub-directory in /srv you must allow
# access here, or in any related virtual host.

# .... other items removed for brevity    

<Directory /usr/share>
        AllowOverride None
        Require all granted
</Directory>

Моя интерпретация этой директивы заключается в том, что apache разрешит просмотр в Интернете элементов в /usr/share папка. еще Если я попытаюсь просмотреть и добавить в /usr/share/ Я ничего не могу просмотреть?

  1. Как просмотреть содержимое в / usr / share?

    например если я укажу в браузере localhost/synaptic/html/index.html Я получаю ошибку 404 "не найден"

  2. Если apache разрешает просмотр этого каталога, нужно ли блокировать его на рабочем сервере?

  1. Вам необходимо сопоставить путь URL-адреса с / usr / share. Самый простой способ сделать это - использовать директиву Alias, например:

    Alias /share /usr/share
    

    затем http://localhost/share/synaptic будет отображаться на /usr/share/synaptic. Увидеть документация для Alias.

  2. Все файлы в / usr / share уже должны быть недоступны для записи для пользователей без полномочий root, включая пользователя Apache, www-data. Они, вероятно, также доступны для чтения во всем мире. Таким образом, можно подавать их все, как указано выше, без каких-либо дополнительных ограничений. Но если в / usr / share есть общедоступные файлы, которые вы не хотите, чтобы пользователи Apache видели, вы можете использовать Require all deny директивы для блокировки доступа к этим файлам.