server2003-install

установка MS Server 2003 – секреты и советы

крис касперски ака мыщъх, no-email

MS Server 2003 – абсолютный лидер среди рынка SOHO-серверов, используемый в качестве файлового сервера и сервера печати. конкуренция со стороны Linux и BSD систем в этом сегменте рынка крайне слаба, поскольку мелкие организации просто не в состоянии (со)держать квалифицированного администратора, а кажущаяся легкость установки Server 2003 создает впечатление, что с ним справится даже секретарша. отчасти это действительно так, но воздвигнуть быстрый, надежный и защищенный сервер не так-то просто! в попытке уберечь начинающих администраторов от типичных ошибок и было написано это пошаговое руководство.

Проблемам установки и эксплуатации Server 2003 посвящены сотни книг и тысячи статей, причем, каждый автор гнет свою линию, зачастую противоречащую всем остальным. В одной статье советуется одно, в другой — другое… короче, сколько людей, столько и мнений, что, впрочем, совершенно неудивительно. Универсальных решений нет и поставленную задачу можно решить множеством способов.

Мыщъх исповедует принцип минимализма, заключающийся в отказе от всех дополнительных функций. Если мы можем обойтись без DHCP-сервера, прописав IP-адреса руками, значит, именно так и нужно поступать. Если мы можем обойтись без службы Active Directory — просто забудем о ней! Конечно, кому-то такая концепция может показаться изначально порочной (а как же технический прогресс? может, вообще вернутся в пещеры, назад —в каменный век?!), но… как показывает практика, чем сложнее система, тем больше шансов у нее сломаться. Чем больше служб и компонентов запущено за сервере, тем хуже для администратора.

Автоматизация поначалу кажется хорошей идеей, но… решая одни проблемы, она порождает другие и постепенно начинаешь понимать, какое же это блаженство все делать вручную! Вот только не нужно со мной горячо спорить! Было же сказано выше, что это концепция, а не догма. Просто концепция, одна из многих. Мыщъх, подрабатывая внештатным администратором на нескольких предприятиях, вовсе не высосал ее из пальца, а выработал годами, стремясь упросить свою жизнь и облегчить участь пользователей.

Советы по установке, настройке и эксплуатации Server 2003 разбиты на шесть шагов и покрывают практически все вопросы с которыми сталкиваются начинающие администраторы (ну, на счет «всех», мыщъх, конечно, погорячился, но все-таки).

Рисунок 1 внешне Server 2003 очень похож на XP

Собрать сервер можно и на базе обычного PC. Ничего зазорного в этом нет. И работать он будет ничуть не хуже, чем железо от ведущих производителей, собирающих его из тех же самых комплектующих, что продаются на рынке. Подойдет любое качественное железо. Без памяти с контролем четности можно и обойтись, а вот от наличия активных охлаждающих элементов в лице «куллеров» желательно воздержаться. Их не должно быть ни на чипсете, ни на видео-карте. Исключение составляет, пожалуй, один лишь блок питания. Его следует брать с большим запасом по мощности так, чтобы он сохранял свою работоспособность даже после выхода вентилятора из строя. Что поделаешь — сервер такая вещь, в которую заглядывают нечасто.

Жесткие диски (по опыту тех, кому приходится их ремонтировать) лучше брать 500 Gb Seagate как самая удачную модель, к тому же легко восстановимую в случае аппаратного отказа. Интерфейс, естественно, IDE, а SCSI оставим тем, кому действительно нужна большая производительность и обработка большого количества запросов на в/в. Использовать SCSI-диски в SOHO-серверах все равно, что летать за сигаретами на вертолете. Тоже самое относится и к RAID-массивам. Как показывает мой личный опыт, отказы жестких дисков далеко не самая частая причина разрушения данных. К тому же, за использование дешевых интегрированных RAID-контроллеров, администраторов нужно расстреливать на месте, поскольку, если материнская плата выйдет из строя, а другой такой не окажется, диски придется сдавать на восстановление спецам. Гораздо надежнее настроить MS BackUp на ежедневное резервирование всех данных на второй винчестер, подключенный к обычному IDE-контроллеру.

Монитор. Зачем он нужен серверу? Правильно, абсолютно не нужен (в повседневной работе), а для установки и наладки можно на время позаимствовать монитор от ближайшей рабочей станции. Большинство современных LCD мониторов имеют два входа — цифровой и аналоговый. Отсюда идея — подключаем рабочую станцию к цифровому входу, сервер — к аналоговому и переключаемся между ними в любой момент времени.

Блоки бесперебойного питания — гадость. Мыщъх перепробовал много моделей, пока не остановился на APC 1000VA Smart и ACP 2200VA Smart как на наименее проблемных.

