Днес сутинрта започнах да си правя стандартния dist upgrade на един Debian сървър и Dovecot умря със следната грешка 🙂

[….] Starting IMAP/POP3 mail server: dovecotError: socket() failed: Address family not supported by protocol
Error: service(pop3-login): listen(::, 110) failed: Address family not supported by protocol
Error: socket() failed: Address family not supported by protocol
Error: service(pop3-login): listen(::, 995) failed: Address family not supported by protocol
Error: socket() failed: Address family not supported by protocol
Error: service(imap-login): listen(::, 143) failed: Address family not supported by protocol
Error: socket() failed: Address family not supported by protocol
Error: service(imap-login): listen(::, 993) failed: Address family not supported by protocol
Fatal: Failed to start listeners
failed!

 

Ако се загледате внимателно в нея грешката вади очите на човек  listen(::, 993) failed очевидно се опитва да слуша на ipv6 адрес който съм забранил 😈 . Решението е също толкова очевдино колкото и самата грешка – трябва да накараме dovecot да работи само на ipv4, което се постига с следният ред в /etc/dovecot/dovecot.conf
listen=0.0.0.0
След което удряме един бърз рестарт на Dovecot и всичко е по реда си и можем да продължим с дистрибутивният ъпгрейд

Подготвяме нова услуга за хостинга и по време на тестовете при опит за свръзка между WHMCS и Cloudmin имахме следната грешка

CURL Error: 7 – couldn’t connect to host

 

Забавно веднага проверявам връзката между машините където е WHMCS-a и Cloudmin-а всичко работи. Проверявам 10000-ния порт и той отворен и достъп до него има 🙄 . Забавно!

Правя един бърз  на cloudmin сървъра


tcpdump -i br0 host WHMCS_IP

и за мое (не много голямо) изумление гледам че се опитва да се свърже на 80-ти или 443 (ако е активиран SSL) портове без да ме пита за такъв. По подразбиране webmin-a и cloudmin-a който е приложение към първия работят на SSL 10000 порт. Понеже тая глупава система е IonCube криптирана няма как да си едитна кода че да им оправя индииските глупости та се налага по радикален подход. Преди да напусне системата подменям порта на дестинацията с iptables


iptables -t nat -A OUTPUT -d cloudmin_ip -p tcp -m tcp --dport 443 -j DNAT --to-destination cloudmin_ip:10000

където заменяте cloudmin_ip с IP-то на вашата cloudmin инсталация. След тая дребна манипулация връзката между WHMCS и Cloudmin се осъществи, но модула продължава да има и други проблеми освен този 😆 :mrgreen:

В общи линии за година ползване на WHMCS съм крайно разочарован от него – доста е дървен, поддръжката на support екипа е бавна, документацията на кода и разни други неща се разминава с реалността, доста голямо количество бъгове и е доста дървен. Ако знаех че е толкова зле бих предпочел да го ползвам с нулиран лиценз вместо да се дадат 300$ за нещо което работи някак!

http://www.youtube.com/watch?v=GF2-TKfQOsk

