На новый год с ребятами пока хиханьки хаханьки попалась нам под руки листовка конкурентов. Залезли на сайт указаный в листовке, чтоб поржать, а сайт не работает - куча ошибок вываливается. Я давай проверять информацию из ошибок - ничего не нашел. Но, интрига уже есть. Взяли сканер портов и насканили: на сервер установлено все что надо и все что не надо. Через полчаса мы уже бродили по ftp и снимали все пароли от баз данных. Еще через полчаса с сервера было слито все самое интересное, что могло меня интриговать: адреса клиентов и самое главное желающих стать клиентами, адреса оборудования, сборы выручки и вся бухгалтерская информация. Я только ужаснулся от того, какую поднаготную можно опубликовать в интернете. Причем, сервер никто даже не пытался ломать - админ просто лох, потому что не закрыл доступ. Все практически было публичным.

После того, как я посмотрел на доходы, убедился что им до песен, которые они поют в листовках еще очень и очень далеко. Мне было бы стыдно так публично врать и писать, что мы бесспорные лидеры, когда на сервере такой бардак. Ничего не настроено до конца и не доведено до ума. Таблицы БД спроектированы так, что тупее не придумаеш. Используется 10% столбцов, остальные сделаны на всякий случай авось пригодится. Для каждого месяца создается новая группа столбцов, а для каждого года своя таблица. Считать из такой горе-БД можно только на калькуляторе, но никак не запросами SQL. Порадовавшись за некомпетентность конкурентов, я сделал вывод что сегодняшний прогресс моей работе связан в большой степени с тем, что я раньше работал программистом и приобрел этим большой опыт по упорядочиванию и обработке информации. Программой задачи распределяются на сотрудников: оператор принимает заявки и записывает в базу данных, монтажники берут их из базы данных и даже могут не пересекаться с оператором. Сотрудникам делегируются полномочия, так что они могут принимать решения, например кому нужно моугт сделать компенсацию. Все действия протоколируются и оператор по непросроченым оплатам может принять решение сделать или не делать клиенту компенсацию или идти на какие то уступки.

После этих событий мне приходит мысль, что я могу и бревна в своем глазу не замечать. Я бы умер от стыда, если бы мою поднаготную так кто то слил. Решаю досрочно сделать полный аудит своему серверу и обновить сервисы. Удалил все лишнее с сервера, а хлама там накопилось довольно много за шесть лет работы. Когда то оно действительно нужно было, но не сегодня. Беспощадно в /dev/null ! Каждый лишний байт на винте моего сервера - лишний гвоздь в гроб мирового порядка :)

Обновлять сервер FreeBSD под нагрузкой - это как высотнику без страховки скакать. Некоторые сервисы не обновлялись с 2002 года!!! Я конечно следил, чтоб дырявые версии софта не имели места, но переходить на более новые ветви не рисковал. Правда, в прошлом году я от безысходности провернул финт ушами: на рабочем сервере FreeBSD 4.x обновил бинарники на FreeBSD 6.2 и уже через день плясок с бубном мой сервер превратился в FreeBSD 6.x ветки. Пару часов недееспособности понадобились для того, чтоб нормально заработала новая материнка платформы AM2 с двухедреным процессуаром. Ставилась эта система еще во времена когда 200mhz считалось фидорулезом и естесно о таких фишках, которые встроены на современные материнки понятия не имела. Вот так и сегодняшний день был потрачен на то, чтоб обновить апачи, пхп, базы данных со всеми прилегающими библиотеками, которых десятки. В конце концов я понял насколько проще в Gentoo набрать команду
#emerge -u --deep world
чтоб через сутки найти станцию с обновленным софтом. В отличие от FreeBSD, которая сама понятия не имеет какие версии программ установлены и только ругается мол "все не так и все не то, ищи в инете где мне подрочить, чтоб мне хорошо было". Вот так весь день и трахаюсь.

Следующий сервер только на Gentoo !!!