Берем диск с Server 2003, садимся за ближайшую рабочую станцию, скачиваем все заплатки и пакеты обновлений, после чего интегрируем их в дистрибутив, следуя инструкциям, размещенным в файле winhelpline.info. Естественно, для создания интегрированного дистрибутива нам понадобиться пишущий CD-R/RW привод, но у кого их сейчас нет?

А почему бы не скачать заплатки после установки сервера через Windows Update? Ведь большинство начинающих администраторов именно так и поступает, и только потом соображает что они сотворили и как теперь это расхлебывать.

Во-первых, выходить в Сеть на не залатанном сервере _крайне_ опасно, поскольку там шастает куча червей, ломящихся во все дыры. Мыщъх неоднократно фиксировал попытки атак, совершаемых уже через несколько минут после выхода в Интернет. Естественно, за такое короткое время скачать обновления невозможно и сервер изначально оказывается прокаженным. Не стоит надеяться, что вас атаковать никто не будет, вы никому не нужны и т. д. Атакующим на вас в общем-то наплевать, они просто сканируют диапазон IP-адресов в поисках жертвы.

Желательно вообще лишить SOHO-сервер доступа в Сеть, используя DSL-модем со встроенным брандмауэром, оснащенный Ethernet-портом. Соединяем модем со свичем, закрываем доступ к серверу на брандмауэре и отправляем хакеров отдыхать, а все обновления качаем с рабочих станций, причем, вместо дырявого по жизни IE лучше использовать Горящего Лиса или Оперу.

Во-вторых, установка пакетов обновлений на «живой» сервер делает невозможной переустановку системы «поверх» старой. Инсталлятор, обругав нас матом, откажется работать с обновленной системой, настойчиво предлагая удалить ее с диска и установить заново, так сказать, с чистого листа. Вот такая, значит, напряженная ситуация складывается и чтобы объяснить инсталлятору что он зверски не прав, приходится готовить интегрированный дистрибутив, включающий в себя все пакеты обновлений, установленные на сервере. Естественно, эту операцию можно выполнить в любой момент, но учитывая, что время простоя сервера — это деньги, лучше позаботиться об интеграции заранее (ведь созданный дистрибутив еще обкатать надо!).

В мелких организациях за серверами обычно никто не следит. Вводить ставку дерюжного оператора – слишком дорогое удовольствие, а приходящий администратор зачастую находится вне досягаемости. А теперь вопрос: что произойдет, если, например, отрубят питание и UPS отправит сервер в шатдаун? Или система выбросит голубой экран смерти? Кто-то случайно выдернет силовой кабель, прижмется задницей к кнопке Reset? Правильно, после включения система потребует нажать Alt-Ctrl-Del, а затем появится диалоговое окно Event Tracker'а, требующего объявить, почему сервер не был зашутданен «цивильным» путем. После описания проблемы, система перейдет к процессу авторизации, ожидая пароля администратора.

Учитывая, что у большинства пользователей физический доступ к серверу отсутствует, им придется очень несладко, не говоря уже про самого администратора, вынужденного из-за каждой мелочи мотаться по всему городу. Чтобы не трепать себе нервы, лучше забить на безопасность и настроить сервер так, чтобы при подаче питания он стартовал автоматически, не требуя даже нажатия на кнопку Power, поведение которой настраивается через BIOS Setup (кстати говоря, не все модели материнских плат позволяют сделать это).

Теперь перейдем к отключению запроса на нажатие ALT-CTRL-DEL. Заходим в Administrative Tools\Local Security Police, в дереве Security Settings раскрываем ветвь Local Polices\Security Options и в правой половине окна находим пункт: «Interactivelogon: Do not require CTRL+ALT+DEL», по умолчанию находящийся в состоянии «Disabled». Дважды щелкаем по нему мышью и меняем «Enabled» на «Disabled».

Рисунок 2 отключение запроса на нажатие ALT-CTRL-DEL

Остается только прищемить Event Tracker, чтобы сидел себе тихо и не возникал. В командой строке набираем «MMC» для запуска Microsoft Management Console, затем в меню File выбираем пункт «Add/Remove Snap-in…» (или нажимаем <CTRL-M>), далее в появившемся диалоговом окне находим кнопку «Add» и добавляем «Group Policy Object Editor». Закрываем ненужные диалоговые окна кнопками «Finish» и «Close», переходим к вкладке «Extensions» и выбираем «Administrative Templates (Computer Configuration)», жмем на «OK» и в «Console root\Local Computer Policy\Administrative Templates\System» находим пункт «Display Shutdown Event Tracker», который двойным мышиным щелчком переводим в состояние «Disabled». За сим все. Теперь с этими надоедливыми вопрошалками покончено раз и навсегда.

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

Рисунок 3 отключение Event Tracker'а

