Apache2 mpm-itk - права на запись php скриптов

1 234
Den73
На сайте с 26.06.2010
Offline
523
#21
hume:

Ну конечно, на 20 сайтов создадим 20 пользователей, мега круто и удобно )

не обязательно в ручную, можно написать скрипт.

вообще я бы рекомендовал группами, например по 5-10 на аккаунт.

в случае заражения значительно проще и дешевле будет решать проблему.

G-and-Y
На сайте с 29.06.2013
Offline
185
#22

ТС спс за тему, тоже обезопасился!

У кого панель vestacp делаем так

/home/admin/conf/web

apache2.conf

<IfModule mod_ruid2.c>
RMode config
RUidGid admin admin
RGroups www-data
</IfModule>

меняем на (на всех сайтах)

<IfModule mod_ruid2.c>
RMode config
RUidGid www-data admin
RGroups www-data
</IfModule>

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

п.с.: Рестарт апач не забудьте.

Для проверки создаем пшп файл, закидываем на сайт и запускаем из браузера.

Проверяем создался ли файл на соседнем сайте.

<?php
$date = date('H:i - d.m.Y');
$file = '/home/admin/web/соседний-сайт.ru/public_html/tttttt.txt';
$content = "$date\n";

file_put_contents($file, $content, FILE_APPEND | LOCK_EX);

echo $content;
?>
Абузо-устойчивые впс ( http://vps-hosting.lv/?p=13408 )
seocore
На сайте с 25.09.2006
Offline
143
#23
G-and-Y:
Для проверки создаем пшп файл, закидываем на сайт и запускаем из браузера. Проверяем создался ли файл на соседнем сайте.

Ежики плакали, кололись, но продолжали патчить KDE. 😂

Используя подобные права, Вы наоборот повышаете риски, появляется возможность записи в эти папки со стороны "соседних" пользователей. Также Вы теряете возможность полноценной идентификации пользователя под которым работал скрипт, будет не понятно, кто залил этот шел, соседний аккаунт или этот, везде права на файл будут иметь владельца www-data. 🍿

Инструменты для веб-мастера: кластеризатор СЯ (https://goo.gl/MQWfqO), все запросы конкурента (https://goo.gl/hd5uHS), дешевые XML-лимиты (https://goo.gl/aDZbPI)
Andreyka
На сайте с 19.02.2005
Offline
822
#24

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

Другое дело - если у вас говносайты, за которыми лень следить. Ну тогда тут классический mpm prefork.

Не стоит плодить сущности без необходимости
G-and-Y
На сайте с 29.06.2013
Offline
185
#25
seocore:
Используя подобные права, Вы наоборот повышаете риски, появляется возможность записи в эти папки со стороны "соседних" пользователей. Также Вы теряете возможность полноценной идентификации пользователя под которым работал скрипт, будет не понятно, кто залил этот шел, соседний аккаунт или этот, везде права на файл будут иметь владельца www-data.

Поспешу вас огорчить, права на файлы на всех сайтах стоят admin:admin как же юзер www-data их изменит? Только лишь некоторые файлы будут иметь права www-data:admin (файлы кэша, картинки и т.д.)

Andreyka:
Другое дело - если у вас говносайты

Совершенно верно, сайты не жалко, хочется разделить их потратив наименьшее количество времени, для нормальных сайтов созданы отдельные юзеры.

Изменил юзера www-data на простого юзера созданного через панель.

Теперь так

<IfModule mod_ruid2.c>
RMode config
RUidGid all admin
RGroups www-data
</IfModule>
<IfModule itk.c>
AssignUserID all admin
</IfModule>
H
На сайте с 17.10.2012
Offline
46
#26
hume, вы просто не понимаете что такое права доступа и как они работают. 666/644/600 это не все что существует. Советую очень внимательно изучить.

Спасибо за ссылку, изучим, не претендую на всезнайку )

А после подумать кем тут выступает Apache, кем PHP, и что вам дают и те и другие права как при обычном модуле Apache, так как и при MPM-ITK.
А главное помните, что на файлы/папки нужно ставить минимально необходимые права и ни на грамм больше!

Как раз из за этого у меня и возмущения. MPM-ITK дает слишком много прав php скриптам. Я бы сказал даже что при ITK вообще не важно какие права стоят, они по умолчанию "максимальные"(что 600 что 666 что 777, т.к. скрипт может делать что хочет, хоть себя переписать).

вообще я бы рекомендовал группами, например по 5-10 на аккаунт.
в случае заражения значительно проще и дешевле будет решать проблему.

Так и есть, разбито по "группам".

Взломают через дыру и сольют ваш сайт с базой даже со скриптами в режиме только для чтения.

Если скрипт физически не может никуда записать, ни в одну директорию. А если куда то и может(upload дира), то там лежит .htaccess запрещающий запуск скриптов - и как ему шел зальют? А вот с ITK запросто, в любую диру )

то все абсолютно бесполезно, если у вас в движке дыры. Взломают через дыру и сольют ваш сайт с базой даже со скриптами в режиме только для чтения.
Другое дело - если у вас говносайты, за которыми лень следить. Ну тогда тут классический mpm prefork.

А если не у нас в движке, а в вордпресс, дле и тому подобных? Нет возможности сидеть и следить за каждым, проще не давать всем скриптам доступ на запись. Кроме того проблем у меня никогда небыло с паблик движками, т.к. права были распределены нормально, без лишних возможностей. А сейчас когда появился ITK сразу зашелили.. Можете хоть сколько говорить что так удобнее и безопаснее, но для меня факт на лицо ) Да и задачи у всех разные..

Кому не лень, расскажите плз какие права при ITK по вашему мнению должны быть на файлы/директории скажем для типичного сайта на wordpress?

Andreyka
На сайте с 19.02.2005
Offline
822
#27
hume:

Если скрипт физически не может никуда записать, ни в одну директорию. А если куда то и может(upload дира), то там лежит .htaccess запрещающий запуск скриптов - и как ему шел зальют? А вот с ITK запросто, в любую диру )

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

H
На сайте с 17.10.2012
Offline
46
#28
Если сайт имеет дыру, позволяющую запускать любой код - то ничего заливать не надо. Сольют и так.

Прочитайте плз всю ветку прежде чем баянить.. Вопрос не про слив.

Andreyka
На сайте с 19.02.2005
Offline
822
#29

Перечитайте всю ветку - я дал ответ про ГС, которым не страшен слив: классический mpm prefork.

H
На сайте с 17.10.2012
Offline
46
#30

"ITK" в русской раскладке это "ШЕЛ" ) Забавно.. 😂

1 234

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий