IT-ликбез: чем занимается сисадмин
Вместе с ISsoft мы завершаем цикл материалов по профессиям в IT рассказом о системном администраторе — наверное, самой стереотипной должности в этой сфере. Герой множества анекдотов и символ человека, который «разбирается в компьютерах», — какой он на самом деле? Начинавший карьеру в IT с должности сисадмина Матвей поведал, как выглядит эта работа и к чему нужно быть готовым (если вкратце — ко всему). А преподаватели БНТУ объяснили, почему такая специальность не выделена в отдельную.
Что именно делает сисадмин
— «Системный администратор» — звучит в духе «оператор ЭВМ». Стариной отдает, нет?
— Когда-то в советской номенклатуре была должность «программист». Она включала в себя и администратора, и оператора ЭВМ, и программиста — все в едином ключе. Потом должности разделились, но в некоторых организациях, особенно государственных, все осталось по-старому.
— Чем конкретно занимается системный администратор? Мышка не работает, интернет пропал — это к вам?
— В маленьких компаниях сисадмин и лампочки вворачивает, и занимается вообще всем, что работает от сети, иногда даже той, которая на 220 В. От телефонов-факсов, шредеров и заправки принтеров до поддержания ПО, работоспособности компьютеров и периферии.
А в больших фирмах, конечно, все по-другому: есть отделы системных администраторов, сетевых администраторов, технической поддержки и безопасности. Сейчас сисадмины у нас занимаются более узкими направлениями, обеспечивая работоспособность инфраструктуры компании.
— Давняя шутка: хороший сисадмин сидит без дела, потому что у него уже все настроено и работает. В реальности тоже так?
— Шутка действительно старая, из 90-х. Когда-то на самом деле такое было. Сети простые, пользователи работали без домена, поэтому оставалось только обеспечить работоспособность техники и сети. Если все настроено, отлажено и изначально правильно сделано, хороший системный администратор сидел и пил кофе.
— Сейчас по-другому?
— В компаниях с численностью за тысячу человек так не бывает. Каждое мгновение есть чем заняться: внедрение новых решений, модернизация текущих конфигураций, постоянный контроль.
Кто такой «хороший сисадмин»
— Работа явно предполагает наличие знаний широкого профиля. Как это все выучить?
— Во-первых, у человека должна быть врожденная интуиция. Во-вторых, не помешает способность определять проблему на уровне ДНК, я бы сказал. Будете смеяться, но и у меня, и у коллег такое было: приходишь к человеку — все работает. Уходишь — не работает. Возвращаешься — опять работает. Аура!
— Образование здесь важно? Кем нужно быть «по диплому», чтобы работать сисадмином?
— Как таковых системных администраторов в нашей стране не готовят, и не знаю, готовят ли за рубежом. На того сисадмина, о котором сейчас говорим — умеющем делать все подряд, — точно нигде не учат. На Западе, например, это человек, который закончил какие-то курсы, умеет переустановить Windows и настроить сеть. Но к нему не будут обращаться, если кофемашина сломалась.
В основном наши сисадмины изучали все через самообразование. Если компании заинтересованы в развитии сотрудников, то отправят системного администратора на курсы по сетевому оборудованию, программному обеспечению — таких курсов, к счастью, сейчас очень много.
— Как отличить хорошего сисадмина от не самого хорошего?
— Только при помощи времени. Зачастую не самые хорошие системные администраторы могут, условно, годами запихивать мусор под батарею. А до руководителя никак не будет доходить, что сисадмин ничего не умеет. Есть ряд тестов, и по некоторым вопросам видно, подходит ли человек, адекватный ли он.
— Адекватный — это какой?
— Он должен правильным образом реагировать на окружающую действительность. Быть психически устойчивым. Очень важна способность принимать единственно правильное решение в экстремальной ситуации. Желательно (даже обязательно) знать английский — без него сейчас просто никуда.
— Попасть в IT через сисадмина реально?
— Конечно, но с одним нюансом. Программистов, очень условно, требуется 60% среди объема IT-компании, тестировщиков, грубо говоря, нужно 30%, еще около 10% остается за бизнес-аналитиками и прочими специальностями, а системных администраторов необходимо всего один-два человека (если компания небольшая). То есть конкурс намного выше, а людей нужно меньше. При этом когда мы себе ищем нового человека, найти его непросто. Кандидатов мало, даже среди тех, кого готовы взять с последующим обучением.
— Почему так?
— Наверное, потому, что нет ни курсов, ни высшего образования по этой специальности. Самому учиться — это упорный и долгий труд, причем над самим собой. Нужно много знать, уметь и постоянно пополнять знания.
Неплохо, например, понимать, что происходит в полупроводниках и микросхемах на физическом уровне, знать ассемблер (язык программирования низкого уровня). А вместе с этим различать поколения вычислительной техники, начиная от ЭНИАКа (первый компьютер для широкого круга задач) и заканчивая, например, десятым Core i7 и i9.
— Три главных качества системного администратора?
— Первое: желание учиться. Второе: желание помогать людям. Из интроверта, который не любит общаться с людьми, вряд ли получится хороший системный администратор. Третье: умение любить технику, быть немножечко гиком.
Специальности «системный администратор» в белорусских вузах толком и нет, но в БНТУ студентов учат в том числе и по направлениям, которые связаны с администрированием сетей. Мы отправились к старшему преподавателю Светлане Беловой и заведующему кафедрой «Программное обеспечение информационных систем и технологий» кандидату технических наук, доценту Юрию Полозкову и узнали, как подготовка сисадминов представлена в университете.
Сисадмин — узкое направление
— Системный администратор — это чуть ли не старейшая специальность в IT, правильно?
Светлана Белова: История информационных сетей связывается с появлением телефонных сетей. По мере развития компьютерной техники требования к передаче информации изменились, однако компьютеры появились до компьютерных сетей. Так что программисты старше системных администраторов.
— Почему системный администратор не выделен в отдельную специальность?
Светлана Белова: Системный администратор — это довольно узкое направление. А вообще, студенты должны знать основы компьютерных сетей, какое используется оборудование, как сети объединяются друг с другом, как осуществляется передача информации, адресация. Такая база должна быть и у программистов, и у системных администраторов.
Как выглядит учеба
— Программисты и тестировщики, а заодно и люди, которые их учат, говорят: все меняется очень быстро, нужно постоянно переделывать учебные планы. В случае с подготовкой сисадминов ситуация такая же?
Юрий Полозков: Учебную программу обновляем раз в 3—5 лет. Но, конечно, какие-то доработки вносим каждый год, с учетом новых веяний и литературы.
Раньше информационные сети базировались на стационарных компьютерах, а сейчас вовсю развиваются мобильные технологии. К примеру, мы еще даже не успели освоить стандарт 4G, а уже 5G не за горами. Примут его весной следующего года, и преподаватели уже стараются внести корректировки в учебные программы.
— Студенты часто говорят, что не хватает практики, а теории много и она скучная. Какое соотношение теории и практики у вас?
Светлана Белова: Да, современные студенты очень любят, чтобы их учили практике. Но в мое время, например, нам говорили так: «Мы научим вас учиться, а дальше — учитесь сами». Думаю, к нынешним студентам это тоже применимо. Университет дает базовые знания по специальности, а выпускникам по окончании вуза необходимо освоить узкую специфику работы под руководством куратора на конкретном предприятии.
Компания ISsoft — один из крупнейших белорусских разработчиков IT-решений для рынков США и Западной Европы. Основана в Минске в 2004 году как дочерняя компания корпорации Coherent Solutions, Inc. (США). Резидент Парка высоких технологий с 2007 года. Центры разработки ISsoft в Минске и Бресте насчитывают более 1000 квалифицированных сотрудников. Компания ежегодно входит в рейтинги Inc.5000 и Software 500.
Спецпроект подготовлен при поддержке иностранного производственного унитарного предприятия «ИССОФТ СОЛЮШЕНЗ», УНП 190819327.
Читайте также:
Библиотека Onliner: лучшие материалы и циклы статей
Наш канал в Telegram. Присоединяйтесь!
Быстрая связь с редакцией: читайте паблик-чат Onliner и пишите нам в Viber!
Перепечатка текста и фотографий Onliner без разрешения редакции запрещена. [email protected]
Администрирование Windows – использование основных инструментов
Здравствуйте, сегодня поговорим о таком явлении, как администрирование Windows. Многим пользователям будет очень интересно узнать, как осуществляется администрирование. Под управление Windows для этого дела задействовано достаточно много инструментов, которые доступны любому пользователю.
Сейчас довольно большое количество пользователей, которым нет необходимости вдаваться в подробности данного понятия, им достаточно поиграть в игры и посидеть в сети Интернет. Но, если кто-то все же заинтересован в администрировании Windows, то сейчас попробуем с вами разобрать этот вопрос.
Содержание
Запуск панели управления компьютером
Есть такая полезная утилита, как панель управления компьютером. Чтобы открыть данный вид инструмента, можно использовать два способа:
- Через меню Пуск кликнуть правой кнопкой мыши по «Компьютер» и выбрать «Управление». Если ярлык Компьютера на рабочем столе, то можно сделать тоже самое оттуда.
- Нажимаем клавиши Win+R и в открывшемся окне ввести команду compmgmtlauncher. Кстати говоря, команда в данном окне сохранится и ее можно не вводить по нескольку раз.