Днес ще разказвам за неволите си около един сървър със Suhosin patch и как Debian Sqeeze се справя с него. Сега да започнем малко по отдалече. Когато си инсталирате php през пакетната система на Debian (stable за другите не мога да кажа как е още) задължително ви се инсталира и suhosin mod към него. Имах проблеми с едни плу-кадърно написана php система и взех кардиналното решение вместо да правя дебъг на системата и да връщам репорт на разработчика да разкарам кръпката за сигурност и така да си спестя главоболията. Общо взето смело мога да кажа че това е било едно от най глупавите ми решения взимани някога. Най напред премахвам модула на php5-suhosin рестартирам web server-a и опа греда – patch-a все още е зареден. След много кратко проучване откривам, че пакета е компилирах и с пача директно в кода което ще рече че няма изключване или премахване освен ако не се прекомпилира кода наново без пача. Решавам че ще го дръпna и прекомпилирам до deb пакет. Речено сторено правя си apt-get source php5 дърпа ми се настоящия сорс код, разпакетирва се и прочие. Тука идеалната ми идея да сваля сорса на пакета да премахна пача и да го компилирам отново до дебиански пакет плюс една две малки оптимизации по компилацията. Речено сторено – премахнах ненужния пач от debian/patches/suhosin.patch премахнах го да не играе и в debian/patches/series. До тук всичко ясно и без проблеми. След това пускам да се компилира пакета с debuild и както очаквах ми изгърмя компилацията заради липсващи хедъри. Естествено че ще има такива липси – все пак съм с debian netinstall. Поправям набързо глупостта си пускам наново компилацията, в един момент отново премира само, че със странна грешка в Zend/zend_stream.h или .c не помня точно (ако ми се занимава може по късно да проверя точно кой файл и на кой ред гърмеше). След известно недоумяване какво се случва и защо аджеба гърми в Zend ядрото – където не би трябвало да гърми по никаква причина и едно малко по дълго проучване откривам че тоя проблем е относително рядък и няма много сигнали за него. Подозирам че някоя от кръпките в сорса не е наред но сега нямам нерви за да го проверявам. Хммммм странно супер странно. Почти реших да си компилирам чисто php но реших да пробвам огледалата на dotdeb да видим там какво ще се случи. Там компилацията умря заради някакви странни зависимости но подмина проблемите в основната част. Което от своя страна е разбираемо нямаше ги те 30-40 кръпки който бяха в стабилния пакет. След няколко дълги и неуспешни опита ми писна и сви свалих ванила пакета и го компилирах с почти debian-ски опции с идеята да пренапише настоящата ми инсталация и като се инсталират нови пакети от хранилката да може да има поведение на пакет инсталиран от хранилището (вероятно поредното не обособно разумно решение). Както очаквах без всички кръпки инсталацията мина гладко. Това е изхода на config.nice файлът ми:


#! /bin/sh
#
# Created by configure

CFLAGS='-g -O2 -fPIC -Wall -fsigned-char -fno-strict-aliasing   -gstabs' \
CXXFLAGS='-g -O2' \
'./configure' \
'--with-apxs2=/usr/bin/apxs2' \
'--prefix=/usr/local/php5' \
'--disable-cgi' \
'--with-config-file-path=/etc/php5/apache2' \
'--with-config-file-scan-dir=/etc/php5/apache2/conf.d' \
'--build=x86_64-linux-gnu' \
'--host=x86_64-linux-gnu' \
'--sysconfdir=/etc' \
'--localstatedir=/var' \
'--mandir=/usr/share/man' \
'--disable-debug' \
'--with-regex=php' \
'--disable-rpath' \
'--disable-static' \
'--with-pic' \
'--with-layout=GNU' \
'--with-pear=/usr/share/php' \
'--enable-calendar' \
'--enable-fileinfo' \
'--enable-hash' \
'--enable-json' \
'--enable-sysvsem' \
'--enable-sysvshm' \
'--enable-sysvmsg' \
'--enable-bcmath' \
'--with-bz2' \
'--enable-ctype' \
'--without-gdbm' \
'--with-iconv' \
'--enable-exif' \
'--enable-ftp' \
'--enable-dbase' \
'--with-gettext' \
'--enable-mbstring' \
'--with-onig=/usr' \
'--with-pcre-regex' \
'--with-mysql=shared,mysqlnd' \
'--with-mysql-sock=/var/run/mysqld/mysqld.sock' \
'--with-mysqli=shared,mysqlnd' \
'--enable-pdo=shared' \
'--with-pdo-mysql=shared,mysqlnd' \
'--with-pdo-odbc=shared,unixODBC,/usr' \
'--with-pdo-pgsql=shared,/usr/bin/pg_config' \
'--with-pdo-sqlite=shared,/usr' \
'--with-pdo-dblib=shared,/usr' \
'--enable-phar' \
'--enable-shmop' \
'--enable-sockets' \
'--enable-dom' \
'--enable-wddx' \
'--enable-tokenizer' \
'--with-zlib' \
'--with-kerberos=/usr' \
'--with-openssl=/usr' \
'--enable-soap' \
'--enable-zip' \
'--with-mhash=yes' \
'--with-exec-dir=/usr/lib/php5/libexec' \
'--with-system-tzdata' \
'--without-mm' \
'--with-readline=/usr' \
'--without-sybase-ct' \
'--without-sqlite' \
'--without-sqlite3' \
'--without-mssql' \
'--enable-pcntl' \
'--enable-inline-optimization' \
"$@"

