Установка mpm-itk из исходников

V
На сайте с 14.04.2007
Offline
316
2536

Сегодня начали обновлять софт на одном из своих серверов. Клиенты часто жаловались, что файлы создаются от имени apache, из-заэтого возникают проблемы в работе CMS. Кто-то умеет делать Reset owner в DirectAdmin, а кому-то приходилось делать самостоятельно. Поэтому мы решили установить на сервер mpm-itk. Что это дает? Для пользователей, в первую очередь, удобство с правами, а для администратора сервера дает возможность видеть кто и какие процессы запускает на сервере.

В интернете так и не нашел ниодного нормального мануала - все они или для ISPmanager, или для тех, кто собирает софт из репозитариев.

Поэтому, приступи!

1. Нам необходимо перейти в каталог, в котором будет производиться установка, скачать исходники и распаковать их:

cd /usr/local/directadmin/custombuild

wget http://files.directadmin.com/services/custombuild/httpd-2.2.15.tar.gz
tar -xzf httpd-2.2.15.tar.gz
cd httpd-2.2.15
wget http://mpm-itk.sesse.net/apache2.2-mpm-itk-20090414-00.patch

2. Далее, нам нужно пропатчить apache

patch -p1 < apache2.2-mpm-itk-20090414-00.patch

3. После этого, необходимо выполнить buildconf

./buildconf

Собственно, может понадобиться библиотека libtool. Ее усатнавливаем так (для ОС, которые используют YUM):

yum -y install libtool

Или из исходников:

wget http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz

tar -xzf libtool-2.2.tar.gz
cd libtool-2.2
./configure
make
make install

Если все пройдёт гладко - возвращаемся на уровень ниже:

cd ..

4. Конфигурируем apache. Для того, чтобы он собрался с mpm-itk, необходимо добавить параметр --with-mpm=itk. В итоге получим что-то типа:

"./configure" \

"--prefix=/etc/httpd" \
"--exec-prefix=/etc/httpd" \
"--bindir=/usr/bin" \
"--sbindir=/usr/sbin" \
"--sysconfdir=/etc/httpd/conf" \
"--enable-so" \
"--enable-dav" \
"--enable-dav-fs" \
"--enable-dav-lock" \
"--enable-suexec" \
"--enable-deflate" \
"--enable-unique-id" \
"--with-suexec-caller=apache" \
"--with-suexec-docroot=/" \
"--with-suexec-gidmin=100" \
"--with-suexec-logfile=/var/log/httpd/suexec_log" \
"--with-suexec-uidmin=100" \
"--with-suexec-userdir=public_html" \
"--with-suexec-bin=/usr/sbin/suexec" \
"--with-included-apr" \
"--with-pcre=/usr/local" \
"--includedir=/usr/include/apache" \
"--libexecdir=/usr/lib/apache" \
"--datadir=/var/www" \
"--localstatedir=/var" \
"--enable-logio" \
"--enable-ssl" \
"--enable-rewrite" \
"--enable-proxy" \
"--with-ssl=/usr" \
"--enable-headers" \
"--with-mpm=itk"

5. Выполняем стандартные действия:

make

make install

6. Необходимо внести правки в VirtualHost, чтобы система знала "от кого работает". Для DirectAdmin делаем следующее:

sed -i 's/SuexecUserGroup/AssignUserID/' /usr/local/directadmin/data/users/*/httpd.conf

Хочу заметить, если Вы используете другую панель управления или вовсе ее не используете, то Вам достаточно изменить SuexecUserGroup или добавить AssignUserID. Запись будет иметь следующий вид:

AssignUserID user user

7. Нужно изменить шаблон пользователя. Для этого выполняем:

sed -i 's/SuexecUserGroup/AssignUserID/' /usr/local/directadmin/data/templates/virtual_host2.conf

Собственно и Все. Рестартим apache и наслаждаемся тем, как он работает :popcorn:

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

Выложить что ли rpm для mpm-itk?

Не стоит плодить сущности без необходимости
V
На сайте с 14.04.2007
Offline
316
#2
Andreyka:
Выложить что ли rpm для mpm-itk?

И мануал как это все прикрутить к работающей системе без простоя :) Пытался поставить из RPM - ничего не вышло (они есть то ли в epel, то ли в atomic). Пришлось заново ставить из исходников.

kxk
На сайте с 30.01.2005
Offline
970
kxk
#3

Andreyka, Выкладывай

Ваш DEVOPS
iBBi
На сайте с 13.02.2007
Offline
314
#4
Andreyka:
Выложить что ли rpm для mpm-itk?

http://centos.alt.ru/pub/httpd-itk/RHEL/RPMS/x86_64/

Продукты ispsystem по минимальным ценам (http://www.isplicense.ru/?from=4926)
M
На сайте с 16.09.2009
Offline
278
#5
vanjouke:
И мануал как это все прикрутить к работающей системе без простоя :) Пытался поставить из RPM - ничего не вышло (они есть то ли в epel, то ли в atomic). Пришлось заново ставить из исходников.

Надо ставить из *.deb ;) И все выйдет. В дебиане куча MPM искаропки, а не с левых репозитариев разных Вань и Мань.

Абонементное сопровождение серверов (Debian) Отправить личное сообщение (), написать письмо ().
VO
На сайте с 27.07.2008
Offline
149
#6

Если делаете изменения в темлейтах виртуальных хостов, нужно делать это в директории /usr/local/directadmin/data/templates/custom/

V
На сайте с 14.04.2007
Offline
316
#7
myhand:
Надо ставить из *.deb ;) И все выйдет. В дебиане куча MPM искаропки, а не с левых репозитариев разных Вань и Мань.

Даже Debian репозитарии собирают из исходников...

M
На сайте с 16.09.2009
Offline
278
#8
vanjouke:
Даже Debian репозитарии собирают из исходников...

Собирать-то собирают. Только не пользователи. А Вы ведь пользователь, верно? - Вам интересно использование данного ПО или заморочки со сборкой?

[Удален]
#9

vanjouke, личная благодарность о меня. Теперь буду посылать сюда хостеров.

Ибо я когда-то искал правду по смежному вопросу.

V
На сайте с 14.04.2007
Offline
316
#10
myhand:
Собирать-то собирают. Только не пользователи. А Вы ведь пользователь, верно? - Вам интересно использование данного ПО или заморочки со сборкой?

Все относительно. Со стороны Андрея и Владимира - пользователь, относительно большинства на форуме - не пользователь :)

SeoNizator:
vanjouke, личная благодарность о меня. Теперь буду посылать сюда хостеров.
Ибо я когда-то искал правду по смежному вопросу.

Спасибо. Очень приятно :)

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