Модернизация IT-инфраструктуры
27.08.2014 | Автор: Игорь Цупко, Notamedia (Заместитель технического директора)
Недавно мы завершили очередной этап модернизации своей IT-инфраструктуры и хотим поделиться этим небезынтересным, как нам кажется, опытом.
По мере развития компании заводятся новые сервисы, и со временем инфраструктура начинает напоминать зоопарк. Разная техника, разное ПО, разные сервисы и так далее. Сотрудники, они же пользователи, имеют учётные записи с логинами в произвольной, а часто и неинформативной форме, при увольнении данные доступы не всегда закрываются, пароли иногда «уходят» клиентам для демонстрации и об этом тут же успешно забывают. Задачи ставятся устно, в скайпе, по почте, их статус, как и затраченное исполнителем на задачи время, отслеживать становится все труднее. Еще сложнее контролировать отсутствие на рабочем месте, работу из дома, замещения, отпуска и прочее при стремительном росте числа сотрудников. Говорим же — зоопарк.
Терпеть это можно. Но недолго.
Назрела необходимость навести порядок с:
— Redmine (система «тикетов»-задач для производства);
— Битрикс-24 «Корпоративный портал» (единая CRM, учет рабочего времени, единые календари событий компании и прочая внутренняя информация);
— площадками для разработчиков и демо-площадками;
— общим хранилищем файлов;
— корпоративной почтой;
— продакшн-площадками;
— связью в офисе;
— доступом в офис.
Часть 1: безопасность данных и надёжность системы Возможно, у вас в компании так же есть CRM, в которой хранится база всех контактов, задач и отчётов. Очевидно, что система обязана работать стабильно, а ни одна душа за пределами компании не должна получить доступ к данным. И тогда вам пригодится наш рецепт:
— выносим данные в «облако»;
— защищаем связь с помощью SSL.
От традиционного выделенного сервера пришлось отказаться из соображений надёжности. На отдельно взятом сервере может выйти из строя любая деталь, от жесткого диска до блока питания, а их замена неизбежно приведет к простоям базы CRM, что в нашей динамичной сфере неприемлемо. В «облаке» же данные не привязаны к конкретной материнской плате или жесткому диску. Любой железный сервер, обслуживающий облако, можно безболезненно выключить на обслуживание или ремонт, а пользователь ничего не заметит — сервис предоставляется непрерывно.
Пользовательский интерфейс Redmine и Битрикс-24 «Корпоративный портал», как известно, представляет собой web-интерфейс с авторизацией. Http-соединение с данными сервисами мы перевели на зашифрованный https, защищенный SSL сертификатом от Comodo. Теперь обмен данными между сотрудниками и CRM защищен 256-битным RSA шифрованием.
Кроме того, мы доработали Битрикс-24, чтобы Redmine и «Корпоративный портал» взаимодействовали между собой на уровне баз данных в разрезе проектов и исполнителей. Теперь все данные по затраченному исполнителями времени на конкретный проект автоматически попадают в базу данных «корпортала», и на основании этих данных уже строятся удобные и красивые отчеты по проектам для ведущих менеджеров и руководства.
Часть 2: управление доступом Для управления доступами сотрудников на различные сервисы нужно было в ручном режиме вести базу данных о соответствующих учетных записях, помнить о них, всегда быть в курсе увольнений и т.д. С увеличением штата и количества сервисов не допустить ошибку становилось все сложнее. И мы приняли решение управлять данными доступами централизованно.
В качестве центра управления доступами был выбран инструмент, который мы знаем лучше всего. В нашем случае это Битрикс 24: «Корпортал». Мы научили его управлять базой данных LDAP, которая используется для авторизаций на разработческие и демонстрационные площадки. Таким образом, каждый сотрудник имеет доступ только к тем проектам, над которыми работает. Если же сотрудник уволен — его профиль на «корпортале» выключается директором по персоналу, и доступ на все площадки и сервисы компании блокируется.
Авторизацию через LDAP поддерживают многие системы и сервисы, но далеко не все из тех, что мы используем. Например, система аутентификации в офисную Wi-Fi сеть. Те времена, когда наша компания помещалась в трех комнатах, а Wi-Fi связь обеспечивал домашний «Wi-Fi роутер» с единым паролем, который знали все сотрудники и многие гости, остались в далеком прошлом. Чтобы обеспечить удобную, надежную и защищенную беспроводную связь на несколько десятков мобильных сотрудников, у которых основной рабочий инструмент ноутбук, мы решили использовать недорогую, но эффективную систему UniFi.
Она представляет собой некоторое количество точек доступа, централизованно управляемых мультиплатформенным программным контроллером с удобным графическим интерфейсом.
Пользователи Wi-Fi видят всего лишь аккуратные «тарелочки» под потолком:
Старые точки доступа и Wi-Fi роутеры теперь грустят на складе:
Все точки вещают единую Wi-Fi сеть (SSID), и пользователи при перемещении по офису из комнаты в комнату видят одну и ту же SSID с хорошим уровнем сигнала. Переключение между точками происходит незаметно для пользователя, как в случае с сотовым телефоном, когда абонент в пути не чувствует разрыва связи при переключении между базовыми станциями. Авторизация в Wi-Fi осуществляется по технологии WPA2-Enterprise. Контроллер UniFi работает в связке с Radius-сервером, хранящим данные пользователей, которым разрешено пользоваться Wi-Fi сетью. Чтобы не вносить эти данные каждый раз вручную, мы научили Битрикс 24: «Корпортал» взаимодействовать с Radius, и теперь ни одна учетная запись бывшего сотрудника не потеряется. Для гостей мы на тех же точках доступа добавили гостевую SSID с более привычным единым паролем wpa2 personal, но ограниченную по скорости и без доступа к локальным ресурсам компании.
Почта и файлообменный сервис Раньше для корпоративной почты мы использовали собственный сервер, потом бесплатный, но весьма надежный сервис «почта для домена» от Яндекса. Но у 90% сотрудников из-за удобного веб-интерфейса уже был свой личный gmail от google, в который они собирали всю почту и, к тому же, активно пользовались сервисом google docs. По понятным причинам держать корпоративную почту за пределами юрисдикции компании нехорошо, поэтому мы решили перейти на google apps. Таким образом, мы легализовали gmail и google docs как рабочие инструменты и одновременно решили проблему с централизованным хранением и шарингом файлов. До этого файлы передавались через личные google drive, почту, redmine, dropbox, сетевые папки и десятком других способов.
При переходе с одного почтового сервиса на другой вся история сообщений была импортирована средствами imap-синхронизации и ничего не потерялось. Чтобы не заниматься заведением и удалением пользователей google apps в ручном режиме, мы научили свой «корпортал» управлять пользователями через API google; теперь каждому новому сотруднику на «корпортале» автоматически выдается почтовый ящик на gmail и начальные 30Гб места под облачное хранилище google drive, которое можно при необходимости расширять. При увольнении сотрудника его учетная запись на «корпортале» переводится в режим неактивной, и пароль для него от этих сервисов автоматически меняется через API.
Вместо заключения На этом наши идеи по модернизации не закончились, и вот очередная ждет своего воплощения. А заключается она в том, чтобы «подружить» систему контроля доступа в офис с нашим любимым «корпорталом» для автоматизированного учета рабочего времени. Дело в том, что для прохода в бизнес-центр у нас используются пропуска в виде proximity-карт, которые привязаны к конкретным сотрудникам.
Чтобы не путаться в куче ключей и карт, мы решили использовать их и для прохода непосредственно в сам офис. Сказано — сделано, установили систему контроля и управления доступом (СКУД), и теперь можем сами выборочно допускать или не допускать отдельных сотрудников в отдельные кабинеты или в офис вообще. Из базы СКУД можно получать данные по посещениям, кто, когда пришел и ушел, и синхронизировать эти данные с модулем учета рабочего времени «корпортала». Таким образом, со всех желающих сотрудников офиса мы сможем снять рутинную обязанность нажимать на «корпортале» кнопочки «начать/закончить рабочий день», и — одновременно — эти данные будут более объективными.
Полный текст статьи читайте на CMS Magazine