Открывшееся окно управление компьютером имеет множество инструментов, позволяющих настроить компьютер, как вам угодно, также, некоторые службы запускаются отдельно, например, через «Администрирование».
Реестр (Редактор реестра)


Многие знают, как запустить реестр, делается это следующим образом (для тех, кто не знает): нажимаем клавиши Win+R и вводим команду regedit. Редактирование реестра очень серьезная операция, потому что, если вы не уверены в том, что делаете, то лучше довериться профессионалу. Одно неверное действие и система может даже не запуститься.
Редактор локальных пользователей и групп
Данный инструмент позволяет редактировать пользователей, которые имеют доступ к системе, а также, группы. Можно настроить доступ к системе или каким-то компонентам только для отельных пользователей. Возможность запретить использование каких-то программ и других возможностей системы.


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


Управление дисками
Штатный инструмент Windows, позволяющий нам работать с жесткими дисками компьютера. Например, инструмент будет полезен при создании новых разделов, форматировании, увеличении объема одного из разделов за счет другого. Можно производить отключение разделов или целых дисков, изменять буквы разделов. Иногда, инструмент помогает решить некоторые проблемы с флешками.


Диспетчер устройств
Очень полезная утилита, о которой многим известно. Здесь мы можем управлять установками нового оборудования и решать некоторые вопросы с драйверами. Например, вы вставили новую мышку, то она сразу же появится в диспетчере устройств в разделе «Мыши и иные указывающие устройства».


Помимо вышесказанного мы можем и отключать некоторые устройства. Можно узнать некоторую информацию об устройстве.
Диспетчер задач
Всем известный инструмент диспетчер задач. Возможностей у него немало, например, можно отыскать вредоносную программу, подозрительные процессы. Под управлением Windows 8 и 10 в диспетчере задач можно использовать вкладку «Автозагрузка» и отключать ненужные приложения, которые обычно грузятся вместе с системой.


Просмотр событий
Есть такая утилита, как просмотр событий. Инструмент может быть не понятен даже опытному пользователю, однако, он помогает выявить многие неполадки в системе. Чтобы им пользоваться, нужно иметь некоторые знания, без которых новичкам там делать нечего.


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


Системный монитор
Очень полезная утилита, которая позволяет нам в реальном времени узнать степень загруженности компонентов компьютера, а именно – процессора, ОЗУ, файла подкачки. Сам можете посмотреть, сколько там полезной информации.


Монитор ресурсов
Некоторые данные мы уже могли видеть в диспетчере задач, но в данном инструменте мы наблюдаем более подробную информацию об использовании ресурсов ПК всеми процессами. Найти монитор ресурсов вы можете из Панели управления, потом переходите в «Администрирование» и там «Монитор ресурсов».


Брандмауэр
Стандартное назначение брандмауэра – сетевая защита. Желательно, чтобы он всегда был включен, а в купе с хорошим антивирусом, компьютер будет не плохо защищен. Использование настроек данного инструмента может позволить снизить вероятность взлома вашего компьютера и попадания вредоносным программ в систему. Иногда, брандмауэр мешает запуску некоторых программ, тогда их можно добавить в список исключений и все будет нормально.


Удалённое администрирование
Как видите, для администрирования компьютера существует множество инструментов. Иногда может возникнуть удаленное управление компьютером. Возможно, вы хотите помочь своему другу с компьютером, но прийти к нему у вас нет возможности, тогда можно использовать удаленное управление компьютером.
Для удаленного администрирование существует много инструментов, но самым популярным является, конечно же, TeamViewer.