По умолчанию, ко всем разделяемым ресурсам (файлам, папкам, принтерам) имеют доступ только пользователи, зарегистрированные на сервере. Если имя и пароль удаленного пользователя совпадают с именем/паролем пользователя, зарегистрированного на сервере, то запрос на ввод пароля не выдается, что очень удобно. Пользователи вообще не любят вводить паролей, поэтому, чтобы облегчить их участь, мыщъх предпочитает поступать так: рабочие станции на базе W2K/XP настраиваются на автоматический вход в систему, а на сервере создаются «зеркальные» учетные записи всех пользователей, что обеспечивает «прозрачную» работу с разделяемыми ресурсами. Зачастую пользователи вообще не догадываются о том, что они защищены каким-то там паролями. Между тем, администратор может свободно назначать права доступа на разделяемые ресурсы. Для одних пользователей они открыты на запись/чтение, другие поставлены в read only, а третьи не видят их вообще.

Однако, на этом пути есть несколько подводных камней. Первое — если пользователь решит сменить свой пароль, то зайти на сервер он уже не сможет. Вернее сможет, но при попытке доступа к разделяемому ресурсу система потребует ввести старый пароль (ведь на сервере он остался неизменным), что окажется для пользователя большой неожиданностью. Следовательно, в дополнение к автоматической регистрации на рабочих станциях, необходимо так же запретить смену паролей пользователям и установить срок действия пароля в «never expires». То же самое следует сделать и на сервере, в противном случае… ох… Ну вот представьте, легли вы баиньки часов эдак в шесть утра после очередного секса с системой, и только начали проваливаться в тусклый колодец беспокойного сна, как вдруг начнет звонить сотовый телефон и раздраженные пользователи один за одним говорят: у нас исчезла сеть, мы не можем войти на сервер.

Вы смотрите на часы. Ага, 8:13 AM. Рабочий день начался, твою мать! Но это для _них_ день, а для вас сейчас глубокая ночь. Вот только исчезновение сети — это серьезно, это значит, что нужно натягивать штаны и ехать на вызов… Достигнув места происшествия и попросив девчат из планового отдела сварить самый крепкий чай (кофе) который они только могут, делаем ping. Ес-но, ping проходит и на физическом уровне сеть функционирует вполне нормально. Садимся за сервер. Вводим пароль администратора. Оглядываемся по сторонам. Вроде бы все на местах и ни одна мышь не пострадала. Сервер работает нормально. Так какого же черта нас сюда вызвали?! А вам ехидно говорят, а вы попробуйте зайти на сервер с _нашей_ машины. Б$#!!!! Как это так «не поддерживается»?! Ох… твою мать! На сервере пароль данного пользователя только что expired со всеми отсюдавытекающими. А, поскольку, мы создавали всех пользователей в одно и тоже время, то зайти на сервер не может ни один из них!!!!

Короче, заходим в Administrative Tools\ComputerManagement, находим там пункт «Local Users and Groups», переходим к юзерам и в свойствах каждого из них взводим галочку «Password never expires». После чего залпом выпиваем остывший чай и возвращаемся в свою нору. Быть можем, нам все-таки удастся заснуть засветло.

Рисунок 4 блокировка срока истечения пароля

