Pull to refresh

Windows Deployment Services и DHCP-сервер на Linux + пара особенностей

Reading time4 min
Views26K
Привет Хабро-людям!

Будучи начинающим администратором, я стремлюсь познать все новое и как губка впитывать информацию. Так же ценю порядок в IT-инфраструктуре предприятия, логичность, доступность и универсальность. Стремясь добиться последнего, (использовать для Active Directory nix-овый DNS — BIND) не так давно потерпел фиаско, но не останавливаюсь на достигнутом. Я хотел бы поделиться с вами информацией, касающейся роли Windows Deployment Services в Windows Server 2012 и настройкой ее для работы со сторонним DHCP-сервером на Ubuntu Server.

Часть 1. Настройка DHCP-сервера


Вся сеть в нашей организации построена на UNIX-системах, а для, пусть и скромного по меркам IT, парка машин в 50 шт. все же хочется использовать все современные блага и удобства администрирования. Встал вопрос: как разворачивать Windows на ПК пользователей по сети, когда TFTP-сервер будет находиться отдельно от DHCP? Задача, хоть и простая, но заставила меня бегло изучить работу и настройку DHCP-сервера на Ubuntu. Нам же важна универсальность. :) Не поднимать же ради этого «виндовый» DHCP.

Всего-то требовалось, при описании сети, указать командой next-server, что TFTP-сервер находится на другом хосте. Приведу фрагмент конфига DHCP на примере сети 192.168.1.0/24:

shared-network 2_Users {
    subnet 192.168.1.0 netmask 255.255.255.0
        {
            range 192.168.1.2 192.168.1.254;
            default-lease-time 3600;
            max-lease-time 7200;
            option domain-name "test.jp";
            option domain-name-servers 192.168.1.1;
            option routers 192.168.1.1;
            next-server 192.168.2.2;  #Вот как раз строка, которая сообщает клиентам DHCP, что TFTP-сервер с PXE-загрузчиком находится на другом сервере. Он может находиться даже в другой подсети, главное, чтобы был туда маршрут.
            option tftp-server-name "addc1.test.jp"; #DNS-имя нашего сервера с ролью WDS. Указываем на всякий случай, лишним не будет. 
            option bootfile-name "boot\\x86\\wdsnbp.com"; #Указываем, где на нашем сервере лежит файл для сетевой загрузки. 
        }

Вот, собственно, и все. /etc/init.d/isc-dhcp-server restart. Переходим к настройке WDS.

Часть 2. Настройка роли Windows Deployment Services


Об установке роли вряд ли можно что-то сказать. Она проста, не требует перезагрузку и просит указать, какие компоненты нужно ставить. Нам нужны оба компонента: Сервер развертывания и Транспортный сервер.

После установки роли, ее консоль будет доступна в списке Администрирование Панели управления Windows Server и носит название Службы развертывания Windows.
image

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

Если в вашей сети используются доменные службы Active Directory, то при настройке сервера можете указать, будет ли сервер изолирован или завести его в AD. Куда важнее будет позже отметить, что DHCP-сервер находится в другом месте и не нужно слушать подключения на портах нашего WDS-сервера.
  • Вам потребуется указать, интегрировать ли сервер в AD
  • Указать место хранения образов установки
  • Выбрать политику ответов клиентам. Здесь немного подробнее.

image

Если ограничиться только установкой системы, то можно выбрать пункт «Отвечать всем...» т.к., установка Windows потребует пары логин/пароль от сервера, с которого происходит загрузка. Несанкционированная установка «винды по сетке» не прокатит.
  • В конце будет предложено добавить первый образ

Хочу обратить ваше внимание на вкладку «Протокол DHCP» свойств сервера.
image

Здесь как раз и требуется снять птичек, если вы используете сторонний DHCP-сервер. А на вкладке «Клиент» можно указать, заводить ли новых пользователей в домен.
image

Часть 3. Интересности


Как известно, образы Windows добавляются на WDS-сервер в два этапа: добавления загрузочного образа (boot.wim) и образа установки (install.wim). Вот тут я и заметил маленькую и интересную особенность. В нашей компании используются ОС Windows, начиная с Windows 7, Server 2008R2 и заканчивая Windows 8.1 и Server 2012. Как известно, содержимое boot.wim — это то, что мы видим, запустив установку Windows с диска. И если при установке с диска важны только драйверы на контроллер HDD, то для сетевой установки важны еще драйвера на сетевой адаптер. В этой статье хорошо описан способ внедрения драйверов в дистрибутив с помощью WAIK. Но когда я добавил образ загрузки из дистрибутива Windows 8.1 и проверил его, то заметил, что база драйверов на сетевые адаптеры расширена. Но главная особенность не в этом. :) Используя один, самый последний образ загрузки Windows (пусть даже собранный вами лично с помощью WAIK), можно устанавливать любые редакции Windows, начиная с Windows Vista, заканчивая Windows Server 2012R2. Вам не нужно добавлять кучу образов для загрузки — выберет один, универсальный и современный. Можно добавлять только образы установки (install.wim), выбирая, какие редакции Windows вам нужны.

Вы можете создать в консоли управления WDS группы образов…
image

… и в результате получите при установке список всех ОС, из групп Desktop и Servers, выберете нужную и проинсталлируете. Не забывайте, для установки требуется ввести логин/пароль администратора сервера.

Содержимое каталога, где хранятся образы установки, будет выглядеть следующим образом:
image

Несмотря на банальность происходящего, это не помешает вам установить любую Windows из добавленных вами на сервер.

Вот, собственно, и все, чем я хотел с вами поделиться. Если хотите расширить возможности WDS, на хабре есть статья "Добавляем WDS универсальности", где еще больший любитель этой самой «универсальности», рассказывает, как заставить WDS использовать GRUB2, а отсюда и установка Linux и утилиты реанимации… В общем, все для того, чтобы современный админ не таскал с собой флешку.

Я за совместное использование Windows и Linux. Спасибо за внимание!
Tags:
Hubs:
Total votes 7: ↑6 and ↓1+5
Comments4

Articles