Рубрики
Старье

Перенос аккаунтов в WHM/cPanel без даунтаймов

Предположим, что у нас есть 2 сервера с установленными панелями управления WHM.
Необходимо переместить все аккаунты без даунтайма с одного сервера на другой.

Прежде всего создаем копии аккаунтов при помощи скрипта /scripts/pkgacct, который создает в /home архив аккаунта вида cpmove-имя.tar.gz
Переносим все аккаунты на новый сервер и восстанавливаем их при помощи /scripts/restorepkg

На старом сервере меняем IP со старого на новый для всех DNS записей:
perl -pi.bak -e «s/старыйIP/новыйIP/g» /etc/namedb/*.db
С помощью утилиты zsu можно автоматически увеличить serial запись — без этого IP не обновится: zsu -fn etc/namedb/*.db
После этого рестартуем DNS сервис /scripts/restartsrv_named

После обновления IP на DNS’ах провайдеров (занимает 2-4 часа) можно удалять аккаунты со старого сервера с сохранением DNS зон (обязательно!):
/scripts/killacct аккаунт n

После этого на втором сервере устанавливаем в Basic WHM Setup те-же NS что и на старом сервере но с новыми IP
Затем меняем IP в доменной панеле регистратора.

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

Рубрики
Старье

Опасность автообновления php на 4.4.5

Тем, у кого включено автообновление php в WHM и тем, кто случайно решил обновить его на 4.4.5 версию придется столкнуться с проблемами неработы сессий при использовании глобальных регистров.

Решением может быть даунгрейт на предыдущую версию средствами WHM или установка 4.4.6 из исходных кодов, что более приемлемо.

До 10-го марта каждый, кто обратится в http://esupport.org.ru/support/ с решением данной проблемы получает бонус — кроме обновления php на последную стабильную версию 4.4.6 еще и установка патча, который добавляет в заголовки письма полный адрес скрипта, через который оно было отправлено. Это поможет избежать неприятностей со спаммерами, которые используют php скрипты.

Стоимость обновления + установки патча — 20$. Акция действует до 10-го марта.

Рубрики
Наследие

Быстрое восстановление аккаунтво cpanel

Предположим, что в /home находится множество резеврных копий акканутов в формате cpanel и их необходимо максимально бытро восстановить

Для этого используем следующий скрипт:
for i in `ls cpmove-*.tar.gz`; do a=`basename $i .tar.gz`; /scripts/restorepkg `echo $a | cut -d — -f2`; done

Рубрики
Старье

Нерабочий DNS Redhat Enterprise 3 cPanel/WHM

Внимание! cPanel устанавливает bind, который может не работать с текущим ядром и гарантированно не работает с RHES 3 а так-же соответствующей версией CentOS.
Симптомом является запись в логах вида:

zone version.bind/CH: has 0 SOA records
zone version.bind/CH: has no NS records
view.c:347: REQUIRE((&view->references)->refs > 0) failed

Решение проблемы:
Скачать srpm bind, установить его, изменить в spec файле опцию конфигурирования enable-threads на disable-threads, пересобрать пакет и переустановить его с флагом -f (force).

Рубрики
Наследие

Смена кодировки у базы и всех ее таблиц из командой строки

Предположим у нас есть база mydb, в неверной кодировке (latin1) по умолчанию. Необходимо выставить ее в utf8. для этого используем скрипт:

echo «ALTER DATABASE mydb DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;» | mysql; for i in `mysqlshow mydb % | grep -v + | cut -d ‘ ‘ -f2;`; do echo «ALTER TABLE mydb.$i DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;» | mysql ; done

В скрипте mydb замените на название своей БД.

Рубрики
Старье

Solidstate: биллинг с открытым исходным кодом

Биллинг для хостинга с открытым исхоным кодом Solidstate обладает следующими возможностями:

  • Открытый исходный код (GPL)
  • Поддержка PHP4 и PHP5
  • Использование СУБД MySQL
  • Многопользовательская система
  • Возможность интеграции модулей третьих сторон
  • Использование Smarty для шаблонов
  • Проверка активных, неактивных и ожидающих аккаунтов
  • Присоеденение памяток к аккаунтам
  • Отправка предопределенных e-mail’ов для новых клиентов
  • Создание и редактирование счетов, которые могут быть распечатаны или отправлены по почте для своих клиентов
  • Счета могут быть сгенерированы по одному или сразу все
  • Прием платежей
  • Установка единоразовых и месячных платежей для каждого сервиса/услуги
  • Сервисы имеют продолжительность 1,3,6 и 12 месяцев
  • Регистрация доменов через API Directi

Нашими специалистами был разработан небольшой апдейт для версии 0.4.1, который позволяет исправить ошибки в smarty и добавляет русскоязычную установку.

Если вы хотите поддержать нас, пожертвуйте wmz на кошелек Z399249487492
Благодаря вашим пожертвованиям наши специалисты смогут полностью русифицировать биллинг, добавить возможность приема платежей через webmoney и rupay, обеспечить интеграцию с существующими панелями.

Рубрики
Наследие

Оптимизируем VDS под файл-хостинг с использованием nginx

Если использовать VDS в стандартной поставке с веб-сервером apache, то рано или поздно возникнет проблема с недостатком памяти. И это вполне логично:

Каждый из потомков апача отнимает достаточно много памяти

При отдаче медиаконетнта и просто файлов больших размеров
возникают медленные коннекты и число потомков неумолимо растет

Для исправления подобной ситуации можно использовать легкий
вебсервер nginx

В качестве примера возьмем VDS с Fedora Core 2 от keyweb, где традиционно не стоит yum и проведем установку и конфигурацию nginx:


wget http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/os/Fedora/RPMS/gcc-3.3.3-7.i386.rpm
wget http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/os/Fedora/RPMS/pcre-devel-4.5-2.i386.rpm
wget http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/os/Fedora/RPMS/binutils-2.15.90.0.3-5.i386.rpm
wget http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/os/Fedora/RPMS/cpp-3.3.3-7.i386.rpm
wget http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/os/Fedora/RPMS/glibc-devel-2.3.3-27.i386.rpm
wget http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/os/Fedora/RPMS/glibc-headers-2.3.3-27.i386.rpm
wget http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/os/Fedora/RPMS/glibc-kernheaders-2.4-8.44.i386.rpm
wget http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/os/Fedora/RPMS/pcre-4.5-2.i386.rpm
rpm -Uvh *.rpm
wget http://sysoev.ru/nginx/nginx-0.4.13.tar.gz
tar xzf 0.4.13.tar.gz
cd nginx-0.4.13
./configure --prefix=/usr/local/nginx --without-http_charset_module --without-http_ssi_module --without-http_userid_module --without-http_access_module --without-http_auth_basic_module --without-http_empty_gif_module --without-http_gzip_module --without-http_rewrite_module --without-pcre
make -s
make install

После чего nginx будет установлен в /usr/local/nginx в минимальной рабочей конфигурации (а значит — максимально быстрый)
Далее следует сконфигурировать его на отдачу файлов по протоколу http. Пример конфигурации nginx.conf:

worker_processes 1;
events {
worker_connections 1024;
}

http {
include conf/mime.types;
default_type application/octet-stream;

log_format main ‘$remote_addr — $remote_user [$time_local] $status ‘
‘»$request» $body_bytes_sent «$http_referer» ‘
‘»$http_user_agent» «$http_x_forwarded_for»‘;

access_log /dev/null;

tcp_nopush on;
keepalive_timeout 15;


server {
listen ваш_ip:80;
root /home/download;
}
}

Листинг директорий и логи отключены, первое — по техзаданию, а второе — для ускорения работы (запись логов на диск требует времени).

Рубрики
Наследие

Исправляем погрешности в DNS зонах

На одном из серверов под управлением ISP System был обнаружен досадный сбой — панель создала файлы зон, где для субдомена WWW был указан некорректный IP. В результате сайты без www открывались нормально, а с www — нет.
Для исправления этой проблемы было использовано:

[adsense:336×280:1:1]
1. Замена некорректных IP адресов в доменных зонах при помощи perl: perl -pi.bak -e "s/WRONGIP/CORRECTIP/g" /var/named/*.db, где WRONGIP — неправильный IP, а CORRECTIP — соответственно правильный.
2. После исправления всех IP был увеличин serail доменных зон при помощи достаточно известного скрипта zsu.

После проведения этих действий сайты стали откываться корректно. http://forum.searchengines.ru/showthread.php?p=1627459

Рубрики
Наследие

Защищаемся от эксплоита nima salehi

Новая версия эксплоита nima salehi позволяет получить рутовый доступ к серверам под управлением WHM.
Для предотвращения есть минимум три варианта:

1. Самый простой — выполнить команду: touch /tmp/strict.pm ; chmod 000 /tmp/strict.pm; chown root /tmp/strict.pm
2. Более приемлемый — запретить passthru() в php.ini
3. Самый надежный — установить grsecurity ядро с опцией TPE для группы nobody

Рубрики
Старье

Установка cPanel на VDS от keyweb.de

В датацентре keyweb.de не очень дружелюбный, плохо понимающий и главное слабо квалифицрованный саппорт.
Особенно заметно это проявляется на VDS (виртуальном выделенном сервере) по технологии Virtuozzo.

Виртуальный сервер на базе шаблона Fedora Core 4 поставляется без yum, а следовательно штатным образом никакое ПО на такой VDS поставить нельзя.

Запрост в техподдержку keyweb.de успеха не возымел — пришла стандартная отписка, мол сервер поставляется как есть и все его обслуживание — Ваша забота. Установить yum видно им нехватает квалификации.

Итак, прежде всего надо было установть yum:

wget ftp://rpmfind.net/linux/fedora/core/updates/4/i386/yum-2.4.1-1.fc4.noarch.rpm
wget ftp://rpmfind.net/linux/fedora/core/updates/4/i386/libxml2-python-2.6.20-1.FC4.i386.rpm
wget ftp://rpmfind.net/linux/fedora/core/4/i386/os/Fedora/RPMS/python-elementtree-1.2.6-4.i386.rpm
wget ftp://rpmfind.net/linux/fedora/core/updates/4/i386/rpm-python-4.4.1-23.i386.rpm
wget ftp://rpmfind.net/linux/fedora/core/4/i386/os/Fedora/RPMS/python-urlgrabber-2.9.6-1.noarch.rpm
wget ftp://rpmfind.net/linux/fedora/core/4/i386/os/Fedora/RPMS/python-sqlite-1.1.6-1.i386.rpm
wget ftp://rpmfind.net/linux/fedora/core/updates/4/i386/rpm-4.4.1-23.i386.rpm
rpm -Uvh *.rpm

После этого yum работает. Затем обновимся при помощи yum update, так как шаблон старый и имеет старые уязвимости. 69 пакетов (124Mb) было обновлено.

Отлично, а теперь приступаем к установке самой cpanel:

wget http://layer1.cpanel.net/cpanel-universal-install.sea
chmod +x cpanel-universal-install.sea
./cpanel-universal-install.sea

Это все.