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


PHP/MySQL

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

 Ползая по ппросторам интернета пытаясь выснить что за "страшная" хрень под названием PHP/5.2.1 with Suhosin-Patch я наткнулся на очень интересный портал посвящённый PHP и MySQL. Наверняка некоторые люди его знают, но я его увидел впервые, так что вот он: Nexen.net. Очень меня порадовала статистика собираемая по достаточно большому количеству страничек с phpinfo(). Конечно главный недостаток этого портала заключается в том, что большинство материалов на французском языке, но статистика всё-таки на понятном большинстве людей – английском языке. Вот кстати статистика за апрель.

Установка 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. Дальше наверняка буду еще. По мере нахождения и решения их буду выкладывать инфо об этом сюда. Следите за обновлениями. Ну и пишите вопросы если вдруг что и как.

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

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

Итак, как я когда-то и обещал расскажу вам про установку хостинговой панели VHCS на FreeBSD. Про установку на Linux есть замечательная статья на Dedic.ru. Я же расскажу как ставить панель на FreeBSD.

Я вам красными буквами напишу: Устанавливая VHCS на FreeBSD для коммерческого испольщования вы идёте на риск, т.к. разработчики не гарантируют 100% работоспособности системы!

Для начала идём сюда и забираем оттуда дистрибутив порта, который больше по вкусу, я ставил оба порта и в принципе проблемы при их установке возникают одинаковые.
Итак, скачав порт стоит его распакаовать и прочитать инструкцию написанную внутри, если лень читать или непонятно что написано, то я вам могу перевести то что там написано. Итак:

1. Уставливаем себе cvsup
2. Обновляем порты
3. Ставим нужную версию perl.
4. Распакуйте содержимое vhcs.tar.gz в /usr/ports/www
5. Распакуйте содержимое proftpd-vhcs2.tar.gz в /usr/ports/ftp
6. Распакуйте содержимое courier-imap-vhcs2.tar.gz в /usr/ports/mail;
7. Распакуйте содержимое postfix-vhcs2.tar.gz в /usr/ports/mail;
8. Перейдите в папку /usr/ports/www/vhcs и выполните команду make install.

Возможно процесс сборки умрёт на попытке собрать MySQL, т.к. в версии СУБД лежащей в моих портах был косяк с безопасностью и он не был исправлен,я не долго думаю собрал версию 4.1, параллельно соответственно собрав p5-DBD-mysql41, для корректной работы perl, ну а если у вас косяков не наблюдается, то могу только за вас порадоваться, с безопасностью у вас проблем нет.
Итак, сборка завершена, теперь вроде осталось только настроить панельку и начать работать, но рано радуемся, при сборке панельки есть несколько интересных косяков, в частности php собирается без libphp и соответсвенно Apache не может работать с php из чего следует, что панелька написанная на php работать не будет. Так что идём в /usr/ports/lang/php5 говорим там последовательно make deinstall, nake clean, make config где указываем что нам нужен модуль для Apache и собираем всё это дело командой make install.

Теперь плавно переходим к процессу настройки панельки. Для начала мы должны исправить пару косяков со скриптом настройки. Всё что нам надо – это исправить файл vhcs2_common_code.pl находящийся в папке /usr/local/www/vhcs2/engine/. Собственно косяк там один, но он находится в двух местах: в том месте где шифруется пароль к MySQL и соответсвенно там где расшифровывается. В этих двух местах надо добавить всего одну строчку: ‘keysize’ => 32,. В итогде должно получится что-то такое:

my $cipher = Crypt::CBC -> new(
{
‘key’ => $main::db_pass_key,
‘keysize’ => 32,
‘cipher’ => ‘Blowfish’,
‘iv’ => $main::db_pass_iv,
‘regenerate_key’ => 0,
‘padding’ => ‘space’,
‘prepend_iv’ => 0
}
);

Ну и для безболезненного запуска всех нужных нам сервисов редактируем rc.conf добавляя туда все требуемые приложения.

apache2_enable="YES"
courier_authdaemond_enable="YES"
courier_imap_imapd_enable="YES"
courier_imap_pop3d_enable="YES"
mysql_enable="YES"
proftpd_enable="YES"
sendmail_enable="NONE"
vhcsd_enable="YES"
named_enable="YES"

После всех шаманских действий можно приступить к настройке, сначала запускаем MySQL, а потом выполняем скриптик /usr/local/www/vhcs2/engine/setup/vhcs2-setup и отвечаем на задаваемые им вопросы. Выглядит это примерно так:

Welcome to VHCS2 ‘2.4 Spartacus’ Setup Dialog.
This program will set up VHCS2 system on your server.
Please press ‘Enter’ to continue.
Please enter system hostname (Enter for defaults) [FreeBSD]:
Please enter system network address (Enter for defaults) [192.168.0.128]:
Please enter SQL server host (Enter for defaults) [localhost]:
Please enter system SиQL database (Enter for defaults) [vhcs2]:
Please enter system SQL user (Enter for defaults) [root]:
Please enter system SQL password (Enter for defaults) [none]:
Please enter VHCS ftp SQL user (Enter for defaults) [vftp]:
Please enter VHCS ftp SQL user password (Enter for defaults) [none]:
Please enter administrator login name (Enter for defaults) [admin]:
Please enter administrator password:
Please repeat administrator password:
Please enter admininistrator email address: admin@admin.com
Congratulations !
VHCS2 ‘2.4 Spartacus’ Setup completed successfully !
Please type http://192.168.0.128/vhcs2/ in your
browser!

После установки и настройки необходимо накатить один патч, для того что бы спать спокойней.
В принципе теперь всё хорошо и замечательно, модно приступать к работе. Если вы собирали VHCS в Jail’е, то у вас возникнут проблемы в процессе добавления пользователя. Проблема решается удалением из исходников vhcs_daemon проверкой на запрос с localhost и последующей его пересборкой и замены старой версии, это конечно не слабая дыра в безопасности, но нам ведь не просто так даны файрволы.

Вот в принципе и всё, буду рад если этот текст кому-нибудь поможет, я конечно наверняка что-то упустил, но буду по возможности дополнять этот текст. Если что непонятно, спрашивайте.

Ролик на злобу дня.

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


Русские не сдаются!

Ролик на злобу дня.


Источник: e-generator.ru