По умолчанию Microsoft задействует множество служб, большая часть из которых совершенно ненужная, а местами даже откровенно вредная. Поэтому, чтобы обеспечить бесперебойную работу сервера (особенно в условиях скромных аппаратных ресурсов) мы должны зайти в Administrative Tools\Services и навести здесь свой порядок. Естественно, «порядок» весьма условное понятие, относительность которого мы уже обсуждали. Кому-то нравится максимализм, кому-то — минимализм. В конце концов никакого произвола тут нет и каждый может действовать по своему усмотрению, согласно мотивациям внутренней потребности.

  1. Automatic Updates (Автоматически) отключаем сразу и навсегда, потому что не фиг серверу проявлять излишнюю самостоятельность, к тому же, как уже говорилось выше, лучше всего отрубить сервер от Сети, а обновления скачивать вручную через рабочие станции, тут же пересобирая интегрированный дистрибутив, чтобы в любом момент времени систему можно было переустановить поверх старой;
  2. Computer Browser (Обозреватель Компьютеров) так же можно отключить, поскольку рабочие станции сами ломятся на сервер и ничего обозревать тут не нужно — это только занимает время, отъедает память и приводит к различным конфликтам;
  3. Cryptographic Services (Крипографичекие сервисы) не нужны совсем. То есть абсолютно. Отключаем эту службу без всяких колебаний;
  4. DCHP Client (Клиент DCHP) отправляется в топку, потому что DCHP сервер в небольшой локальной сети все равно что трактор на дачном участке. Нормальные администраторы прописывают IP-адреса вручную;
  5. Distributed Link Tracking Client (Клиент Слежения за Распределенными Ссылками) отслеживает перемещение файлов как внутри одного NTFS-тома, так и между томами. Довольно громоздкая, уродливо реализованная и совершенно бесполезная вещь, поскольку реальные программы опираются на абсолютные пути и если файл перемещен, то никакой клиент слежения тут не поможет. Короче, выключаем эту штуку;
  6. Distributed Transaction Coordinator (Координатор Распределенный Транзакций) — весьма крутая служба, вот только… это уже трактор, это самый настоящий реактивный истребитель на дачном участке, причем без возможности вертикального взлета и посадки. Ну и зачем он нам такой там нужен?!
  7. DNS Client (DNS Клиент) — Microsoft пугает нас, что если отключить эту службу, то компьютер не сможет распознавать доменные имена. Брехня! Практически все сетевые приложения занимаются распознанием доменных имен самостоятельно и мне не известна ни одна программа, напрямую взаимодействующая с DNS клиентом. А вот служба Active Directory без него работать не будет — это точно;
  8. Error Reporting Service (Сервис Рапортования об Ошибках) стоит прищемить на корню, как злостного стукача, собирающего информацию об ошибках и отправляющую ее в Microsoft. Зачем нам это нужно?!
  9. Help and Support (Помощь и Поддержка) — еще одна абсолютно ненужная служба, отключение которой никому не вредит;
  10. IPSEC Services (Сервисы IPSEC) — идут в топку, потому что им совершенно нечего делать в рамках локальной сети, когда злоумышленнику проще сесть за компьютер, чем врезаться в кабель;
  11. Logical Disk Manager (Менеджер Логических Дисков) — реально нужен только тем, кто следуя заветам Microsoft обновил обычные диски до динамических и огреб проблемы по полной. Всем остальным эта служба до лампочки;
  12. Network Location Awareness (NLA) — еще один бесполезный «стукач», следящий за состояниям сети и посылающий уведомления службам Windows Firewall и Internet Connection Sharing, обе из которых так же стоит отключить;
  13. Remote Registry (Удаленный Доступ к Реестру) — ну и зачем нам удаленный доступ к реестру? Выключаем на фиг. А реестром рулить будем через физический доступ или утилиты типа Remote Admin и иже с ними;
  14. Wireless Configuration (Беспроводная Конфигурация) — отключаем, если локальная сеть построена на витой паре, а не новомодных wi-fi адаптерах.

Примечание: отключение некоторых служб может привести к тому, что сервер вообще откажется загружаться. Не паникуйте! Просто зайдите в Recovery Console (Консоль Восстановления) и воспользуйтесь командой «enable», принимающей два аргумента — имя запускаемой службы и тип запуска, например: «enable eventlog service_auto_start»

Если вы не уверены в своих действиях, то вместо отключения (disabled) службы выбирайте ручной тип запуска (manual), который на самом деле не совсем ручной, а просто подразумевает возможность запуска службы из других служб, которые в ней нуждаются и которые без нее могут работать неправильно или не работать совсем. Если после перевода службы в «manual» при следующей загрузке сервера, она все-таки стартовала (статус «Started»), значит, имеются не устраненные зависимости и переводить ее в «disabled» следует с _очень_ большой осторожностью.

Так же можно попробовать остановить службу прямо на рабочем сервере и посмотреть, что из этого произойдет. Кстати говоря, в отличии от W2K, Server 2003 препятствует отключению жизненно важных служб (например, службы удаленного вызова процедур – RPC, на которой держится вся подсистема win32), так что можно экспериментировать не боясь.

Рисунок 5 наводим порядок в службах

Антивирусы, автоматически проверяющие все открываемые файлы на «лету», брандмауэры и прочие защитные механизмы на сервере лучше всего _не_ устанавливать. Поверьте моему печальному опыту. Сам по себе Server 2003 довольно надежная штука и на исправном железе он работает без перезагрузок _годами_ а вот защитные системы, внедряющиеся в ядро, внедряются туда настолько неумело, что голубые экраны смерти появляются с завидной регулярностью, особенно на двуядерных процессорах и многоЦПшных машинах.

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

Антивирусов, установленных на рабочих станциях, — вполне достаточно для обеспечения надлежащего уровня безопасности, тем более если сервер отключен от Интернет.

Сразу же после установки Server 2003 настоятельно рекомендуется создать резервную копию системы с помощью утилиты MS BackUp (см. статью «восстановление MS Server 2003 после тяжелых ранений»), позволяющую восстановить упавший сервер за несколько минут без необходимости его переустановки.

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

Разумеется, тонкости установки и работы с Server 2003 на этом не исчерпываются и впереди нас ждут много «интересных» дней, нештатных ситуаций и головоломных проблем, но безвыходных путей не бывает, так что не стоит опускать свой хвост и пасовать перед сложностями. Это даже хорошо, что жизнь такая сложная. Иначе бы нам, администраторам, пришлось бы разделить участь мамонтов.