Разграничение прав для WWW

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Разграничение прав для WWW

Непрочитанное сообщение icb » 2010-10-19 12:30:52

Задумался об оптимальной безопасности при размещения сайтов - отказываюсь от mod_php в пользу php-fpm.
Все хорошо - теперь скрипты работают от пользователя. Но получается, что пхп может писать в любой место сайта. Хотелось бы ограничить пхп в этом.
Какие есть решения такой задачи?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Electronik
капитан
Сообщения: 1593
Зарегистрирован: 2008-11-15 17:32:56
Откуда: Минск
Контактная информация:

Re: Разграничение прав для WWW

Непрочитанное сообщение Electronik » 2010-10-19 13:36:42

Предскажем будущее hw по логам и дампу, снимем сглаз и порчу с рута, поможем придумать пароль(С)
Блог

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: Разграничение прав для WWW

Непрочитанное сообщение icb » 2010-10-19 13:42:03

Сами то читали что там написано? Если читали, то перечитайте мой вопрос еще раз ;)

Аватара пользователя
vadim64
майор
Сообщения: 2101
Зарегистрирован: 2009-09-17 15:15:26
Откуда: Засратовец

Re: Разграничение прав для WWW

Непрочитанное сообщение vadim64 » 2010-10-19 14:38:59

1. вы хоть куда то обращались с этим вопросом до форума? гугл? вики? маны? коменты в дефолтовом конфиге?
2. если вы осознано перешли от обычного FastCGi на этот менеджер процессов, то вы не будете задавать такие вопросы, потому что всё сами прекрасно знаете и понимаете. я вот не знаю и не понимаю. и мне пофигу :pardon:
Люди не делятся на национальности, партии, фракции и религии. Люди делятся на умных и дураков, а вот дураки делятся на национальности, партии, фракции и религии.

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: Разграничение прав для WWW

Непрочитанное сообщение icb » 2010-10-19 14:46:33

я вот не знаю и не понимаю. и мне пофигу
Какой смысл сюда писать если не знаете, не понимаете и пофигу?

Аватара пользователя
vadim64
майор
Сообщения: 2101
Зарегистрирован: 2009-09-17 15:15:26
Откуда: Засратовец

Re: Разграничение прав для WWW

Непрочитанное сообщение vadim64 » 2010-10-19 15:03:52

где хочу там и пишу :bn:
повторяю вопрос:
vadim64 писал(а):вы хоть куда то обращались с этим вопросом до форума? гугл? вики? маны? коменты в дефолтовом конфиге?
Люди не делятся на национальности, партии, фракции и религии. Люди делятся на умных и дураков, а вот дураки делятся на национальности, партии, фракции и религии.

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: Разграничение прав для WWW

Непрочитанное сообщение icb » 2010-10-19 15:57:51

повторяю вопрос:
Не вижу смысла продолжать дискуссию с вами.
Интересует мнение тех, кто в теме.

Аватара пользователя
Electronik
капитан
Сообщения: 1593
Зарегистрирован: 2008-11-15 17:32:56
Откуда: Минск
Контактная информация:

Re: Разграничение прав для WWW

Непрочитанное сообщение Electronik » 2010-10-19 17:01:13

что вы подразумеваете под словами
Но получается, что пхп может писать в любой место сайта.
Предскажем будущее hw по логам и дампу, снимем сглаз и порчу с рута, поможем придумать пароль(С)
Блог

Burner
лейтенант
Сообщения: 693
Зарегистрирован: 2009-06-14 7:02:26

Re: Разграничение прав для WWW

Непрочитанное сообщение Burner » 2010-10-19 17:04:47

icb писал(а):Задумался об оптимальной безопасности при размещения сайтов - отказываюсь от mod_php в пользу php-fpm.
Все хорошо - теперь скрипты работают от пользователя. Но получается, что пхп может писать в любой место сайта. Хотелось бы ограничить пхп в этом.
Какие есть решения такой задачи?
то есть вы нажили себе проблему, которой раньше не было. А что вы получили?

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35426
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Разграничение прав для WWW

Непрочитанное сообщение Alex Keda » 2010-10-19 23:01:16

Electronik писал(а):что вы подразумеваете под словами
Но получается, что пхп может писать в любой место сайта.
модулем, видимо, не мог... =)
Убей их всех! Бог потом рассортирует...

Gloft
лейтенант
Сообщения: 645
Зарегистрирован: 2008-03-09 11:32:12
Откуда: Москва

Re: Разграничение прав для WWW

Непрочитанное сообщение Gloft » 2010-10-20 8:36:24

icb писал(а):Задумался об оптимальной безопасности при размещения сайтов - отказываюсь от mod_php в пользу php-fpm.
Все хорошо - теперь скрипты работают от пользователя. Но получается, что пхп может писать в любой место сайта. Хотелось бы ограничить пхп в этом.
Какие есть решения такой задачи?
По логике php-fpm запускает владелец процесса веб-сервера, соответственно с этими же правами и работает php-fpm.
Ограничивай в правах пользователя процесса веб-сервера.

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: Разграничение прав для WWW

