Как мне ограничить разрешения apache, чтобы запретить пользователям прямой доступ к коду?

#apache #security #directory #public #restrict

#apache #Безопасность #каталог #общедоступный #ограничить

Вопрос:

У меня есть проект Laravel, который я внедрил в свою организацию, и у меня возникли некоторые проблемы с разрешениями.

Пользователь, независимо от того, вошел в систему или нет, может просматривать списки каталогов контроллеров, хранилища, поставщиков, в общем, всего.

Они не могут сохранить его, щелкнув правой кнопкой мыши, но они могут щелкнуть и выполнить его напрямую, что создает много проблем с безопасностью.

Это не общедоступный сайт, но он по-прежнему нуждается в защите, поскольку технически любой пользователь сети может получить к нему доступ по URL.

Как я могу это защитить?

Пожалуйста, смотрите Изображение ниже для примера:

Пример списка каталогов, который не ограничен

Комментарии:

1. Вероятно, у вас установлены индексы параметров для этих / этого каталога. Просто удалите его, и после этого вы не увидите список каталогов.

Ответ №1:

Спасибо @Andre Gelinas, похоже, у меня возникли некоторые проблемы с моим файлом httpd.conf.

По какой-то причине он был полностью открыт, позволяя всем разрешениям и всем получать доступ ко всем каталогам / файлам.

Для тех, кто интересуется и у кого также есть проекты Laravel, следующие строки решили мою проблему.

Обратите внимание, что это основано на Windows Apache. Если вы используете Linux, вам нужно будет заменить пути Linux.

 #Prevent access to all of mdm3 directory
<Directory "${SRVROOT}/htdocs/mdm3">
    Require all denied
</Directory>

#Except allow the public directory
<Directory "${SRVROOT}/htdocs/mdm3/public">
  Require all granted
</Directory>