Grabduck

Анализируй это, или почему я каждый день опаздываю и получаю премию

:

Мысль написать эту статью родилась около недели назад, именно тогда, в фирму, где я работаю около 3-х лет мне взяли помощника.

Через пару дней после его выхода на работу, краткого экскурса и небольшой теории, от него прозвучал вопрос: «- А почему тебе так мало платят? Ведь доступность всех служб и сервисов у тебя не менее 99,98% в рабочее время уже как больше года…»

Если честно, то именно этого вопроса я и не ожидал, и ответить в ту же секунду был не готов, но после пяти минут раздумий, все мысли встали на место, я постарался сформулировать ответ, и выдал нечто следующее:
— Во первых, мне нравится моя работа, и я работаю в свое удовольствие.
— Во вторых, я прихожу на работу когда высплюсь (обычно это около обеда), ухожу не позже 18.00, и в любое время могу уйти на 2-3 часа по своим личным делам.
— В третьих, 1500$ не такая уж и маленькая сумма для третьего по величине города России.

А теперь я хочу рассказать о том, как добился этого, и чего мне это стоило. Кому интересно-прошу под кат:

Не так давно, всего каких то 2 с половиной года назад, я закончил колледж по специальности АСУ, и приехал в этот город, дабы найти интересную и достойную работу. За то время что я должен был ходить на пары и спать на лекциях, мне выпал отличный шанс поработать на благо стен в которых меня учили — в ЦИТ (центр информационных технологий). Именно там (в ЦИТ) я первый раз увидел линукс, услышал много неизвестных для меня слов и влюбился в свою профессию. На базе ЦИТ я написал диплом о всем уже известном Asterisk’e, получил отлично и вышел в мир наполненный новыми знаниями и технологиями.

После того как я написал резюме, мне позвонили и позвали на собеседование, в одну немаленькую компьютерную фирму. Как оказалось, ключевым моментом оказался Asterisk, и меня взяли на работу.

В итоге с записью в трудовой, я получил около 30 серверов 250 рабочих станций.

С чего начать?

Конечно, начинать надо с понимания того, что с чем работает и как все это взаимодействует. Тем, кто приходил работать в компанию, в которой уже кто-то что делал, знает, что это нелегко, а порой ужасно сложно понять ход мыслей того, кого ты даже в глаза не видел. Получив в распоряжение свою рабочую лошадку, ставлю туда SlackWare, первым делом, для понимания и наглядности я поднял мониторинг, выбор пал на XYMON, т.к. он очень информативен и довольно прост для установки и конфигурации, fping’ом просканировал весь диапазон локальной сети, и nmap’ом определил, что нужно мониторить, а что нет.

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

Проблема №1

Так как подразделения фирмы располагались в 5-и разных точках города, то первая и основная проблема была именно в едином сетевом окружении, а именно 1С, почта, телефония, и т.д. В качестве роутеров в каждом подразделении стоял Alt Linux с OpenVPN, который явно не справлялся со своими задачами, и после непродолжительного анализа было принято решение заменить это все на OpenBSD + IPSec. Переход на новую систему роутинга занял примерно 2-а месяца. За это время были подняты и протестированы все «новые» гейты, для доступа из вне я поставил OpenVPN с именными сертификатами, после чего настала пора переходить к проблеме №2.
Проблема №2

Так сложилось, что мои предшественники не очень — то и заботились о том, что творится на рабочих станциях пользователей, вследствие чего я наблюдал не просто рассадники, а целые колонии вирусов, троянов, руткитов и прочей дряни, которую можно подцепить из ICQ или непонятных сайтов знакомств. Первым делом я решил максимально ограничить доступ ко всем ресурсам, не относящимся к прямой деятельности компании, и понеслось. В качестве прокси, был выбран SQUID+ SAMS+KERBEROS+AD (Благо какой-никакой домен уже был поднят), настроены блэк листы и регулярные выражения для блокировки «ненужного» на мой взгляд контента.
Теперь, когда весь интернет трафик мною контролируется, настала очередь антивируса, каждый выбирает свой, а я всегда пользовался Касперским, и первым делом, на своей рабочей машине (на которой уже стоит сервер мониторинга) поднимаю виртуалку. Выбрал VBOX, т.к. на slackware она ставится очень просто и ее можно запускать в фоном режиме. Теперь можно поднимать w2k3 для сервера администрирования Антивируса Касперского. Осталось его только настроить. Часть блок поста готова. Идем дальше.
Проблема №3