Непрочитанное сообщение icb » 2010-10-20 8:52:54

Electronik писал(а):что вы подразумеваете под словами
Опишу более подробно :)
Одно из стандартных решений для размещения сайтов - mod_php. Запускать для каждого пользователя по своему апачу смысла не имеет (ресурсов не так много). Таким образом все пхп скрипты выполняются от пользователя www. У пользователя есть аккаут и следовательно свой домашний каталог. Чтобы пхп имел возможность работать с этим каталогом можно сделать группу www. Получается, что у всех файлов имеющих разрешение на чтение для группы будет доступ для вебсервера (и для пхп тоже). Если снять права на запись для группы, то пхп не сможет писать в те каталоги/файлы. Минус такого подхода - файлы создаваемые через пхп будут иметь владельца www (т.е. надо в каждом скрипте это учитывать или периодически менять у всех файлов владельца), плюс теоретически возможен доступ к файлам другого аккаунта.

Выход из этого положения - персонализировать процессы пхп, т.е. сделать работу пхп от конкретного пользователя. Но тогда получается, что работающий от пользователя процесс пхп будет иметь доступ ко всему (что доступно пользователю). А бывают случаи, когда такой доступ хочется ограничить (например, запись в некоторые каталоги или изменения некоторых файлов). Вот и вопрос - как это ограничить?
Burner писал(а):то есть вы нажили себе проблему, которой раньше не было. А что вы получили?
Получил большую безопасность (нет потенциальной возможности доступа к чужим файлам) и убрал проблему с владельцем при создании файлов (см. подробное объяснение выше).
Alex Keda писал(а):модулем, видимо, не мог... =)
Модуль мог ограничить на чтение и на запись к определенным каталогам и файлам (см. подробное объяснение выше).
Gloft писал(а):По логике php-fpm запускает владелец процесса веб-сервера, соответственно с этими же правами и работает php-fpm.
В конфиге есть настройка от какого пользователя работать, т.е. можно для каждого аккаунта выделить порт и повесить php-fpm с требуемым пользователем.
Последний раз редактировалось vadim64 2010-10-20 13:09:19, всего редактировалось 1 раз.
Причина: пожалуйста, освойте технологию использования тэгов [quote][/quote], это поможет людям помогать вам.

Gloft
лейтенант
Сообщения: 645
Зарегистрирован: 2008-03-09 11:32:12
Откуда: Москва

Re: Разграничение прав для WWW

Непрочитанное сообщение Gloft » 2010-10-20 9:43:26

icb писал(а):В конфиге есть настройка от какого пользователя работать, т.е. можно для каждого аккаунта выделить порт и повесить php-fpm с требуемым пользователем.
Значит надо ограничивать того из-под которого запускается php-fpm. Вариантов ораганичения в данном случае не так много.

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: Разграничение прав для WWW

Непрочитанное сообщение icb » 2010-10-20 9:55:28

Значит надо ограничивать того из-под которого запускается php-fpm.
Тогда ограничится и сам пользователь.
Вариантов ораганичения в данном случае не так много.
Вроде тут многие сайты размещают - интересно как они решают подобные проблемы.

Аватара пользователя
vadim64
майор
Сообщения: 2101
Зарегистрирован: 2009-09-17 15:15:26
Откуда: Засратовец

Re: Разграничение прав для WWW

Непрочитанное сообщение vadim64 » 2010-10-20 13:05:43

icb писал(а):
Electronik писал(а):что вы подразумеваете под словами
Опишу более подробно :)
Спасибо, что нашли время между построением планов мирового господства :-D
icb писал(а): ...бла-бла-бла...
Выход из этого положения - персонализировать процессы пхп, т.е. сделать работу пхп от конкретного пользователя. Но тогда получается, что работающий от пользователя процесс пхп будет иметь доступ ко всему (что доступно пользователю). А бывают случаи, когда такой доступ хочется ограничить (например, запись в некоторые каталоги или изменения некоторых файлов). Вот и вопрос - как это ограничить?
Я конечно не проффессиональный телепат, а только учусь, но всё же попробую: почитайте Руководство FreeBSD: 13.7. Ограничение пользователей
icb писал(а):
Burner писал(а):то есть вы нажили себе проблему, которой раньше не было. А что вы получили?
Получил большую безопасность (нет потенциальной возможности доступа к чужим файлам) и убрал проблему с владельцем при создании файлов (см. подробное объяснение выше).
Для повышения безопасности ваших серверов советую вам вернуться к вашим изысканиям в области корневых серверов, PermitRootLogin и Глубины стойки 19". Так вашим серверам будет безопаснее.

Ну и ваще, повторяю вопрос:
vadim64 писал(а):повторяю вопрос:
vadim64 писал(а):вы хоть куда то обращались с этим вопросом до форума? гугл? вики? маны? коменты в дефолтовом конфиге?
Люди не делятся на национальности, партии, фракции и религии. Люди делятся на умных и дураков, а вот дураки делятся на национальности, партии, фракции и религии.

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: Разграничение прав для WWW