Това е конфигурация близка до тази на компилацията на dotdeb. Като основаното и най важно е prefix опцията където ще се разполагат файловете с библиотеките на php. Него както и другите пъти ги коригирайте според вашата система така че да не се усети компилацията с промяна на пътищата.

Enhanced by Zemanta

Не съм писал за пореден път от … ужасно много време – причини бол пък и нежелание до някъде мисля. Пробвах се 3-4 пъти да постна някакви неща но не бях особено доволен от резултата и затова се отказвах всеки път 🙂 Реших да си поразгледам блогчето така просто за спорта 🙂 Интересни неща виждам. Истинската причина която ме накара да напиша сегашния пост не е повечето време което имам защото то си е същото като вчера, миналия ден и прочие а компилация от чувства която ме обзе 🙂 Съвременно попаднах и на това компютъра ми, надявам се автора да не ми се разсърди че го пускам 🙄

***

Мила,
Аз съм привлекателен мъж.
И го знам.
Познавам доста добре жените
и тайните
на телата им и на душите.
Мога
да обсебвам лесно слабите.
Силните
са по-трудни, но не за дълго.
Много
сами ме търсят, не за любов, а за
заместител.
Разбирам ги и им давам желаното.
Винаги
казвам думите, които искат и
целувам
умело там дето никой не смее.
Ръцете ми
магически карат телата им да пеят,
а после
когато се слеят с моето плачат…
Никога
не съм се гордял със себе си, но
не спирам.
Опитвал съм, не че не съм,
понякога,
искам да го знаеш, и все е било
неуспешно.
За това без душа съм останал.
Изгоних я
за да не ми пречи на решенията.
Всъщност
тя ме напусна отвратена от мен.
Днес
усещам нещо ново и мъчително.
Съвестта ми
разяжда ме и чудно как е останала
в мен
като тревичка поникнала в камък
студен.
Сега страдам, заслужено, и май съм
на път
да сторя най-после геройска постъпка
и кажа:
– Стой далече от мен. Пази се!
Обичам те!
Ти не заслужаваш заместител!

Не съм писал от много, ужасно много време. Явно по някаква странна причина съм липсвал на хората защото получих няколко писма с въпроси – Какво става, Къде се изгуби, да не се отказа от блога. Доста интересно явно по някаква странна и необяснима за мен причина хората ме четат и още по странно им допада тая парче от безсмислени глупости. За мен беше доста интересно след като преместих блога си на споделен хостинг че не ми достигат ресурсите 😆 Доста забавен факт не ми достига процесорното време от пренатоварване от прекалено много посещения 😀 Така в общи линии досега имах големия затрудния да мога да водя блогинки просто защото няма постоянен достъп до Internet но от миналата седмица съм вече в мое си жилище и отново съм глобален. Вероятно пак ще си дръпна сървърчето при мен за да не създавам излишни проблеми на хостинг доставчика ми така или иначе съм със оптична свързаност, пък и ми липсва експериментите с web услугите, да си чопля по машината ида гледам как се променя бързодействието и потреблението на ресурсите. От няколко дни замисля някоя интересна стаия вдъхновена от последните дивотии с които се занимавам но да видим какво ше род, че ми е доста натоварено cisco-то ми продължава с пълна пара ходим на англистики от фирмата, че да вдигаме ниво и свободното време отново клони към минус безкрайност.