Как уже было сказано выше, в сети творилось нечто ужасное, вирусами были заражены 75-80% рабочих станций. На мой взгляд, самый верный способ избавится от вирусов- format C, так я и поступил, однако прежде пришлось забэкапить всю очень важную информацию, типа почты, и прочего. Для временных и постоянных бэкапов, а также для общих фалов, в каждом подразделении были подняты «сервера» с samba, емкость в 1Тб в Raid 1. Переустановка происходила частями. Для начала выбирались подразделения с наименьшим количеством компов, подготавливалось все необходимое, и, начиная с вечера пятницы по утро понедельника на машины накатывалась винда и ставился необходимый софт. После установки всего необходимого, с машин снимался полный образ винта и ложился на тот самый бэкап сервер.
По истечении каких-то 5-6 месяцев, все рабочие станции были приведены полную боевую готовность и для каждой из них был адекватный бэкап, который разворачивался в течении 5-10 минут. Теперь, когда пользователи больше не нервничали из-за зависших приложений, можно было идти дальше.
Проблема №4

Конечно, проблемой это назвать нельзя, но меня, почему это очень задевало. А дело было в распределении номерного плана на сервере Asterisk. В те славные времена, когда Asterisk появился в компании, номера раздавали всем по порядку, и с тех пор только добавляли, и добавляли, т.е. внутренний номер начинающийся 1 мог быть во всех 5-и удаленных офисах.
После некоторого раздумья и согласования на верхнем уровне, было решено использовать 4-х значные номера. Для каждого удалённого офиса первая цифра была своя, а остальные три цифры были для внутренних подразделений, т.е. чтобы позвонить операторам Call-центра для каждого подразделения они изменялись всего лишь первой цифрой. Тоже самое касалось начальства, охраны и т.д. Также для операторов Call-центра был установлен Asterisk CDR и Asterisk FOP.
Проблема №5

Так как я работал в основном один, то возможности отвечать на внутренний телефон первый год у меня практически не было. Переадресация на сотовый спасала, но, к сожалению, не все можно решить по телефону, настало время подумать о хэлпдеск. Исследовав все что есть в интернете, мне приглянулся OOZ, установил его все на туже свою рабочую машину, раздал руководителям подразделений логины и пароли, сделал небольшую презентацию и провел краткое обучение. Также настал период, когда я стал забывать о том, как сделать то, что я уже когда-то сделал. Например, настройки шейпера, или pf, и я решил сделать некий справочник, выбрав для этого MediaWiki. Теперь большинство проблем, возникших у пользователей, они могут решить сами, открыв соответствующий раздел (мой новобранец сейчас изучает ее с большим удовольствием).
Проблема №6

Компания, в которой я работаю, в этом году будет праздновать свои 15 лет, и наш домен давно известен, теперь борьба со спамом после всего что я уже успел сделать встала на первое место. Почтовый сервер стоит под управлением все той же slackware+ CommuniGatePro(когда-то давно купленный). Раньше стоял spamassasin, но со своими прямыми обязанностями он справлялся не особо, теперь у него в напарниках стоит антиспам Касперского и спама стало значительно меньше.
Со времен последней «глобальной» проблемы (отключения света в серверной), прошло уже больше полу года. С тех пор я каждый день опаздываю, раскладываю пасьянс, пью чай, и не работаю по ночам.

На этом можно и закончить, хотя еще много можно было бы писать о том как я сражался с 1С, доменом, сетевыми принтерами и прочей оргтехникой, но по прошествии времени что то забылось.

Спасибо за внимание!

UPD: Огромное спасибо тем кто помогал мне в этот нелегкий период, а именно: Яковлеву Геннадию, Дюрягину Виталию, Пятницину Вячеславу, Радеонову Михаилу, Кадырову Руслану, Иванову Антону, Варенову Дмитрию, и Овчинникову Вячеславу!