Dimanych

Рейтинг
155
Регистрация
05.06.2007
Raistlin:
Фуф. Поставьте не скомпиленный пхп, а пакетный. Для начала.

Боюсь что это будет конец, наверное единственное что я ещё не попробовал и скорее всего не поможет)

Остаётся запуск через php-cgi, правда на счёт безопасности я там ещё менее уверен, обязательное ограничение через doc_root ? А то по сути cgi очень опасное дело, можно передать любой путь скрипту.

suhosin в виде модуля, он не накладывается на сам PHP и в данный момент он не активирован в конфиге.

Ради эксперимента, на сервере где всё работает на ручной сборке, просто поставил itk с пакета и подключил туда ранее скомпилённый libphp5.so. Ошибка появилась. Т.е. проблема именно в itk пакете. Остаётся думать только на то, что апач сообщает какой то безопасный режим PHP через какую то переменную. Почти сдаюсь что-то ещё искать и пробовать (

myhand:
phpinfo() может

я тоже изначально надеялся что там что-то найду, но сравнив с phpinfo() с другого сервера (где itk собирался вручную), ничего отличающегося не нашёл, кроме env - TERM(появился), SSH_TTY(появился), LD_LIBRARY(пропал)

Вообщем я в небольшом недоумении, как такое вообще возможно 😒

Все права у процесса у php есть, но он в наглую проверяет UID. (делаю такой вывод, потому что при сообтветствии UID всё ок)

root ведь не может системно не иметь прав к файлам других пользователей?)

Я риски все и так знаю, mpm-itk до обработки запроса, а порой и глубже, работает от root.

http://mpm-itk.sesse.net/ - вы тут читали? :)

User www

Group www

...

<VirtualHost *:8080>

DocumentRoot /path

AssignUserId root root

</VirtualHost>

Дело то в том что и пакетная установка не запрещает запуск от root пользователя. Но почему-то ограничен php каким-то подобием safe_mode. Мне суть вообще не понятна, зачем ограничивать PHP функционал, если PHP уже от определённого пользователя и ограничения на уровне UNIX.

Ещё не факт что в пакетной версии исправлены другие баги, также связанные с проверкой прав.

http://mpm-itk.sesse.net/apache2.2-mpm-itk-2.2.17-01/CHANGES

Raistlin:
Dimanych, Апач НЕ должен работать от имени root. И он и не работает. Не путайте. mpm-itk это Per user. Поймите это правильно.

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

Я конечно могу запустить php-cgi версию от root, но для меня удобнее использовать itk.

Вот теперь я неприятно удивлён, после установки пакетного mpm-itk, один vhost мне нужно было запускать с правами root(не спрашивайте зачем), он и сейчас запускается с этими правами, НО!

Почему-то, представьте себе, идёт проверка во всех файловых функциях на принадлежность прав к пользователю под которым запускается скрипт, но safe_mode отключен, и для чего же ограничивать пользователя root?

Пока не выявил корень проблемы, но при ручной сборке апача этого глюка небыло. Процесс запущен от root (posix, getuid geteuid getgid getegid - возвращают 0) , все файлы и директории что принадлежат root, ему и доступны.

Но, например почему-то root не может создать фаил в папке

/home/admin/ 0710 (admin)

а в папке

/home/admin/ 0710 (root)

может.

Выдаёт знакомую всем ошибку:

Warning: file_put_contents(/home/admin/test) [function.file-put-contents]: failed to open stream: Permission denied

Элементарное подтверждение что пользователь root это удачное создание файла `echo 1 > /home/admin/test`;

Кто нибудь может мне объяснить что это за фокус покус? :)

pupseg:
ТС, извините, ветку всю не читал.

flow-tools + какую либо морду на пхп кто - нибудь уже предлагал ?
iptraf ? trafshow ? tcpdump (вижу уже предлагали)

не находил я там способ определения пользователя который генерит трафик, все стандартно показываюст порты и протоколы, неужели нужно заглядывать в netstat чтобы присваивать тарфик определённому UNIX пользователю? )

Другие сервисы у меня считаются, нужен именно юзверский трафик от сторонних скриптов.

Меня впринцепи устраивает darkstat как статистика по портам, за исключением того что не извесно какой пользователь по какому порту продуцирует трафик, причём это ведь может меняься в течении дня.

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

Сама система никак не отслеживает трафик по пользователям?

Если ищите дешёвый вариант.

Купить хостинг за доллар в месяц (главное стабильный, можно чуть дороже),

в крон добавить скрипт проверки. (пару строк коду)

Пусть себе проверяет, подключаете

http://smsc.ru, пополняете баланс, стоимость смс менее рубля.

Если нужен полный скрипт, за 50 баксов напишу.

intervipnet:
Ого, не знал, что есть кто-то в 3.5 раза дороже чем я :)

А если прийдётся во всех скриптах ковыряться и удаляь различную дрянь, вы это сделаете за такую сумму? :) Нужно ценить своё время ;)

Всего: 830