Программа очень легка в использовании и даже новичок с ней справится. Получить доступ к другому компьютеру будет достаточно легко, нужно всего лишь ввести ID компьютера и пароль, главное, чтобы Интернет-соединение было достаточно хорошим, чтобы администрирование проходило без глюков и лагов. Таким образом, вы можете помогать людям, где бы они не находились.
Итог
Сегодня мы разобрали несколько инструментов администрирования Windows и поняли, для чего они необходимы. Конечно, многие инструменты вам уже знакомы. Самое главное – не стоит вносить изменения в систему без необходимых знаний, иначе, могут возникнуть серьезные последствия.
[конспект админа] Меньше администраторов всем / Сервер Молл corporate blog / Habr
Продолжим про безопасность операционных систем – на этот раз «жертвой» станет MS Windows и принцип предоставления минимальных прав для задач системного администрирования.
Сотрудникам, ответственным за определенные серверы и рабочие станции совсем не обязательно выдавать права «администратор домена». Хоть не по злому умыслу, по ошибке, но это может подпортить всем жизнь, а то и стоить чьих-то выходных. Под катом детально разберем принцип предоставления минимальных прав как одну из технологий предоставления минимальных прав.
В качестве примера из практики могу привести грустную историю со счастливым концом. В организации исторически сложилось, что сервер печати находился на контроллере домена. В один прекрасный момент сотруднику отдела IT понадобилось перепрошить принтер, что он и проделал, запустив китайскую утилиту на сервере. Принтер заработал, но вот утилита в процессе перепрошивки перевела время на несколько лет назад. Active directory не очень любит путешественников во времени, и контроллер домена благополучно отправился в «захоронение» (tombstone).
Инцидент добавил седых волос, но второй контроллер домена спас ситуацию: роли FSMO перевели на него, а путешественника во времени повторно сделали контроллером домена. С тех пор в компании права «администратора домена» нужно заслужить.
Для профилактики подобных ситуаций неплохо будет выдавать желающим ровно столько прав, сколько нужно: если нужно администрировать только рабочие станции, достаточно выдать права только на компьютеры пользователей.
Когда компьютеров немного, включить доменную группу безопасности «helpdesk» в локальную группу «администраторы» можно и руками. А вот на большом объеме приходят на помощь групповые политики. Удобных способов два.
Первый способ: через Группы с ограниченным доступом (Restricted groups), расположенные в групповых политиках по адресу Конфигурация компьютера – Политики – Параметры безопасности.
Расположение политик Restricted groups.
Далее нужно создать группу «Администраторы» и добавить в нее нужную группу. Есть только один нюанс – если сделать именно так, то из локальной группы «Администраторы» исчезнут все, кроме встроенного администратора и самой группы. Даже Domain Admins:
Добавляем группу «Администраторы», в которую добавляем группу helpdesk.
И получаем локальную группу «Администраторы» без Domain admins.
Конечно, эту возможность можно использовать и во благо – зачистить локальные группы от лишних участников. Если же хочется избежать такой зачистки, то можно создать в «Группах ограниченного доступа» доменную группу и ее же назначить входящей в группу «Администраторы»:
При такой настройке локальная группа «Администраторы» не будет зачищена.
Вторым способом является настройка Предпочтения Групповых Политик (Group Policy Preference, далее – GPP). Искать следует в Конфигурации компьютера – Настройка – Локальные пользователи и группы.
Настройка группы безопасности через GPP.
Как и все настройки в GPP, эта проще в понимании и с более дружелюбным интерфейсом. Но если у вас в инфраструктуре присутствуют не обновленные Windows XP или даже Windows 2000, то остается только первый вариант.
Таким же способом можно дать права и на определенные серверы нужным сотрудникам. Например, дать права группе разработчиков на тестовый стенд.
Конечно, сотрудников отдела IT и системные учетные записи (например, под которыми выполняются задачи резервного копирования) проще сразу включить в группу «Enterprise Admins» и не знать горя.
Но из соображений безопасности лучше так не делать. В Windows существует набор встроенных учетных записей с набором типовых прав. Группы немного различаются для компьютера и для домена, а также ряд сервисов привносит свои группы.
Под спойлером предлагаю ознакомится с набором основных групп безопасности.
| Группа | Описание |
| Администраторы | Полные права на систему. |
| Пользователи | Возможность пользоваться без изменения системных параметров и без записи в системные разделы. Фактически пользователь – полноценный хозяин только в папке своего профиля. |
| Операторы архива | Группа, предназначенная для выполнения резервного копирования и восстановления. Участники группы могут завершать работу системы на серверах и переопределять права доступа в целях резервного копирования. |
| Опытные пользователи | Участники этой группы могут администрировать локальные учетные записи и группы (кроме администраторов), создавать сетевые ресурсы и управлять доступом на них, менять NTFS ACL (кроме смены владельца папки). |
| Пользователи удаленного рабочего стола | Членство дает возможность подключаться к компьютеру по RDP |
| Операторы печати | Операторы могут устанавливать и удалять принтеры, изменять их драйвера и настройки, останавливать и чистить очередь печати. |
| Операторы настройки сети | Могут менять настройки сетевых интерфейсов. Это полезная группа на случай если нужно переназначать получение адреса сетевой картой с автоматического на статическое. Мобильные пользователи скажут спасибо, если добавить их в эту группу. |
| Операторы учета | Пользователи в этой группе могут создавать/удалять/редактировать/перемещать учетные записи в Active Directory. Удобно дать эти права для сервиса, автоматически заводящего учетки сотрудников после приема на работу. |
Познакомиться со всеми группами и более полным описанием можно в официальной документации.
Если стандартных групп не хватает, то Windows позволяет настроить права доступа более тонко. Например, выдать отдельной группе пользователей право менять время или возможность принудительно завершать работу сервера по сети. Для этого существует механизм «назначение прав пользователей». Искать можно в локальной политике безопасности – secpol.msc или в групповой политике по адресу Конфигурация компьютера – Конфигурация Windows – Параметры безопасности – Локальные политики – Назначение прав пользователя.
Настройка прав доступа через групповые политики.
Использовать эту настройку я рекомендую в крайних случаях, и ее обязательно надо документировать. Помните о том, что когда-нибудь вас кто-то сменит и будет разбираться, почему работает так, а не иначе.
Вообще лучше всегда все документировать. Представьте ситуацию, что вы уволились из организации и вместо вас пришел человек с улицы. Поставьте себя на место этого человека. Если начал дергаться глаз или зашевелились волосы – посвятите время написанию документации. Пожалуйста!
Существует еще один хороший метод ограничения доступа к объектам – делегирование. Про эту технологию на Хабре уже писали, поэтому я лишь добавлю, что с помощью делегирования удобно выдаются права для ввода нового компьютера в домен.
Все эти технологии довольно давно существуют в системах Windows. С появлением Windows 10\2016 появилась еще одна интересная возможность ограничить учетные записи – речь о ней пойдет далее.
Just Enough Administration (JEA) – технология предоставления доступа к командлетам PowerShell. Работает на операционных системах вплоть до Windows 7 при установке Windows Management Framework 5.1 (правда, в самых старых операционных системах поддержка ограничена). Работа производится через так называемые «виртуальные аккаунты» и специально подготовленные файлы конфигурации. Примером использования JEA является выдача ограниченных прав на управление определенными виртуальными машинами – например, для ваших разработчиков.
Подробнее про JEA можно почитать в официальной документации, поэтому разберем конкретный пример предоставления возможности перезапуска виртуальной машины.
Сначала нам нужно разрешить удаленное подключение к серверу с помощью командлета Enable-PSRemoting, а заодно убедимся, что у нас Windows Management Framework нужной версии при помощи командлета $PSVersionTable.PSVersion.
Проверка версии и разрешение удаленных подключений при помощи PS.
Создадим группу безопасности и специального пользователя:
$VMOperatorGroup = New-ADGroup -Name "VM-operators" -GroupScope DomainLocal -PassThru
$OperatorUser = New-ADUser -Name "VMOperator" -AccountPassword (ConvertTo-SecureString 'P@ssword1' -AsPlainText -Force) -PassThru
Enable-ADAccount -Identity $OperatorUser
Add-ADGroupMember -Identity $VMOperatorGroup -Members $OperatorUserТеперь создадим нужные для работы конфигурационные файлы и папки. Сначала общие:
New-Item -Path "C:\Program Files\WindowsPowerShell\Modules\Demo_Module" -ItemType Directory
New-ModuleManifest -Path "C:\Program Files\WindowsPowerShell\Modules\Demo_Module\Demo_Module.psd1"
New-Item -Path "C:\Program Files\WindowsPowerShell\Modules\Demo_Module\RoleCapabilities" -ItemType DirectoryА затем создадим конкретный файл конфигурации для нашего оператора виртуальной машины с именем win. Для примера разрешим запуск и остановку виртуальной машины:
$VMRoleCapabilityParams = @{
Author = 'Сервер Молл'
Description = 'VM Role Capability File'
CompanyName = 'ServerMall'
VisibleCmdlets= 'Get-VM',
@{ Name='Start-VM'; Parameters=@{ Name='Name'; ValidateSet='win' } },
@{ Name = 'Stop-VM'; Parameters = @{ Name = 'Name'; ValidateSet = 'win'}}
New-PSRoleCapabilityFile -Path "$ENV:ProgramFiles\WindowsPowerShell\Modules\Demo_Module\RoleCapabilities\VMRoleCapability.psrc" @VMRoleCapabilityParamsТеперь необходимо подготовить файл сессии PowerShell:
$NonAdministrator = "DOMAIN\VM-win-Operators"
$ConfParams = @{
SessionType = 'RestrictedRemoteServer'
RunAsVirtualAccount = $true
RoleDefinitions = @{
$NonAdministrator = @{ RoleCapabilities = 'VMRoleCapability'}
}
TranscriptDirectory = "$env:ProgramData\JEAConfiguration\Transcripts"
}
New-Item -Path "$env:ProgramData\JEAConfiguration" -ItemType Directory
$SessionName = 'VM_OperatorSession'
New-PSSessionConfigurationFile -Path "$env:ProgramData\JEAConfiguration\VM.pssc" @ConfParamsЗарегистрируем файл сессии:
Register-PSSessionConfiguration -Name 'VM_OperatorSession' -Path "$env:ProgramData\JEAConfiguration\VM.pssc"Теперь все готово для проверки. Попробуем подключиться к серверу с учетными данными созданного пользователя командлетом:
Enter-PSSession -ComputerName SERVERNAME -ConfigurationName VM_OperatorSession -Credential (Get-Credential)Проверим список доступных команд командой get-command и попробуем остановить нашу виртуальную машину win, а затем другую машину win2.
Доступ к серверу ограничен управлением одной виртуальной машиной.
Для облегчения создания файлов конфигурации сообществом была создана утилита под названием JEA Toolkit Helper, где графический интерфейс поможет создать файлы с необходимыми параметрами.
Интерфейс JEA Toolkit Helper.
При необходимости есть возможность через групповые политики включить аудит выполнения модулей по адресу Конфигурация компьютера – Административные шаблоны – Windows Powershell – Включить ведение журнала модулей. Тогда в журнале Windows будут отображаться записи о том что, где и когда.
Журнал выполнения PowerShell.
Альтернативой будет включение записи в файл. Также через групповые политики настраивается параметр «Включить транскрипции PowerShell». Путь можно задать как в самой политике (и тогда запись туда будет вестись для всех модулей), так и в файле конфигурации сессии JEA в параметре TranscriptDirectory.
Файловый журнал JEA.
С помощью делегирования, назначения прав и JEA можно добиться отказа от использования учетных записей с администраторскими правами в повседневной работе. В конце-концов, к UAC в Windows ведь тоже привыкли и не отключаем просто потому, что «заткнись, я и так знаю что мне делать со своими файлами!».
Кто такой «системный администратор» / Habr
Внезапно обнаружил, что amarao решил сделать серию статей о том, Как стать системным администратором. Но прежде чем решаться «стать» им, стоит выяснить, кто же это такой, и что он должен делать.
Лично меня немного угнетает сложившаяся ситуация с названием специальности. Это похоже на то, как на заре развития компьютерной техники всех, кто хоть как-то умел работать с компьютерами жестко делили на две группы «пользователь» и «программист». Умеешь только включать и одним пальцем тыкать — пользователь. понимаешь что внутри происходит — программист. Так сейчас всех кто «не программист» стали звать сисадминами.
Итак, хочется внести немного ясности в то, что же такое системный администратор.
Я бы сформулировал эту специальность только так — максимальная должность по управлению всеми информационными системами предприятия.
Системный администратор — это человек, работа которого заключается:
В первую очередь — в построении политики и планировании организации всех информационных систем и сетей в компании.
В повседневности — реализация этого плана, воссоздании его в железе, конфигурации устройств, настройке софта, тюнинге, слежение за состоянием сетей, пресечение случайных нарушений, атак и прочих угроз.
В будущем — планирование развития и модернизации, изучение новых возможностей и тенденций.
Эта должность только на половину «техническая», а на вторую половину «политическая». Системный администратор это высший IT менеджер, определяющий как и куда будет двигаться всё IT в компании, а в конечном итоге на сколько просто и удобно будет пользоваться «благами IT» каждому конкретному пользователю. Ниже уровнем находятся отдельные «узкие» администраторы, типа администраторов баз данных, службы поддержки пользователей, возможно программисты пишущие какие-то местные модули. Выше уровнем остается только «не техническое руководство» — топ менеджмент и руководители фирмы. Например руководство, в силу отсутствия необходимых технических знаний, просто не в состоянии знать какое оборудование необходимо для постройки сети, где бывают узкие места и на сколько каждое из них влияет или может повлиять на бизнес-процессы. Вышестоящим как правило надо только обладать сведениями «сколько это будет стоить нам денег и времени» и «на сколько упростит работу/увеличит надежность». А как и какие будут применяться технологии, как и что будут получать пользователи, что они смогут делать, а что нет — это решения системного администратора.
То, что многие (и даже amarao в своей статье этим грешит 🙂 называют админом — зачастую это «эникейщик» (системный инженер, сменный инженер, инженер тех.поддержки), его задачи действительно разбираться с глючащими виндами, принтерами и прочим мелким барахлом пользователя. Я понимаю, что в фирме с парой сотен рабочих мест практически нет смысла брать отдельного системного администратора (как правило там и задач таких не возникает), по этому и получается, что сидит эникейщик, и в меру свободного времени и опыта, за одно выполняет и задачи по настройке серверов и железа. Страшного в этом ничего нет, в конце концов почти все системные администраторы начинали работать эникейщиками, только вот реальными системными администраторами они не являются.
Я несколько раз работал системным администратором в компаниях, где больше тысячи рабочих мест распределены по значительной территории. Например в одной из них за два года работы я ни разу не видел конечного пользователя, и всего пару раз говорил с ними по телефону. Но за то ответственность за правильность выбранной политики построения сети, планирование закупок для дальнейшего развития, работоспособность всех информационных систем, софта, серверов, сохранность данных — именно на администраторе. С эникейщика ни кто не спросит за пропажу данных, или обрыв магистрали — а вот для сисадмина это сразу будет дисквалификация, если им не было предусмотрено в структуре резервных путей, обеспечивающих бесперебойную работу при отказе отдельных узлов и быстрых вариантов восстановления работоспособности любой структуры. И решения которые принимает системный администратор как правило сказываются на всех сотрудниках, так или иначе работающих с компьютерами. Именно системный администратор ставит задачи по написанию необходимых модулей программистам, и вводит правила работы с софтом для всей компании.
Хочется привести аналогию с городскими канализациями — системный администратор это главный инженер города, который планирует как и куда надо вести трубы, где построить и как соединять подстанции. А вот бородатый и в свитере — это скорее всего местный сантехник, который трубы в доме меняет, да разводку по квартире делает. Ничуть не умаляя нужность всех профессий, но это очень разные по уровню знаний, образованию и решаемым задачам вещи.
Еще я не согласен с разделением на «профильных» и «непрофильных» работодателей. Тут скорее стоит говорить о том, есть ли востребованность в серьезном IT для каждого конкретного бизнеса. Например если смотреть в торговлю вообще — им компьютеры по сути не нужны, кассу поставил и зашибай деньги. Но тем не менее одну из самых интересных и развитых IT инфраструктур я наблюдал именно в крупной торговой сети. И на развитие там не скупились, по скольку понимали, что это «кровь» бизнеса и когда ляжет сеть, продаж не будет, а это огромные потери как прямые из-за стоящего оборудования, так и косвенные от потери доверия.
P.S. А еще интересное из замеченного за многие годы, что является пунктиком всех виденных мною отличных системных администраторов — это почти маниакальная страсть к упорядочиванию всего, что есть в его подчинении, начиная от конфигурации оборудования, документированию инфраструктур и укладыванию патч-кордов в коммутационных шкафах, и кончая идеальным порядком на собственном рабочем столе. И кстати, бородатых со свитером среди них не встречалось, хороший сисадмин скорее действительно похожи на менеджера.
P.P.S. Я оставляю за рамками статьи всех «узких» администраторов, как например администраторов веб-серверов, баз данных, почтовых, доменных, систем хранения, сетевых и так далее. Хотя даже средний системный администратор должен иметь четкое представление о сути этих специальностей и в своей работе регулярно советоваться и учитывать мнения специалистов или погружаться в область сам (при наличии сил и возможностей).
UPD: Хорошо сформулировал мои мысли inkvizitor68sl в комментарии: «Задача системного администратора построить такую систему, работать с которой сможет любой человек. Сделать её понятной. Или задокументировать. Когда в списке задач появляется непосредственная работа с конечными пользователями — человек начинает работать по двум профессиям.»
UPD2: Хорошо, я признаю, что в моем посте системный администратор выполняет три роли — CIO, администратора и архитектора. Потому, что в даже в крупных компаниях это вполне работа для одного хорошего специалиста.
Топик — повод для дискуссии.
Системное администрирование. Начало / Habr
Существует много пособий по настройке программ (Операционок, сервисов, сайтов и тд), но редко можно встретить мануал по организационным вопросам связанным с системным администрированием. Сразу скажу, опыт работы у меня достаточный. Рассматриваться предмет будет на моем личном примере работы, сразу скажу что любые аргументированные дополнения, и исправления приветствуются. Также поясню для господ минусующих: «Не нравится? Сделай лучше!», и обязательно пришли ссылку, почитаю с большим удовольствием.Ну что устроился на работу? Даже сисадмином? Даже в контору где от 5 до 50 компов (написано для тех кто устроился именно в такую фирму, потому как до 5 самому справиться и разобраться не проблема, а бросаться сразу с шашкой на танки без опыта смысла нет).
Все таки Вас приняли! Поздравляю! Но не спешите радоваться — сисадмин, это не самая лучшая должность (и вообще не должность, а состояние души), когда все работает вас могут не замечать, а когда юзер что-то сделал и все зависло виноват конечно же сисадмин.
Также хочу заметить, что тут не будет рассматриваться вопросы прокладки сети, закупки оборудования, и тому подобных моментов.
Не будет рассматриваться настройка конкретных программ, потому как Google и RTFM – лучшие друзья админа.
Первое от чего стоит себя удержать — не бросаться настраивать сервера и перекладывать сеть, до этого еще дойдет. В первую очередь стоит поговорить с руководством. Идеально если вы подчиняетесь и общаетесь по организационным моментам с генеральным. Но в любом случае надо знать от кого получать указания по работе, иначе каждая секретарша будет вас гонять.
Теперь желательно пройти с тетрадкой, зарисовывая схему помещений (в принципе можно взять план пожарной эвакуации и использовать его, а если хочется точности то взять строительный план (либо в БТИ, либо в бухгалтерии, как не странно он у них должен быть, так как налоговая требует налог на недвижимость, а он рассчитывается согласно этого плана). Записываем в тетрадочку (потом идеально сделать схему в Visio или СКС Эксперт) где какой компьютер стоит (если на вас повесили еще и АТС, то и где какой телефон). Узнаем конфигурацию машины, говорим с его владельцем-пользователем-манагером (нужное подчеркнуть, лишнее вычеркнуть) и узнаем какой софт он использует и чего ему не хватает для полного счастья. Таким образом нужно обойти всю контору, затем сесть, подумать и привести к системе полученную информацию.
Из личного опыта — Мое первое место работы — небольшая фирма, 13 компьютеров в техническом отделе, 5 в бухгалтерии, 10 компьютеров в торговом отделе, серверы — 1С, шлюз во внешнюю сеть. WiFi — точка доступа, аппаратный принт-сервер, два принтера (торговый, бухгалтерия). АТС 6х16.
Итак, начнем. Нет, все еще не идем к серверам «ставить туда линукс», и настраивать все подряд. Сядем и подумаем, как все должно работать в теории.
Важная заметка — Перестанавливать систему на сервере, очень хитрое дело, так как чаще всего в средних и мелких фирмах нет резервного сервера, то надо это делать либо ночью, либо на выходных, либо на отдельном компьютере.
После того, как ознакомление прошло успешно, в голове/на бумаге четкое понимание того как работает сейчас и как должно работать в идеале. Следующая остановка — начальство. Озвучиваем собственные соображения, делимся пожеланиями работников (теми, что мы собрали в самом начале).
Из личного опыта — Получилась примерно такая картина — Бухгалтерия — 1С Бухгалтерия, Банк-Клиент, Гарант, Контур-Экстерн. Торговый отдел — 1С Торговля и склад, система CRM, Банк-клиент (только просмотр). Тех. Отдел — куча программаторов, мануалов, схем. Для всех общее — Total Commander, Office, WinRar, Acrobat, опера, антивирус, почтовый клиент. В общем смотрите у себя по ситуации, как говориться каждому свое.
Озвучено то как было надо, а стояло как попало, у кого-то не стоял офис, у кого-то CRM, и все к друг другу бегали смотреть 🙂
На серверах — 1С — чистая Windows 2003, антивирус, базы 1С. Интернет — Windows 2003, Kerio, Merak Mail Server, антивирус.
Все это крутилось в рабочей группе, понятие безопасности отсутствовало, сортировка в документах и мануалах отсутствовала также.
Вначале были сделаны первоочередные вещи — проверка на вирусы (нашлись гадины и были преданы инквизиции), проверка на ошибки диска и реестра, найдутся у любого. Также, так как пришел на работу не просто сисадмином, а еще и следящем за 1С, проверенна 1С, убраны дубли, удаленно все что было не нужно.
Теперь можно браться и за серверы. Начнем пожалуй с интернета. Итак первый вопрос какие сервисы от него требуются — у меня получилось примерно такая ситуация — контроль, тарификация и статистика по пользователям, с квотированием и запретом определенных сайтов, почтовый сервер, DNS, файрвол, прокси, FTP. Решение можно собрать как на Windows, так и на *nix.
Пример — Windows — kerio winroute firewall (firewall, подсчет траффика, прокси, антивирус, контроль в одном флаконе), почтовый сервер (мерак или тот же керио но теперь kerio mail server), ftp – Serv-U. Пример — FreeBSD (собственно на ней и сделал) — на ней необходимые сервисы встанут в такой софт — подсчет трафика, статистика — stargazer, netams или abills, почтовый сервер — sendmail, DNS – bind, proxy – squid, ftp – proftpd. Файрволл — ipfw.
Из личного опыта — По поводу почты. В последствии ушли на google mail, чего и вам советую, доступ отовсюда, нормальная система настройки плюс всяческие дополнительные сервисы, такие как google calendar.
Процедуру настройки приводить не буду, так как софт каждый выбирает для себя сам, и всегда можно поставить, что нибудь другое вместо приведенного мною. Главное надо помнить, что сервер должен логироваться, резервироваться и обновляться. Любой, что никсы, что вин.
Теперь перейдем к серверу 1С, после некоторых раздумий было решено перейти на доменную структуру, так удобства настройки и последующей работы, гораздо большие чем при помощи рабочих групп. Плюс разграничение баз, ибо не нужно торговому отделу знать что твориться в бухгалтерии
Плюс на этом же сервере была сделана система резервирования (которая помимо создания бэкапа, сама писала на ленту, достаточно вставлять раз в день чистую. Плюс копировала по сети на мой компьютер.
Помимо этого развернул файлопомойку — дистрибутивы, драйвера, документацию, общие документы. По хорошему, под эти дела нужно было нормальный сервер, но с трудом выпросил новые харды так что работали как могли.
После настройки серверов пришло время настраивать клиентские компьютеры. Собрал системник (в дальнейшем он был в резерве), на него установил систему, и заменяя у манагеров корпус, забирал, настраивал, ставил обратно, брался за следующего. При наличии всех дисков, а диски естественно готовятся заранее, на один комп тратится примерно часа 3-4. После были сделаны clonezilla-образы и восстановление убитой системы стало занимать 15 минут.
Из личного опыта — также в это же время прочищал корпуса, Прочищал беличьей кисточкой и пылесосом, менял термопасту, подкручивал все винты, ставил заглушки.
Из личного опыта — ставьте систему удаленного управления, такую как radmin, vnc. Вообщем что знакомо и удобнее, иногда очень помогает, чтобы не бежать.
Вот собственно примерно так все и происходило, конечно не все так гладко. Но сейчас все работает. Люди довольны и гораздо меньше дергают админа, отвлекая от чтения Хабра.
И подконец пару советов, которые если бы я приминял с самого начала проблем было бы меньше.
1. Если на фирму пришел новый работник, потратьте час на обучение, проблем будет меньше, плюс назначьте из числа его соседей ответственного, к которому будут вопросы вначале, это будет гораздо быстрее, чем вам позвонят вы подбежите посмотрите и покажите кнопку «печать».
2. Потратьте день на то чтобы промаркировать кабели ЛВС и телефонов, много раз видел как просто к свичу подходит куча проводов, и не понятно где какой 🙂
3. По картриджам — постарайтесь чтобы у вас всегда был заправленый картридж. В этом случае при окончании тонера в принтере, просто меняете картридж, а потом когда есть свободное время организуете заправку. Очень редко тонер кончается одновременно у всех.
4. Ставьте на доступ к антивирусу пароль!!! Иначе в не меру умные пользователи могут его отключить, якобы для повышения скорости работы. Вы конечно узнаете это по логам, но иногда может быть поздно.
5. Проведите инвентаризацию всего железа что у вас есть, затем запишите на болванки либовнешний хард все драйвера (и желательно доки) на все это хозяйство.
6. Неплохо проверять время от времени свои сервера сканерами безопасности, к примеру тем же Xspiderom. Лучше узнать о своих ошибках первым.
7. Если вам поручили создать web сайт фирмы, конечно можете взяться, но не советую — профессионалы справятся лучше и быстрее, просто по моему личному мнению, тут меньше технической работы, а больше работы дизайнерской и верстки. А вот поддержка, добавление новостей, это уже можете спокойно делать сами.
8. Освойте хотя бы основы телефонии и электротехники. Не помешает.
9. Резервирование, резервирование… да, забыл еще раз резервирование.
10. Заведите себе список с телефонами-адресами службы техподдержки провайдера, «одинесников» и тому подобных товарищей.
11. Если система рухнула — потратьте полчаса-час, на чтение логов, из за чего это сообственно, случилось, если из за глюков железа или софта, сделайте для себя выводы. Если виноват юзер — на первый раз предупредите, далее принимайте репрессивные меры.
12. По поводу IP-адресов — советую разработать для себя систему выделения IP-адресов оборудованию.
Например:
| Серверы | 192.168.100.1 — 192.168.100.10 (static) |
| Торговый отдел | 192.168.100.20 — 192.168.100.40 (dhcp) |
| Технический отдел | 192.168.100.50 — 192.168.100.60 (dhcp) |
| Управляемая техника (точки доступа, маршрутизаторы и т.п.) | 192.168.100.100 — 192.168.100.110 (static) |
| Бухгалтерия | 192.168.100.120 — 192.168.100.140 (dhcp) |
| IP-телефоны | 192.168.100.150 — 192.168.100.170 (dhcp) |
| Тестовые или для проверки (вообщем всякое бывает) | 192.168.100.180 — 192.168.100.200 (dhcp) |
Но в любом случае у вас должна быть возможность узнать, у кого какой IP в случае статического назначения посмотрев в свои записи, либо посмотрев список dhcp leases для динамических адресов.
Также советую почитать:
Обратная связь с пользователями — великая вещь!
Документация – экономия времени или его бесполезная трата?
Техническая документация: сервера и сети.
Пользователь ПК. С чего начинают все админы? Они начинают с персонального компьютера. Чтобы администрировать систему, нужно знать систему. Это ещё не системный администратор, но первая ступенька к нему. Обычно все начинают с операционной системы Windows. Пользователь ПК должен уметь:
Нет чёткого разделения на продвинутых и не продвинутых пользователей. Эволюция пользователя ПК:
| |
Продвинутый пользователь ПК. Продвинутые пользователи иногда могут выполнять обязанности системного администратора в маленьких компаниях. Коллеги просят помочь с компьютером тех, кто лучше разбирается. Пользователь ПК должен уметь:
| |
Пользователь 1С. Пользователь ПК, умеющий работать в 1С. Это тоже не системный администратор, но некоторые должности подразумевают умение работать в 1С. Здесь я имею в виду не просто пользователя ПК со знанием 1С, а увереннго пользователя ПК со знанием 1С. Пользователь 1С должен уметь:
| |
Английский язык. Данный «талант» в RPG-схеме указан не просто так. Знания английского языка просто необходимы системному администратору. Он должен:
На собственном опыте могу сказать, что бывают задачи, решение которых можно найти только на англоязычных ресурсах. | |
Закупки. Специалист по закупкам оборудования и программного обеспечения. При минимальных знаниях такой человек может обзванивать потенциальных поставщиков и пользоваться 1С. Такому человеку будет нужна помощь специалиста для уточнения деталей заказа. Хорошему специалисту по закупкам не требуется помощь коллег. Он разбирается в технике и знает что покупает, для чего, и как это всё будет работать. Нужно разбираться в брендах: HPE, Dell, Cisco, 1С, Supermicro и т.п. В небольших компаниях обычно нет отдельного системного администратора, который занимается только закупками. Но в крупных — обычное дело. | |
Windows администратор. Он разбирается в работе клиентских и серверных систем на базе ОС Windows. Установка и настойка операционной системы, поиск и устранение неисправностей, установка ПО. Глубокие знание в сопутствующем программном обеспечении. Что должен знать и уметь Windows администратор:
| |
Linux администратор. Он разбирается в работе клиентских и серверных систем на базе ОС Linux. Установка и настойка операционной системы, поиск и устранение неисправностей, установка ПО, работа с логами. Глубокие знание в сопутствующем программном обеспечении. Администрирование Linux — это обширная область. Что должен знать и уметь Linux администратор:
| |
Active Directory. Это служба каталогов, разработанная Microsoft для доменных сетей Windows. Позволяет администраторам использовать групповые политики для обеспечения единообразия настройки пользовательской рабочей среды, разворачивать программное обеспечение на множестве компьютеров через групповые политики. Если у вас в компании есть домен, то должен быть администратор, управляющий этим доменом, начиная от добавления учётных записей и рабочих станций в домен, заканчивая написания скриптов для автоматического назначения политик. | |
| OS администратор. Системный администратор, разбирающийся в операционных системах Windows и Linux. Это совокупность Windows администратора и Linux администратора в одном флаконе. | |
Администратор сети. Человек, который рулит сетью от настройки Wi-Fi роутера до планирования СКС и управления сетью на несколько городов. Должен знать и уметь:
| |
Почта. Администратор почтового сервера. Kerio, Exchange, postfix, exim, sendmail и т.п. Управление почтовыми ящиками, учётными записями, группами рассылки. Настройка почты, антиспам, антивирус, рассылки. | |
Администратор СХД. Администратор системы хранения данных. EMC Dell, HP, IBM, Lenovo, NetApp. Сюда же обычно относят ленточки и резервное копирование. | |
| Администратор БД. Администратор специализированной БД. Установка, подключение, конфигурация, бэкап, восстановление. Более сложно: восстановление битых данных, решение проблем, репликация, зеркалирование. Хорошие администраторы БД принимают участие в разработке и оптимизации кода, решают проблемы производительности. БД бывают разные: Oracle, MySQL, PostgreSQL. MSSQL я вынес отдельно, так как знания MSSQL требуются для отдельных видов сисадминов в RPG-схеме. | |
Поддержка, эникей. Трамплин в сисадмины. Вы спросите почему эникей? Потому что показываем пользователям где находится «any key», когда компьютер просит «Press any key». Поддерживаем пользователей, решаем их проблемы, администрируем рабочие станции, протираем пыль с мониторов. Печать, сканирование, проекторы, банк-клиенты. Не нужно думать, что стать эникейщиком просто. Требуются обширные знания с сфере IT и способности находить решения проблем. Но уж если вы эникейщик, то повысить свою квалификацию уже проще. | |
| Виртуализация. Администрирование виртуальных сред. Например, VMware или Hyper-V. | |
АТС, телефония. Рулим телефонами пользователей, маршрутизацией вызовов, SIP, переадресация, потоки. CUCM, Asterisk. Администрируем телефоны, виртуальные и железные АТС. Боремся с шумами, эхом и разрывами. Непонятно почему мы этим занимаемся, этим должны заниматься телефонисты. | |
MSSQL. Администратор БД Microsoft SQL Server. Это отдельно вынесенная часть администраторов БД. Установка, подключение, конфигурация, бэкап, восстановление, восстановление битых данных, решение проблем, репликация, зеркалирование. Очень часто требуется для администрирования 1С. | |
Информационная безопасность. Обычно безопасники относятся к другому отделу и должны подчиняться непосредственно генеральному директору. Но иногда их функции выполняют сисадмины. СКУД, видеонаблюдение, антивирусы, антиспам, контроль доступа, двухфакторная авторизация, firewall, выявление и устранение уязвимостей, обновления, прошивки, шифрование. Много чего. Я знаю и безопасников, которые стали админами, и админов, которые стали безопасниками. Так что профессии смежные. | |
| Web-сайты. Управление всем, что связано с сайтами. Web-сервера, проксирование, балансировка, failover, high avablility, кластеры, фермы, хостинг, FTP, DNS. Зачастую правка чужого кривого кода. Требуются хотя бы начальные знания HTML, javascript. | |
1С администратор. 1C: Предприятие, 1С: Бухгалтерия и прочие страшные смеси бухгалтерии и программирования. Требуются знания MSSQL и умение поднять из бэкапа то, что убили бухгалтеры или разработчики 1С. Иногда администрированием 1С может заниматься грамотный 1С разработчик. А грамотный 1С разработчик + грамотный сисадмин в пару к нему — это уже залог успеха. Также потребуются знания веб-серверов, IIS в частности. P.S. 1С тормозит всегда. | |
DevOps. Development Operations. Смесь системного администратора и разработчика. Направления разные в зависимости от технологий разработки и обязанностей администратора. Движение модное, направлено на устранение барьера между разработчиками и администраторами. Занимается интеграцией, автоматизацией, деплойментом, мониторингом и автоматизацией. Автоматизация не зря написана два раза.Тесно сотрудничает с разработкой. Хороший DevOps знает несколько веток в RPG-схеме системного администрирования. | |
Инженер. Только эти люди должны трогать серверное железо. Имеют представление об электрике, оптике и слаботочке. Умеет работать и руками и головой. Бывают просто инженеры по оборудованию. Люди, которые могут заменить сгоревший винт и установить сервер в стойку. А бывают другие инженеры. Они разбираются во всём железе, прошивках и настройке оборудования разных вендоров. Способен спроектировать и реализовать проект для решения поставленной задачи. Знает несколько веток в RPG-схеме системного администрирования. Действует в связке с архитектором, IT-директором, сетевиками, безопасниками и остальными админами. | |
Архитектор. Человек-голова. Как и инженер знает несколько веток в RPG-схеме системного администрирования. Способен спроектировать и реализовать проект для решения поставленной задачи. Отвечает за соблюдением архитектуры проекта. Должен уметь обоснованно рубить на корню разного рода дурацкие идеи типа «а давайте…». Действует в связке с инженером, IT-директором, сетевиками, безопасниками и остальными админами. | |
IT-директор. Это больше управленческая должность. Знает несколько веток в RPG-схеме системного администрирования. Должен быть хорошим переводчиком с русского на админский и обратно. Создаёт условия для эффективной работы IT отдела. |
Администрирование компьютеров в локальной сети до загрузки операционной системы
Привет, хабрахабр! Эта моя первая статья и посвящена она удаленному администрированию. Надеюсь, что она будет интересна не только системным администраторам, но и просто продвинутым юзерам, так как использование некоторых компонентов может вам пригодиться.В основном речь пойдет об администрировании компьютеров до загрузки операционной системы. Когда количество компьютеров невелико, на поддержку их работоспособности не требуется много человеческих ресурсов. С расширением парка компьютеров, их обслуживание становится более затратным. В моем случае, организация обладает около 100 компьютеров. Переустановка операционных систем, восстановление образов операционных систем занимает много времени. Мне приходилось обслуживать каждую единицу техники отдельно. Поэтому, встала задача разработать систему, которая упростит жизнь администратора и увеличит количество свободного времени, которое можно потрать на более интересные вещи.
Существует множество софта, который умеет делать подобные вещи, тем не менее, каждый из них обладает недостатками, которые я постарался убрать и разработать такую систему, которая удовлетворяет моим требованиям.
Что для этого нужно?
Клиентская машина должна обладать сетевой картой, которая поддерживает стандарт PXE (есть практически в каждой сетевой карте). Не буду описывать принцип работы данного стандарта, в интернете есть много информации для ознакомления. Скажу лишь, что он позволяет загружать файлы по сети. Ну и в BIOS нужно включить загрузку по сети. Настройка клиентской части на этом закончена.
Сервер должен включать DHCP и TFTP. Чтобы не заморачиваться с настройками, я использовал программу TFTPD32, которая уже включает все нужные компоненты. Программа находится в свободно доступе с открытым исходным кодом.
Для настройки DHCP пришлось побегать и снять MAC адреса с каждого компьютера. Это нужно для идентификации компьютеров в сети. В TFTP сервере нужно было указать только папку выгрузки файлов и поместить в нее все необходимое. Загрузчик, который будет выполнять все операции — grub4dos. Был выбран именно этот загрузчик, так как опыта по созданию загрузочных USB-накопителей с ним достаточно, да и информации куча в интернете.
Теперь о принципе действия.
1. При включении, компьютер обращается к DHCP серверу за IP адресом.
2. DHCP сервер, согласно своей настройке, выдает нужный IP клиенту, так же IP адрес TFTP сервера и имя загрузочного файла. В моем случае файл загрузчика grub4dos — grldr.
3. Клиентский компьютер, приняв запрос, устанавливает себе IP и обращается к TFTP серверу с запросом загрузочного файла.
4. TFTP сервер отдает запрашиваемый файл. Выглядит это так:
Ответ сервера5. Загрузив файл, PXE запускает загрузчик и заканчивает свою работу. Дальнейшая работа выполняется загрузчиком. После запуска загрузчик запрашивает файл menu.lst. В этом файле содержаться инструкции для установки ОС или запуска утилит.
6. Сервер передает файл menu.lst
7. Программа-загрузчик на клиенте «читает» инструкции и выполняет их, загружая с TFTP сервера требуемые файлы.
Суть в том, что программа TFTPD32 всегда выдает один и тот же файл инструкций menu.lst. То есть, без изменений нельзя было назначать разным компьютерам разные задачи. Раз программа с открытыми исходниками, я нашел в коде то место, где программа отправляет файл menu.lst и изменил его.
В итоге, как только клиентская машина запрашивает у сервера файл menu.lst, программа, посредством http протокола отправляет GET запрос на веб-сервер (http://localhost/getmenulst.php?ip=IP) для запроса файла инструкций для конкретного IP. Файлы инструкции хранятся в базе.
Для наглядности, приведу новую схему.
Далее стояла задача подготовить образы для установки ОС систем и загрузки утилит, а так же написать файлы инструкций menu.lst.
Например, menu.lst для установки windows 7 выглядит так:
color blue/green yellow/red white/magenta white/magenta
timeout 0
default 0
title Install Windows 7
pxe keep
chainloader --raw (pd)/pxeboot.n12
Для загрузки Acronis True Image:
Loading Acroniscolor blue/green yellow/red white/magenta white/magenta
timeout 0
default 0
title boot acronis
#root (hd0,0)
kernel /kernel.dat vga=788 ramdisk_size=32768 acpi=off quiet noapicmbrcrcs on
initrd /ramdisk.dat
boot
Не буду приводить все опции, чтобы не нагружать статью.
Очень много времени ушло на сборку образов с требуемым софтом и подготовки их для установки по сети, так как это не просто копирование файл в каталог. Из ОС систем я собрал только Windows 7 и Windows XP. Пришлось влезать в Acronis True Image, чтоб сделать автоматическое восстановление системы из образа. Так же закачал ISO образы нескольких нужных утилит.
Для управления всем этим «чудом» написал небольшую панель администрирования на PHP+MySQL. Она позволяет добавлять/удалять компьютеры, добавлять/удалять опции, а так же устанавливать опции загрузки. Так же мы можем увидеть время последнего включения компьютера и опцию, которая ему установлена. По умолчанию устанавливается «Загрузка с жесткого диска».
Не обращайте внимания на первую часть панели администрирования. Там реализована возможность удаленного управления установкой программ с помощью программы uTorrnet, о чем я напишу в следующей статье, если это кого-то заинтересует.
Подведу итоги. Данная система работает в реальном времени. Порой я нахожу баги и исправляю их, добавляю новые опции.
Порядок работы такой: мне звонят и говорят, что не загружается система на компьютере «Имя». Я захожу в панель администрирования, ставлю опцию «Загрузка Acronis» и прошу человека на том конце провода перезагрузить компьютер. Дальше система восстановит сама все из образа и сообщит пользователю, что он может работать. Если устанавливается новый компьютер, его MAC вносится в базу данных, в панели ставится опции установки ОС и Windows устанавливается сама без какого-либо участия.
Это очень удобно, потому что часто мне приходится уезжать, а так я могу исправлять проблемы, находясь где угодно. Стоит отметить, что нет финансов на приобретение качественного оборудования. Живем, как можем.
Конечно, до полной автоматизации еще много работы, но поверьте, жить мне стало легче.

