LINUX.ORG.RU

chroot в апаче


0

1

корневой каталог с сайтами /http

LoadModule chroot_module /usr/lib/apache2/modules/mod_chroot.so

<IfModule mod_chroot.c>
LoadFile /lib/i386-linux-gnu/libgcc_s.so.1
PidFile /var/run/httpd.pid
ChrootDir /http
DocumentRoot /
</IfModule>

а вот лог:
[Sun Aug 19 14:21:17 2012] [alert] (2)No such file or directory: Can't chdir to /http
[Sun Aug 19 14:21:17 2012] [alert] (2)No such file or directory: Can't chdir to /http
[Sun Aug 19 14:21:17 2012] [alert] (2)No such file or directory: Can't chdir to /http

почему так?


Ответ на: комментарий от xsektorx

# ls -l /http
total 48
drwxrwxrwx 3 root root 4096 2012-07-29 22:09 cgi-bin
drwxr-xr-x 16 nobody nogroup 4096 2012-07-18 20:29 guitar
drwxr-xr-x 11 root root 4096 2012-05-24 23:31 mail
drwsrwsrwx 6 nobody nogroup 4096 2012-07-26 16:39 map
drwxr-xr-x 2 root root 4096 2012-08-19 15:20 mrtg
drwxr-xr-x 2 root root 4096 2012-06-08 02:31 papa
drwxr-xr-x 9 nobody nogroup 4096 2012-07-21 01:48 root
drwxr-xr-x 10 nobody nogroup 4096 2012-06-13 15:32 roundcubemail
drwxr-xr-x 10 nobody nogroup 4096 2012-07-04 15:52 smf
drwxr-xr-x 3 nobody nogroup 4096 2012-08-19 14:04 var
drwxr-xr-x 3 nobody nogroup 4096 2012-08-19 11:38 y15
drwxr-xr-x 18 nobody nogroup 4096 2012-08-19 12:16 yalagina

MaR ()
Ответ на: комментарий от tazhate

tazhate, ну у меня так и есть, chroot=/http documentroot=/
апач запускается:
root 16177 0.0 0.2 37956 8256 ? Ss 14:22 0:00 apache2
nobody 16325 0.0 0.4 43864 14676 ? S 14:35 0:03 \_ apache2
...
nobody 18888 0.0 0.4 43780 13572 ? S 17:53 0:00 \_ apache2

MaR ()
Ответ на: комментарий от anonymous

# ls -ld /http
drwxrwxrwx 14 nobody nogroup 4096 2012-08-19 15:22 /http

и вот чё он говорит в лог No such file or directory, если оно есть...?

MaR ()
Ответ на: комментарий от MaR

с одной стороны проблема решилась так: в конфиге апача chrootdir «/http»
с другой стороны не очень решилась, скрипты как-то не очень работают, проверял на примере greenshell.php - почти ниодна функция не работает, с одной стороны хорошо, а с другой, нормальные скрипты тоже не работают

MaR ()
Ответ на: комментарий от MaR

Модуль mod_chroot просто чрутится в пужуную папку, после чего теряет доступ ко всему, что есть вне её. Если хочешь, чтобы у апача в чруте был доступ к библиотекам PHP, надо их скопировать/прибиндить внутрь папки чрута и настроить апач на работу именно с ними.

om-nom-nimouse ★★ ()
Ответ на: комментарий от om-nom-nimouse

в том то и дело, что модуль mod_chroot я отключил, chrootdir это похоже встроенная функция апача2

MaR ()
Ответ на: комментарий от MaR

Без разницы, делают они одно и то же. И эффекты от этого тоже идентичные.

om-nom-nimouse ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.