У меня есть веб-приложение на машине с виртуальным хостингом Linux. Допустим , у меня есть файл .htpasswd , некоторые конфиги, которые хранят пароль базы данных и, как правило, не хотят, чтобы люди просматривали мой исходный код в поисках уязвимостей.

Веб-серверу (apache) необходим доступ на чтение (и в некоторых случаях запись) к указанным выше файлам. Однако я не хочу, чтобы другие люди на том же хосте имели доступ.

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

AFAIK, все, с чем я должен работать - это базовые разрешения для Linux. На одном сервере я должен дать "другим" разрешения для apache. Затем удаление разрешений группы, в которые входят все остальные пользователи, лишает их доступа. Это кажется довольно окольным. На другом сервере в nobody установлена группа public_html установлены только разрешения группы.

Одна из проблем заключается в том, что если пользователь apache имеет доступ к моим файлам, простой сценарий может быть написан и выполнен для получения доступа другим пользователем:

<?php
header("Content-Type: text/plain");
include $_GET['f'];
?>

TLDR: мне нужен apache для доступа к исходным файлам и паролям, но не для других пользователей на той же машине (за исключением администраторов ofc).

Что такое общие настройки?

Смежные вопросы:

1 ответ1

0

Создайте группу, добавьте в нее apache/www-data. Затем:

chown -R apache: имя группы /var /www /mywebapp / && \ chmod -R 640 /var /www /mywebapp

Это предоставит владельцу права на чтение и запись (6) и права на чтение группы (4) для папки и всех подкаталогов и файлов. Пользователь apache сможет получить доступ к файлам, как и владелец, но другие не смогут. Вы должны убедиться, что они не могут su для пользователя apache.

Используйте блоки каталогов в конфигурации vhost, чтобы ограничить доступ на уровне папок. http://httpd.apache.org/docs/2.0/misc/security_tips.html # См. Защита файлов сервера http://www.anchor.com.au/hosting/dedicated/Security_Hardening_of_an_Apache_Virtual_Host

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .