О Проекте RobotNET

Отправная точка размышлений о проекте RobotNET берет начало в 2005 году (хотя в то время, по сути, конкретно о Проекте RobotNET речи не шло) и основывается на личном опыте авторов по решению комплекса задач контроля, управления, администрирования и обеспечения безопасности IT инфраструктуры. Когда же мы начинали этот проект, многие спрашивали: “Зачем делать и развивать этот велосипед, когда на рынке масса разнообразных технологий и софта для решения задач администрирования? Ставь, настраивай и пользуйся.” Ответ был прост: “Да, всего много. Все быстро развивается. Но у нас нет единой технологии, которая позволила бы решать весь комплекс поставленных задач, в том числе и с учетом финансовой составляющей, удобным для нас способом.”

Такой диалог в большинстве случаев заканчивался “ничем”. Об этом можно рассуждать долго и упорно. Многие наши коллеги не согласятся и, в некоторых случаях, будут правы. Например, в большинстве небольших компаниях, где всего один или два офиса объединенных VPN и имеются несколько серверов, а может быть несколько персональных компьютеров, безусловно, удобнее использовать популярные на рынке технологии и инструменты администрирования, которые единожды настроенные, могут работать годами. Все легко и понятно. Но вся разница, как говорится, – в деталях…

Понимание происходящего, как правило, приходит когда начинаешь выполнять разнообразные креативные задачи… Далее все просто, – или ты упираешься в недостаток существующих технологий и софта, или начинаешь разводить “зоопарк” софта, или у тебя начинает страдать составляющая безопасности, или требуется настройка кучи промежуточного оборудования, или ты вынужден бесконечно обращаться к всезнающему “гуглу” и “танцевать с бубном” и т.п. В общем все как в настоящей жизни, – гордо преодолеваются проблемы, производится отчет о проделанной работе и все успешно забывается спустя какое-то время. Все хорошо. Время идет и требуется решение все новых и новых задач.

Все серьезные проблемы начинаются когда постановка новых и решенных задач неожиданно расширяется нестандартным образом, дружный коллектив разваливается в силу различных обстоятельств, гениальные системные администраторы и программисты увольняются или просто исчезают, поиск новых сотрудников усложняется, финансирование сокращается, софт устаревает или вообще перестает работать, физически недоступное оборудование становилось вообще недоступным, и т.д. – наступает черная полоса в жизни. Тут конечно, многие скажут, что в правильной компании и у правильного администратора такого быть не может по-определению. Возможно, но мы, как и большинство, к таким, увы, никогда не относились 🙂

Идея Проекта RobotNET родилась после очередного коллапса в дочернем офисе, в то время как весь творческий и идейный коллектив будущих разработчиков находился в командировке на одном из множества остров Средиземного моря. В итоге проблемы были решены, а данное событие дало толчок начала реализации проекта RobotNET как инструментария для инженерной службы компании. В тоже время, анализируя проделанную на протяжении последних нескольких лет работу, были сформулированы ключевые тезисы, заложенные в проект RobotNET.

Вот основные из них:

  • необходимо иметь возможность администрирования неограниченного количества компьютеров вне зависимости от географического места их нахождения и профессиональных навыков системных администраторов на местах;
  • необходимо, чтобы базовая установка системы на клиентской машине была быстрой и простой, независимо от наличия прав администратора;
  • при решении задач администрирования не должно быть препятствием отсутствие технической возможности прямого доступа к обслуживаемым компьютерам;
  • при решении задач администрирования не должно быть препятствием отсутствие возможности контакта с пользователем компьютера (в том числе с учетом его низкого уровня владения компьютером);
  • необходимо осуществлять постоянный мониторинг работы удаленного компьютера;
  • необходимо обеспечить максимальное использование канала передачи данных при выполнении задач администрирования;
  • т.к. заранее неизвестны задачи, решаемые на удаленной машине, необходимо иметь возможность загрузки и выполнения внешних приложений/модулей;
  • необходима инвариантность к средами разработки приложений/модулей;
  • для различных разрабатываемых/разработанных приложений/модулей необходим единый способ сетевого взаимодействия в сети без дополнительной технической подготовки;
  • уровень безопасности трафика между узлами должен быть настраиваемым, в зависимости от выполняемых задач;
  • необходимо иметь возможность осуществлять изоляции машин в оверлейной сети;
  • способ передачи данных в оверлейной сети не должен быть привязан к какой-либо одной среде передачи – инвариантность к средам передачи данных;
  • маршрутизация трафика оверлейной сети должна быть максимально настраиваемая;
  • вся инженерная система должна быть максимально отказоустойчивая (некритичная к выходу из строя «железа») и удобная для обеспечения непрерывного технического обслуживания;
  • низкая требовательность к программному обеспечению и техническому оборудованию клиентских машин;
  • весь обслуживающий программный комплекс в соответствии с политикой безопасности должен располагаться на собственном оборудовании компании.

Как и в любой компании, мы, безусловно совершили множество ошибок, но с другой стороны, пройдя длинный путь, мы получили огромный опыт и реализовали проект RobotNET, которым хотим поделиться с тобой, Уважаемый Пользователь!

Авторы Проекта RobotNET

https://robotnet.org/