Непрочитанное сообщение icb » 2010-10-20 13:52:34

2 vadim64
Повторюсь - ваше мнение не интересует. Интересует мнение тех, кто разбирается в вопросе.

Gloft
лейтенант
Сообщения: 645
Зарегистрирован: 2008-03-09 11:32:12
Откуда: Москва

Re: Разграничение прав для WWW

Непрочитанное сообщение Gloft » 2010-10-20 14:02:51

icb писал(а): Интересует мнение тех, кто разбирается в вопросе.
Решение уже написали.
Ограничивать пользователя из под которого работает php-fpm средстваим ОС и chmod на папки и файлы.

Аватара пользователя
vadim64
майор
Сообщения: 2101
Зарегистрирован: 2009-09-17 15:15:26
Откуда: Засратовец

Re: Разграничение прав для WWW

Непрочитанное сообщение vadim64 » 2010-10-20 14:16:36

to Gloft: да не вкуривает он это))) или считает что это тупое нубовское решение))) бестолку ему это говорить))) не мешай мне с ним сраться :-D :-D
Люди не делятся на национальности, партии, фракции и религии. Люди делятся на умных и дураков, а вот дураки делятся на национальности, партии, фракции и религии.

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: Разграничение прав для WWW

Непрочитанное сообщение icb » 2010-10-20 14:59:49

Gloft писал(а):Ограничивать пользователя из под которого работает php-fpm средстваим ОС и chmod на папки и файлы.
icb писал(а):Выход из этого положения - персонализировать процессы пхп, т.е. сделать работу пхп от конкретного пользователя. Но тогда получается, что работающий от пользователя процесс пхп будет иметь доступ ко всему (что доступно пользователю). А бывают случаи, когда такой доступ хочется ограничить (например, запись в некоторые каталоги или изменения некоторых файлов).
Т.е. если ограничить пользователя под которым работает php-fpm, то ограничится и сам пользователь (владелец аккаунта). А надо ограничить только пхп.
Выходит, что изначальная затея пускать пхп под пользователем аккаунта не очень хорошая. Но если пускать пхп под www, то вернется проблема с владельцем созданных файлов :(

Gloft
лейтенант
Сообщения: 645
Зарегистрирован: 2008-03-09 11:32:12
Откуда: Москва

Re: Разграничение прав для WWW

Непрочитанное сообщение Gloft » 2010-10-20 15:06:13

Кто вам мешает сдалеть пользователя специально для php-fpm и ограничить его.

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: Разграничение прав для WWW

Непрочитанное сообщение icb » 2010-10-20 15:17:18

Кто вам мешает сдалеть пользователя специально для php-fpm и ограничить его.
Имею аккаунт a-user, пхп пускаю под пользователем a-php.
Тогда созданные пхп файлы будут иметь владельца a-php. Если скриптом не будут добавлены права для a-user, то владелец аккаунта (a-user) не сможет работать с этим файлом через SSH (например). А таких (не подправляющих права файлов при создании) скриптом большинство.

Аватара пользователя
vadim64
майор
Сообщения: 2101
Зарегистрирован: 2009-09-17 15:15:26
Откуда: Засратовец

Re: Разграничение прав для WWW

Непрочитанное сообщение vadim64 » 2010-10-20 15:19:17

icb писал(а):
Кто вам мешает сдалеть пользователя специально для php-fpm и ограничить его.
Имею аккаунт a-user, пхп пускаю под пользователем a-php.
Тогда созданные пхп файлы будут иметь владельца a-php. Если скриптом не будут добавлены права для a-user, то владелец аккаунта (a-user) не сможет работать с этим файлом через SSH (например). А таких (не подправляющих права файлов при создании) скриптом большинство.
А группы?
Люди не делятся на национальности, партии, фракции и религии. Люди делятся на умных и дураков, а вот дураки делятся на национальности, партии, фракции и религии.

Gloft
лейтенант
Сообщения: 645
Зарегистрирован: 2008-03-09 11:32:12
Откуда: Москва

Re: Разграничение прав для WWW

Непрочитанное сообщение Gloft » 2010-10-20 15:23:28

Выставить пользователю a-php по умолчанию маску на создаваемые файлов допускающую читать и писать своей группе.
Добавить пользователей конектившихся через ssh в группу a-php.

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: Разграничение прав для WWW

Непрочитанное сообщение icb » 2010-10-20 16:03:10

Предположим a-php создал каталог. Пусть даже создал нормально с правами на запись для группы (хотя в тестовых сборках php-fpm не хотел работать по маске, надо проверить на последних версиях).
Пользователь a-user зашел по SSH и хочет сделать так, чтобы a-php больше не писал в этот каталог (мог только читать).
Сделать это не получится, т.к. a-user не может сменить владельца у этого каталога.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35426
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Разграничение прав для WWW

Непрочитанное сообщение Alex Keda » 2010-10-20 23:45:07

зачем вам это.
я непонимаю.
зачем такой изврат
Убей их всех! Бог потом рассортирует...