logoЗаметки на клавиатуре


Установка VHCS на FreeBSD часть 2

Категории Uncategorized, опубликовал evilbot May 7th, 2007

Итак, в первой части своего интереснейшего текста я рассказал про установку хостинговой панели VHCS на FreeBSD. Кстати напоминаю: Устанавливая VHCS на FreeBSD для коммерческого испольщования вы идёте на риск, т.к. разработчики не гарантируют 100% работоспособности системы! Но к сожелению после установки не всё начинает работать так как надо. К сожелению тут как-раз такой случай. В моём случае было три неприятности: Postfix работающий в chroot окружении, отказывающийся работать ProFTPd и криво работающий в Jail демон VHCS. Может проблем было и больше, но эти три были самыми серьёзными.
Начнём по порядку. Про Postfix работающий в chroot окружении написано достаточно много, но лично я не сразу понял что требовалось для того что бы Postfix успешно заработал. Итак, в первую очередь идём в /var/spool/postfix и создаём там папочку etc, после чего копируем туда из /etc файлы:

hosts
passwd
resolv.conf
sasldb
services 

Потом создаём тамже файлик opiekeys и присваем его пользователю и группе postfix. После чего спокойно запускаем почтовый сервер. Если вдруг он опять не хочет запускаться посмотрите не запущен ли SendMail и если запущен, то достаточно его просто остановить, а потом красочно запустить Postfix.
С не работающим ProFTPd я поступил проще, я его снёс и поставил вместо него Pure-FTPd. Пикантность ситуации в моём случае заключалась в том, что ProFTPd брал данные о пользователях из базы данных и именно на попытке взять данные из MySQL он и умирал. Соответвенно ставить Pure-FTPd надо обязательно с поддержкой MySQL. После установки в конфиге надо включить работу с MySQL и в соответсвующий конфиг(/usr/local/etc/pureftpd-mysql.conf) надо прописать такие строчки:

MYSQLSocket /tmp/mysql.sock
MYSQLUser vftp
MYSQLPassword пароль для пользователя
MYSQLDatabase vhcs2
MYSQLCrypt crypt
MYSQLGetPW SELECT passwd FROM ftp_users WHERE userid="\L"
MYSQLGetUID SELECT uid FROM ftp_users WHERE userid="\L"
MYSQLGetGID SELECT gid FROM ftp_users WHERE userid="\L"
MYSQLGetDir SELECT homedir FROM ftp_users WHERE userid="\L"

Дальше мы правим /etc/rc.conf, удаляя оттуда запуск ProFTPd и добавляя запуск Pure-FTPd. В представленной выше конфигурации к сожелению не будут работать дисковые квоты, я пока еще не разбирался с их настройкой, но рано или поздно я задумаюсь над этим и всё настрою как надо, но пока руки не дошли и не надо это мне пока.
Проблемы с криво работающим демоном VHCS можно решить только пересобрав сам демон предватительно изменив исходник в файле /usr/ports/www/vhcs/work/vhcs2.4.6.2/tools/daemon/take_connection.c. Ищем в файле строчки показанные ниже, после чего комментируем их. После чего говроим make и копируем получившийся файлик в /usr/local/sbin/.

if (strcmp(client_ip,"127.0.0.1")) {
/*
ints not local host
*/
close(sockfd);
return;
}

После установки обновлённого файла демона необходимо закрыть файрволлом порт 9876, а то сервер может стать лёгкой наживой для любителей что-нибудь сломать. Ну вот в принципе те проблемы, с которыми я столкнулся сразу же как поставил VHCS. Дальше наверняка буду еще. По мере нахождения и решения их буду выкладывать инфо об этом сюда. Следите за обновлениями. Ну и пишите вопросы если вдруг что и как.

Оставить комментарий