Модули для защиты PHP и Perl от доступа к файлам / данным других пользователей?
Я использую комбинацию suPHP с suExec, чтобы попытаться защитить пользователей и ограничить использование PHP/Perl из допустимого пространства (т. Е. Папок user/tmp).
Прошло много времени с тех пор, как я в последний раз делал такую конфигурацию, я мог бы сказать, что несколько лет, до сегодняшнего дня я в ней не нуждался, и с тех пор появилось несколько новых модулей.
Я хотел бы знать, какие модули в настоящее время доступны для этой задачи, которые стоит использовать, или моя установка все еще действительна и стоит использовать?
Я также заметил, что некоторые компании настраивают свой FTP-сервер, чтобы он не отображал файлы, начинающиеся с точки. Есть ли какая-то конкретная причина, по которой они этого хотят? Я имею в виду, что во многих случаях пользователи хотели бы иметь возможность загружать / редактировать / перезагружать свой файл.htaccess, в то время как можно загрузить указанный файл, в этом конкретном случае вы не сможете его скачать.
PS: я понимаю, что CHMOD играет большую дыру во всем этом, но, как и мудрое принуждение Apache к запуску в качестве пользователя, также необходимо.
2 ответа
О каких модулях ты говоришь?
Если бы это был просто PHP или Perl, решение было бы намного проще. Запуск сценариев через CGI значительно снижает производительность, а IIRC делает нецелесообразным кэширование кода операции. Только с PHP вы можете просто установить base_opendir и отключить расширения, которые могут его обойти.
Однако php-fpm позволяет запускать пулы интерпретаторов php как разных пользователей (каждый пул прослушивает свой порт), поэтому, если количество пользователей поддается управлению, это может быть лучшим решением для сценариев PHP.
Я хотел бы знать, какие модули в настоящее время доступны для этой задачи, которые стоит использовать, или моя установка все еще действительна и стоит использовать?
Есть много модулей (вы даже перечислили кучу из них в одном из ваших комментариев: for instance fastCGI, suPHP, suExec, mod_ruid2, etc.
). У каждого из них есть свои сильные и слабые стороны. Только вы можете предотвратить возникновение лесных пожаров, решить, какой модуль соответствует вашим конкретным потребностям, - оценить имеющиеся варианты в соответствии с вашими требованиями и сделать выбор, который лучше всего соответствует вашим потребностям.
Я также заметил, что некоторые компании настраивают свой FTP-сервер, чтобы он не отображал файлы, начинающиеся с точки. Есть ли какая-то конкретная причина, по которой они этого хотят?
Потому что так Unix работал более 40 лет (имена файлов начинаются с .
по умолчанию считаются "скрытыми" и не отображаются в списках каталогов для удаления беспорядка).
(Альтернативный ответ: "Потому что так хочет местный администратор".)
вы не сможете скачать
.htaccess
файл] в этом конкретном случае.
Неправильно.
Соглашение с точечным файлом влияет только на то, отображается ли что-либо по умолчанию.
Точечные файлы (или что-либо, что считается "скрытым" операционной системой хоста) все еще могут быть доступны непосредственно по имени и показаны в списке каталогов, указав -a
возможность ls
,
Чтобы быть совершенно ясно: имя файла с лидирующей .
это косметические соображения, а не соображения безопасности.