Открыть Электронные книги
Категории
Открыть Аудиокниги
Категории
Открыть Журналы
Категории
Открыть Документы
Категории
СЬ
www.samag.ru
ЛИ
Почему MS SQL медленно работает?
ЛИ Ищем причины
ТЯ Е
Ж ПИ
Строим защищенную беспроводную сеть:
ЗА ДНИ
РА КУ
Настраиваем UPS под Linux
ЛЫ ГО
ТИ РАС
Как восстановить
удаленные файлы под BSD
КУ ВО
РО
танавливаем Symantec Antivirus 9.0
НИ НО
в корпоративной сети
СТ
№12(49) декабрь 2006
Эффективно управляем
полями пользователей в AD
БЫ
Контролируем безопасность сети
с помощью OSSIM
www.samag.ru
Подробное руководство
ЬД О
РА СКА
ТЕ
К
ИС НН
ЕН
УС
БО
НА ТПУ
ИЛ ДА
ТП
НЧ ЖИ
на основе Thinstation и NX
ВО
РА Е О
КО ЕО
АВ СЛ
Л
Л
ХА
ЗА Н
ПО
УЕ
Выдержит ли нагрузку
Эффективно управляем
полями пользователей в AD
Контролируем безопасность сети
с помощью OSSIM
Интервью с Ларри Уоллом –
создателем языка Perl
ваш веб-сервер?
Программы для стресс-тестов
Организуем работу
офисного почтового сервера
на платформе Windows
В поисках анонимного
ПОДПИШИТЕСЬ И ЧИТАЙТЕ! прокси-сервера
Роспечать – 20780, 81655 Как надо и как не надо
Пресса России – 87836 защищать веб-контент
Интер-почта – тел. (095) 500-00-60 от кражи
в номере
2 ТЕНДЕНЦИИ 48 Делимся впечатлениями о дистрибутиве
Linux XP Desktop
АДМИНИСТРИРОВАНИЕ Российская компания LINUX-ONLINE выпустила об-
новление к своему дистрибутиву Linux XP Desktop, на-
4 Устанавливаем межсетевой экран помнив сообществу о своих оригинальных подходах
MS ISA Server 2004 к Linux-бизнесу. Дмитрий Шурупов
Какова архитектура этого распространенного межсе- osa@samag.ru
тевого экрана, на что обратить внимание при его уста-
новке и как настроить основные службы? 54 Интеграция BIND + PostgreSQL
Андрей Бирюков Подробное описание метода хранения зон BIND
mex_inet@rambler.ru в PostgreSQL. Сергей Алаев
alaev777@mail.ru
10 Как купить ПО от Microsoft?
Разбираемся в особенностях приобретения и исполь- БЕЗОПАСНОСТЬ
зования OEM-версий. Дмитрий Бутянов
for.mail.only@gmail.com 61 Какие возможности появились в новой
версии DeviceLock
16 Подробное руководство по настройке Компания «Смарт Лайн Инк» отметила свое 10-летие
тонких клиентов на основе дистрибутива выпуском новой версии DeviceLock 6.0, которая подде-
Thinstation и протокола NX рживает функцию теневого копирования данных.
Технология NX дает новые возможности для связи Михаил Брод
и способна оживить старые компьютеры в роли тон- sales@smartline.ru
ких клиентов. Евгений Бушков
protectorat@mail.ru ЧЕЛОВЕК НОМЕРА
24 Кластеризация + виртуализация: 62 Романтичный хакер Крис Касперски
Linux HA + OpenVZ Компьютер – это тайна, считает популярный российс-
Часть 2: Виртуализация на практике кий специалист по системам безопасности.
Строим систему виртуализации с виртуальными сер- Оксана Родионова
верами, мигрирующими с одного узла на второй в слу- rodion@dol.ru
чае отказа первого. Евгений Прокопьев
eugene.prokopiev@gmail.com WEB
30 Настраиваем шлюз в Интернет 66 Выдержит ли нагрузку ваш веб-сервер?
на базе FreeBSD Обзор программ для проведения стресс-тестирова-
Простая в применении, нетребовательная к ресурсам ния. Сергей Яремчук
FreeBSD почти идеально подходит для использования grinder@ua.fm
на небольших роутерах для связи с внешним миром.
Алексей Бережной 74 Как надо и как не надо
beralex2@mail.ru защищать веб-контент от кражи
Что использовать для охраны веб-контента – одну
36 В поисках анонимного прокси-сервера из многих защитных систем, имеющихся на рынке,
Вопрос о безопасном серфинге по Интернету подни- или попытаться смастерить что-то свое?
мался не раз. При использовании для этой цели прок- Крис Касперски
си-сервера возникает вопрос, что лучше: искать прок- kk@sendmail.ru
си или создать свой? Иван Максимов
ivan_maksimov@inbox.ru РЕТРОСПЕКТИВА
40 Организуем работу офисного почтового 82 Предвестник бури, или История первого
сервера на платформе Windows персонального компьютера
Если бесплатные сервисы не устраивают вас скоростью Кремниевая долина превратилась в кузницу передо-
и качеством доставки писем, а на эффективные доро- вых идей в области информационных технологий. Яр-
гостоящие решения не выделяется средств, восполь- кий тому пример – исследовательский центр Xerox
зуйтесь предложенной в статье альтернативой. PARC, в котором был создан первый в мире персо-
Александр Емельянов нальный компьютер. Дмитрий Мороз
numb13@mail.ru akuji@list.ru
2
тенденции
Андрей Бирюков
Вам предстоит внедрить в вашей компании Microsoft ISA Server 2004. Какова архитектура
этого распространенного межсетевого экрана, на что обратить внимание при его установке
и как настроить основные службы?
Приступая к работе яся на момент внедрения ISA топо- вом экране должен быть реализован
Быстрота передачи данных по элект- логия сети. В сети организации име- доступ «снаружи» к нужным ресурсам,
ронной почте, возможность мгновенно ются ресурсы, которые должны быть используя терминологию ISA Server,
находить нужную информацию с помо- доступны как из глобальной сети, эти ресурсы должны быть опубликова-
щью поисковых систем – все это сде- так и из локальной (например, почто- ны. По-хорошему, эти два межсетевых
лало Интернет удобным инструмен- вый сервер, веб-сервер, FTP-сервер экрана должны находиться на разных
том, необходимым для работы. Одна- и т. д.). Возможны два варианта под- серверах и использовать различное
ко помимо тех удобств, которые пре- ключения. программное обеспечение (например,
доставляют ресурсы глобальной се- В одном случае и рабочие стан- Windows и ISA и Linux и iptables).
ти, они могут стать и источником мас- ции, и серверы находятся в одном сег- Однако далеко не все, особен-
сы угроз: атаки хакеров, вредонос- менте сети. Такой вариант встречает- но небольшие компании, могут поз-
ные приложения, утечка информации, ся в небольших организациях, где ко- волить себе использовать два серве-
нежелательная почта. Все эти факто- личество рабочих станций не превос- ра для защиты сети. Поэтому зачас-
ры представляют угрозу как для час- ходит 20 машин, а серверов зачастую тую прибегают к более дешевому ва-
тных пользователей, так и крупных не больше двух. рианту: использованию одного серве-
корпораций, и могут привести к зна- В другом случае сеть организации ра с тремя сетевыми интерфейсами.
чительным убыткам. Для борьбы с уг- содержит подсети, и соответствен- Тогда один интерфейс «смотрит» в Ин-
розами существует множество как ап- но серверы, доступ к которым необ- тернет, второй – в DMZ и третий – в ло-
паратных, так и программных реше- ходим как снаружи, так и изнутри, на- кальную сеть.
ний. Если у вас сеть под управлением ходятся в одной подсети (которая так- Далее в статье сетевой адаптер,
MS Windows, то вам наверняка зна- же именуется DMZ, демилитаризован- подключенный к Интернету, я буду на-
ком такой продукт, как Microsoft ISA ной зоной), а пользователи и локаль- зывать WAN, интерфейс, подключен-
Server 2004. ные ресурсы находятся в других под- ный к демилитаризованной зоне, –
сетях. При такой топологии серверы, DMZ, а к локальной сети – LAN.
Разберемся находящиеся в DMZ, должны быть от- На рис. 1 изображены два вари-
с топологией сети делены одним межсетевым экраном анта подключения межсетевого эк-
Хотелось бы обратить ваше внимание от Интернета и другим – от локальной рана. В случае «а» используются два
на такую важную вещь, как имеюща- сети. При этом на внешнем межсете- межсетевых экрана, один подключен
4
администрирование
к WAN и DMZ, а второй – к DMZ и LAN,
в случае «б» – один межсетевой эк-
ран, подключенный и к WAN, и к LAN,
и к DMZ.
Если вы собираетесь реализовать
второй вариант подключения, то обра-
тите внимание на его недостатки.Пре-
жде всего это общее снижение надеж-
ности сети. В случае зависания или пе-
резагрузки сервера ресурсы, находя-
щиеся в DMZ, будут временно недо-
ступны пользователям. Например, ес-
ли у вас в сети один почтовый сервер
и он находится в демилитаризованной
зоне, то при отключении межсетевого
экрана он будет недоступен, и у поль-
зователей в почтовом клиенте начнут
появляться сообщения об ошибке со-
единения. Как следствие – поток звон-
ков и жалоб системному администра-
тору на неработоспособность сети.
Другой недостаток использования Рисунок 1. Варианты развертывания межсетевого экрана и демилитаризованной зоны
одного сервера – это то, что в случае
его выхода из строя все то время, ко- Версия Standard подходит в качес- с помощью CARP осуществляется оп-
торое вы потратите на замену, локаль- тве решения для небольших и сред- тимизация кэширования данных.
ная сеть организации будет практичес- них компаний, количество рабочих В своей серии статей я ограни-
ки неработоспособна. мест в которых не превышает 100-150. чусь описанием настроек для версии
И наконец, пожалуй, самый важ- Основной особенностью ISA 2004 Standard Edition.
ный недостаток такой топологии, Standard Edition является то, что дан- С аппаратными требованиями,
в случае если злоумышленнику удас- ная редакция позволяет разворачи- предъявляемыми Microsoft ISA 2004
тся проникнуть на сервер, он сможет вать межсетевой экран только на од- к серверу, вы можете ознакомиться
получить доступ как в DMZ, так и ло- ном сервере. Другими словами, если в статье [1]. Там же содержатся реко-
кальную сеть. в вашей сети не используются клас- мендации по использованию операци-
Я буду описывать настройки серве- теры и балансировка нагрузки, то нет онной системы, поэтому я лишь пред-
ра, который подключен к WAN и DMZ, никакого смысла покупать более доро- лагаю сразу после установки ОС раз-
вариант топологии «а» и при необходи- гую версию Enterprise Edition, так как вернуть все последние обновления
мости буду делать пояснения для реа- в остальном функциональности вер- и проследить за тем, чтобы не было ус-
лизации варианта «б». сий совпадают. тановлено никаких лишних компонен-
Если используются два межсе- Версия Enterprise ориентирована тов, так как наличие любого дополни-
тевых экрана, то все эти недостатки на большие сети, в которых для обес- тельного приложения увеличивает ве-
частично или полностью можно уст- печения быстрого и бесперебойно- роятность успешного взлома системы.
ранить. В случае выхода из строя од- го доступа в Интернет и предостав- Не стоит забывать, что мы разворачи-
ного из них в течение буквально не- ления других сервисов необходима ваем межсетевой экран, а не какой-то
скольких минут сеть из варианта «а» балансировка нагрузки, централизо- внутренний сервер, то есть погранич-
можно превратить в вариант «б», до- ванное управление и хранение кон- ный узел, который первым будет «про-
бавив в сервер еще одну сетевую кар- фигураций. веряться на прочность» хакерами.
ту и произведя соответствующие из- Также в Enterprise включена под- Следующий элемент архитекту-
менения в настройках. К тому же бе- держка протокола CARP (Cache Array ры – таблица маршрутизации, которая
зопасность сети при использовании Routing Protocol). Этот протокол осу- должна быть настроена до установки
двух межсетевых экранов повышает- ществляет управление поиском кэши- программного обеспечения ISA. Таб-
ся. Например, если взломщик сумел рованных страниц в массиве ISA се- лица включает маршруты ко всем се-
проникнуть на сервер, подключенный веров. То есть когда пользователь об- тям, которые не являются локальными
к WAN и DMZ, то ему не будут доступ- ращается к какой-либо веб-странице, для сетевых интерфейсов межсетево-
ны ресурсы локальной сети. CARP определяет на каком ISA-серве- го экрана. Эти записи в таблице мар-
ре массива сохранить эти данные. За- шрутизации необходимы, потому что
Архитектура ISA тем, когда другой пользователь обра- у ISA может быть только один основной
и подготовка к установке щается к этой же странице, CARP об- шлюз. Обычно основной шлюз настро-
Существуют две версии ISA 2004: ращается к тому серверу, на котором ен на сетевом интерфейсе, использу-
Standard и Enterprise. страница сохранена. Таким образом, емом для внешней сети. Поэтому, ес-
6
администрирование
чтобы определить адреса, использу- Между сетями VPN/VPN-Q и внут- ным портам. Как правило, протоколы,
емые для внутренней сети по умол- ренней сетью установлены отноше- с помощью которых допускается взаи-
чанию. Поэтому важно правильно на- ния типа «маршрут». модействие с внешней сетью, ограни-
строить записи таблицы маршрутиза- Между внутренней сетью и внеш- чиваются следующими: SMTP, HTTP,
ции, прежде чем устанавливать межсе- ней сетью по умолчанию задано от- HTTPS, DNS, FTP, ICQ, ICMP, SSH,
тевой экран. Щелкните мышью «Select ношение трансляции адресов NAT. Telnet (последние два протокола нуж-
Network Adapter» (выбрать сетевой Только администраторы могут ме- ны, как правило, только администра-
адаптер). В соответствии с оговорен- нять политику брандмауэра ISA. торам). Для того чтобы создать пра-
ными ранее наименованиями сетевых вило доступа, выберите в консоли ад-
интерфейсов, выбираем LAN. Указы- Теперь нам необходимо разрешить министрирования ISA раздел «Firewall
ваем необходимый диапазон IP-адре- доступ пользователей локальной сети policy», затем в меню «Action» выби-
сов. Далее нужно остановить службы к ресурсам Интернет. Многие систем- раем «New → Access Rule». В появив-
ICF (Internet Connection Firewall) и RRAS ные администраторы открывают до- шемся окне указываем наименова-
(Routing and Remote Access), если они ступ из внутренней сети в Интернет ние правила, далее определяем, какое
у вас используются. В противном слу- по всем портам, мотивируя это тем, это правило, запрещающее или раз-
чае при установке ISA вы получите со- что не хотят заниматься «тонкой на- решающее, в нашем случае выбира-
общение об ошибке. стройкой», открывая конкретные пор- ем «Allow», в следующем окне необ-
Далее нажимаем «Start», по окон- ты конкретным пользователям. Одна- ходимо указать протоколы, к которым
чании установки межсетевого экрана ко это пагубная практика во всех от- будет применяться данное правило.
ISA необходимо произвести перезаг- ношениях. Соответственно выбираем, например
рузку сервера. Во-первых, вредоносное програм- HTTP, затем указываем источники,
После установки ISA, но перед под- мное обеспечение, в частности, «тро- в нашем случае это будет сеть Internal
ключением сервера к Интернету необ- янские кони» используют для соедине- (LAN), а в качестве точки назначения
ходимо установить на него последний ния с «хозяином» нестандартные пор- External (WAN).
пакет обновлений. Для ISA Server 2004 ты. Поэтому межсетевой экран может Затем укажите пользователей, ко-
на момент написания статьи это был стать преградой для несанкциониро- торым будет разрешен выход в Интер-
Service Pack 2. Проверить наличие ванного проникновения в сеть, в слу- нет, при этом аутентификацию можно
последних обновлений вы можете по чае если антивирусы не смогли опре- осуществлять посредствам RADIUS-
адресу [3]. делить вредоносный код. сервера и локальной базы пользова-
Во-вторых, наличие доступа по телей. В результате выполнения всех
Открываем доступ всем портам позволит пользователям этих действий получаем правило до-
Сразу после установки сервер ISA ра- сети беспрепятственно применять кли- ступа для протокола HTTP. Аналогич-
ботает в режиме запрета всех соеди- ентов различных пиринговых сетей, ным образом создаются правила для
нений, и для того чтобы организовать что не слишком благоприятно сказы- всех остальных протоколов, за исклю-
пользователям локальной сети доступ вается на использовании корпоратив- чением двух последних (SSH и Telnet),
к ресурсам Интернета, необходимо от- ного канала доступа в Интернет, а так- которые, как уже упоминалось ра-
крыть доступ к соответствующим эле- же на производительности труда со- нее, нужны только администраторам.
ментам межсетевого экрана. Вкрат- трудников. Для того чтобы создать правило до-
це стандартную конфигурацию мож- И в-третьих, хорошим тоном явля- ступа только для определенных хос-
но представить так: ется наличие корпоративной политики тов, необходимо при назначении ис-
Системные политики разрешают безопасности, построенной по принци- точника указать не подсеть (Network),
выборочный трафик с брандмауэ- пу: все, что не разрешено, то запреще- как это делалось в предыдущем при-
ра ISA и на него. но. Закрытие портов является неотъ- мере, а отдельный узел (Computer), ко-
Запрещен весь трафик через бран- емлемой частью такой политики. торым пользуется администратор.
дмауэр ISA, потому что есть только Итак, будем открывать доступ
одно запрещающее правило. пользователей только к определен- Публикуем ресурсы
Итак, все необходимые обновления ус-
Что делать, если в сети активно быстрый и удобный способ. Все обраще- тановлены, межсетевой экран подклю-
применяется какое-либо ния к закрытым портам можно отслежи- чен к глобальной сети и теперь нужно
критичное для работы вать средствами ISA, для этого нужно от- открыть доступ к ресурсам, находя-
клиент-серверное приложение, крыть закладку «Logging», фильтр можно щимся в DMZ или LAN из внешней се-
использующее для соединения использовать стандартный или же настро- ти WAN. В терминологии ISA эта опе-
нестандартные порты? ить на журналирование пакетов, удовлет- рация называется «публикацией ре-
У многих, особенно начинающих, адми- воряющих определенным критериям, на- сурса». Прежде всего определим-
нистраторов может возникнуть такой воп- пример, по IP-адресу или типу пакетов. ся, что именно нам необходимо пуб-
рос. Конечно, можно попробовать поис- Далее включаем журналирование «Start ликовать. Как правило, в сети орга-
кать документацию по данному продукту Logging». Получив нужную информацию, низации размещаются почтовый сер-
или же воспользоваться сетевым мони- открываем порты для необходимого ви- вер, сервер FTP, а также ресурсы, до-
тором (сниффером). Однако есть более да трафика. ступ к которым осуществляется пос-
8
администрирование
Дмитрий Бутянов
«Зачем это надо?» – с кривой усмешкой ответят многие, когда речь заходит о необходимости
использования лицензионного программного обеспечения. Сейчас ведь можно купить
практически любой софт «на лотках» совсем дешево! И он почти как настоящий!
Чего еще желать сисадмину?
10
администрирование
Н
о вот стоит только поработать можностями трудоустройства, може- ную версию можно покупать для ус-
какое-то время с таким «лотош- те представить сами. тановки в офисах компаний, но мой
ным» товаром, и начинает сис- Бытует мнение, что легальное про- вам совет – сначала проконсульти-
админ вздыхать, долгими взглядами граммное обеспечение является на- руйтесь с реселлером.
буравя потолок и проклиная на все ла- столько дорогим, что у компаний прос- Лицензия OEM – предназначена
ды тех, кто ему этот самый диск под- то нет выбора – они разорятся на по- для поставщиков вычислительной
сунул. Вроде и делаешь всё правиль- купке. Как правило, такое мнение раз- техники.
но, и люди умные на форумах советы деляют люди, не знающие его стоимос- Лицензии, поставляемые
дельные дают, но ведь живет систе- ти. Не верите – спросите у них. Полу- по программам корпоративно-
ма по своим, непонятным людям за- чите ответ «Очень дорого». Но ничего го лицензирования – предна-
конам. И номера откалывает такие, конкретного. значены для организаций любо-
что даже бывалые, не один гигабайт Купить лицензионное програм- го размера. В стоимость лицен-
съевшие специалисты разводят рука- мное обеспечение сейчас по силам зий уже включены скидки за объ-
ми и ничего, кроме переустановки, ре- почти любой компании, даже неболь- ем заказа.
комендовать не могут. Так, может, де- шой. Кстати, можно ведь не покупать,
ло не в вас, а в том софте, который вы а брать в аренду (мало кто об этом Существуют специальные про-
почти даром заполучили и на котором знает). Стало интересно? Читайте граммы лицензирования продук-
отныне ваша фирма работает? дальше. тов для компаний ASP – Application
Не секрет, что пираты при изготов- Бытует мнение, что приобретение Ser vice Providers, предоставляю -
лении своей… хм… продукции вно- лицензионного софта мало отличает- щих услуги доступа к приложениям
сят в дистрибутив подчас значитель- ся от покупки, например, чайника – от- Microsoft третьим лицам. Например:
ные изменения, выбрасывая из него, дал деньги, получил товар, пользуйся, хостинг баз данных SQL Server, хос-
как минимум, библиотеки драйверов как хочешь. На самом деле это не сов- тинг почтовых серверов Exchange
и прочие малозначащие для них ве- сем так. Купив то или иное програм- Server. SPLA – Service Provider License
щи. Какие мучения потом будет ис- мное обеспечение, вы покупаете пра- Agreement. В некоторых случаях мож-
пытывать админ, их мало волнует. во его использования. Иными слова- но загрузить продукт через Интернет.
Это на их прибыли не скажется. Вдо- ми – производитель разрешает вам Остановимся на трех самых популяр-
бавок система обрастает «Резетами» использовать свой продукт, но на сво- ных вариантах: коробки, OEM-лицен-
и прочим малоаппетитным софтом, их условиях. Эти условия оговарива- зии, программы корпоративного ли-
заставляющим этого убогого калеку ются в Лицензионном соглашении, цензирования.
хоть как-то работать. В итоге получа- и обязательны для соблюдения. Обя-
ем массу проблем, за решением кото- зательны! Несоблюдение этих требо- Коробка – красиво,
рых и проводим большую часть свое- ваний и является пиратством. Так что но дороговато
го времени, вместо того чтобы делом учтите – пиратом можно стать и по не- Самым простым (и дорогим) способом
заниматься. знанию. приобретения программного продук-
В чьих руках побывала система та является покупка коробки (FPP).
до того, как попасть на лоток пира- Каковы особенности Покупая коробочную версию, вы по-
та, зачастую не знают и сами пираты. приобретения лучаете в комплекте: Лицензионное
Что эти неизвестные бойцы пиратского и использования? соглашение (часто только в элект-
фронта с этой системой сделали, и по- Приобрести программное обеспече- ронном виде), оригинальный носи-
чему теперь на одном DVD помещается ние Microsoft можно разными способа- тель с элементами защиты от подде-
пара сотен программ, тоже объяснить ми. Во всех случаях оно сопровожда- лки, Руководство пользователя (час-
не могут. Насколько вся эта конструк- ется лицензионным соглашением, ли- то только в электронном виде), упа-
ция жизнеспособна, может показать бо в электронной форме, либо в печат- ковку с Сертификатом подлинности
жизнь, иными словами – они продают ном виде. Обратите внимание, что ус- (COA). Для подтверждения подлин-
вам за ваши же деньги ваши же про- ловия использования программного ности приобретенного программно-
блемы. Вам это нужно? обеспечения зависят не только от са- го обеспечения вы должны хранить
И некорректно работающим соф- мого продукта, но также от способа, ко- весь комплект поставки полностью
том дело не ограничится. Законода- торым оно приобретено. То есть один плюс документы, подтверждающие
тельство Российской Федерации в об- и тот же продукт, приобретенный раз- покупку. Купить софт в виде коробоч-
ласти охраны авторских прав (борьбы ными способами, можно будет исполь- ной версии можно далеко не весь, не-
с пиратством) за несколько лет претер- зовать по-разному. которые продукты таким образом не
пело значительные изменения, и сей- Перечислю виды лицензий и спо- распространяются. Как правило, это
час строится на базе международных собы их приобретения: продукты, ориентированные на кор-
стандартов в этой сфере. При опре- Лицензия FPP (Full Packaged поративного пользователя, например,
деленных условиях, пиратский софт Product – коробочная). Коробочные Microsoft Office Pro Enterprise Edition
в офисе компании может стать и уго- продукты предназначены для инди- купить в коробке нельзя. Право ис-
ловным преступлением. А что это мо- видуальных клиентов и домашних пользования коробочного продукта
жет сделать с вашей анкетой и воз- офисов. В ряде случаев коробоч- является бессрочным, т.е. вы може-
12
администрирование
COA – это элемент защиты от под-
делки, который помогает конечным
пользователям отличать легальные
копии от нелегальных. Это наклей-
ка, которая должна быть наклеена
на корпус компьютера на видном мес-
те. Она не может распространяться от-
дельно от всего остального комплек-
та и сама по себе еще не является га-
рантией того, что копия является ле-
гальной.
Наклейка COA имеет элемент за-
щиты в виде двух отверстий, одно
из которых имеет форму эллипса,
а другое – форму логотипа «летя-
щих окон» Windows. Внешний слой
ламината в пределах этих отвер-
стий отсутствует, таким образом
становятся видны отдельные во-
локна бумажной структуры.
Металлизированная нить, внедрен-
ная в структуру наклейки, имеет
цветовые переходы, которые ста-
новятся видны под углом.
Наклейка COA содержит микро-
текст – элемент защиты в виде тек-
ста, который становится читаемым
только под увеличительным стек-
лом.
Новая наклейка COA не имеет ла-
минированного покрытия.
14
администрирование
Сам процесс активации предель-
но прост. При запуске неактивирован- Сохранится ли лицензия вы обновляете или заменяете материнскую
ного продукта на экране появляется на OEM-версию, если необходимо плату и при этом замена не связана с уст-
окно мастера активации. Сама акти- провести апгрейд или ремонт ранением обнаруженного дефекта, то та-
вация может быть выполнена или че- существующих компьютеров? кой компьютер требует новой лицензии
рез Интернет, или по телефону. Если Лицензия привязывается к компьютеру, на операционную систему, поскольку, за-
вы в мастере выбираете активацию а мы его апгрейдить начинаем, т.е. меня- менив материнскую плату, вы фактически
через Интернет, то после ввода клю- ем исходные железки! В Microsoft посту- создали «новый» компьютер. Если вы за-
ча всё проходит автоматически. Если пили просто: выделен один компонент, ко- меняете дефектную материнскую плату,
вы выбираете активацию по телефо- торый однозначно определяет тот самый то новая лицензия на операционную сис-
ну, то вам необходимо будет выбрать исходный компьютер. Думаю, что вы уже тему не требуется. Если вы передаете мо-
страну, после чего вы увидите номер догадались, какой. Правильно – материн- дернизированный компьютер новому поль-
телефона. Звоните по этому номеру, ская плата. Общее правило таково, что вы зователю – лицензия на ПО, носитель, сер-
вам отвечает робот. Переводите теле- можете обновлять и заменять практически тификат подлинности COA и руководства
фон в тоновый режим, далее следуе- все, кроме материнской платы, при этом со- пользователя должны быть переданы все
те указаниям робота. Довольно быс- храняя исходную лицензию Windows. Если вместе новому пользователю.
тро. Если вам надо выполнить боль-
шое количество установок OEM-вер- жете купить такую замечательную перечислять их в рамках этой статьи
сий, то вы можете провести процеду- вещь, как Software Assurance. Купить очень даже сложно. Отправлю-ка я
ру автоматической активации. можно сроком на два или три года, вас на сайт http://www.microsoft.com/
Указания по этой процедуре можно с возможностью дальнейшего про- rus/licensing/volume/softwareassurance/
найти здесь: http://www.microsoft.com/ дления хоть до бесконечности. В те- advantagesoverview.mspx, а если инте-
technet/prodtechnol/winxppro/deploy/ чение этого срока вы будете бесплат- ресно будет, то напишу про Software
wpadepl.mspx. но получать все новые версии того Assurance отдельно в следующей
При проведении апгрейда систе- OEM-продукта, к которому вы офор- статье.
ма может попросить вас заново ее мили Software Assurance. Последний абзац – и ни слова о це-
активировать, это бывает тогда, ког- Если вы сейчас купите 2003-вер- не! Вы абсолютно правы, никакой ин-
да компьютер подвергается обновле- сии серверов, офисов и т. п., и купи- формации о ценах в этой статье не бу-
нию, при котором меняется большое те к ним Software Assurance, то вы уже дет. Немного терпения – в следующий
количество аппаратных компонентов очень скоро, зимой, получите Vista, раз я проведу сравнительный анализ
(как правило, более трех). Но посколь- Office 2007 … так сказать, несколько стоимости легального программно-
ку при этом замена материнской платы дешевле, чем они стоят. Стоимость го обеспечения для организации ма-
не производилась, продукт позволит Software Assurance составляет от 25% лого и среднего размера. Сколько бу-
себя активировать. Другое дело, если до 29% от стоимости лицензии про- дет стоить приобретение лицензионно-
была заменена материнская плата. дукта в год – сами можете подсчитать го программного обеспечения в виде
Напомню, что согласно Условиям экономию. OEM, а также по различным програм-
использования, сохранение лицен- Помимо прямой прибыли эта про- мам корпоративного лицензирования.
зии возможно только в том случае, грамма даст вам вагон бонусов, что Так что не прощаюсь!
если эта замена была связана с уст-
ранением дефекта самой материнс-
кой платы.
Через Интернет активировать про-
дукт не удастся, придется звонить
и объяснять оператору ситуацию. Да-
лее – как получится: или сразу сбро-
сят счетчик активаций, или (что чаще)
могут попросить вас выслать по поч-
те или факсу документ, подтверждаю-
щий факт ремонта.
Евгений Бушков
Технология NX, разработанная фирмой Nomachine, дает новые возможности для связи
и способна оживить старые компьютеры в роли тонких клиентов.
П
режде чем перейти непосредс- 4. Не секрет, что во многих организа- средств нет или нет возможности спи-
твенно к описанию NX, перечис- циях нашей страны с давних вре- сать такую технику, да и просто выки-
лю некоторые тенденции, ко- мен незаконно используются мно- дывать жалко? И как решать не менее
торые сегодня становятся очевидны- гие программы и ОС, которые со- острую проблему «лицензионной чис-
ми для многих крупных компаний на- трудники устанавливали по своей тоты» используемых программ, о кото-
шей страны: инициативе. Вначале это рассмат- рой говорится в четвертом пункте?
1. Компьютерная техника дешеве- ривалось как само собой разуме- На помощь приходят терминаль-
ет и становится более доступной, ющееся обстоятельство, потом оп- ные технологии, которые позволяют за-
чем раньше. При этом её произво- равдывалось финансовым поло- действовать старые компьютеры, а так-
дительность удваивается каждые жением. Сейчас, когда наша стра- же частично снять вопросы «лицензи-
1,5-2 года согласно закону Мура. на вступает в ВТО, правительство онной чистоты», если применять реше-
Это приводит к накоплению техни- вынуждено такую ситуацию спеш- ния на базе продуктов Open Source.
ки, не выработавшей свой ресурс, но исправлять, в связи с этим уси- В журнале уже публиковалось не-
но уже устаревшей. лилось давление на предприятия сколько статей по работе с дистрибу-
2. Разработанные на предприятиях со стороны внутренних органов тивом Thinstation [1, 2]. В этой статье
силами программистов отделов с требованием отказаться от неза- я расскажу об особенностях настройки
АСУ в перестроечные годы клиент- конно используемых ПО и ОС. и опыте эксплуатации на своем пред-
серверные приложения еще ра- приятии тонких клиентов на базе дис-
ботают на старой технике, но уже Очевидно противоречие между трибутива Thinstation и технологии NX,
не соответствуют требованиям вторым и третьим пунктами: необхо- разработанной фирмой Nomachine.
времени. димо или найти способ, позволяющий До недавнего времени в мире тер-
3. Современные программное обес- эффективно задействовать старую минальной связи было мало известно
печение и операционные системы технику для выполнения современных удачных сетевых протоколов высокого
не заставить работать на компью- задач, или отказаться от этой техни- уровня, способных эффективно сжи-
терах с процессорами прежних по- ки. Если имеется достаточно средств, мать и шифровать трафик между тон-
колений (i386, i486 и т. д.). то выбор понятен. Но что делать, если ким клиентом и сервером. Наиболее из-
16
администрирование
вестные и популярные из них – это RDP статьях. Коротко перечислю действия cp -f ru.xkm ~/thinstation ↵
/packages/keymaps-ru ↵
от Microsoft и ICA от Citrix. Оба прото- по настройке клиента: редактируем /x-common/lib/kmaps/xkb
кола используются серверами на ба- ~/thinstation/build.conf и создаем образ,
зе ОС MS Windows. Меня же интересо- запустив скрипт ~/thinstation/build. Го- После сборки образа получаем
вала возможность использовать тон- товый файл образа ~/thinstation/boot- нормальное переключение раскладок
кие клиенты с серверами на базе Linux. images/etherboot/thinstation.nbi копируем по <CTRL+SHIFT>. Вот только работа-
В качестве основы для тонкого клиен- на TFTFP-сервер. Добавляем в файл на- ет VNC-клиент недопустимо медленно.
та почти сразу был выбран небольшой стройки dhcp.conf DHCP-сервера запись На компьютерах с процессором ниже
дистрибутив, этакий Linux-конструк- о MAC-адресе сетевой платы тонкого P-200 начинается этакое «слайд-шоу»,
тор, Thinstation – как наиболее стабиль- клиента. В каталоге TFTP-сервера со- когда любое действие на удаленном
но развивающийся и популярный в на- здаем файл с настройками для данного рабочем столе сопровождается нето-
шей стране и за рубежом. А вот с вы- MAC-адреса и(или) редактируем файл ропливой прорисовкой этих изменений
бором протокола, который бы отвечал thinstation.conf.network. Настройки мо- на экране монитора тонкого клиента.
за общение с сервером, пришлось по- ей рабочей системы можно посмотреть Существует множество VNC-решений,
возиться и поэкспериментировать. Пе- в листинге раздела «Настройка и созда- использующих схожие методы кодиро-
речислю основные критерии, по кото- ние образа Thinstation» и на рис. 1. вания данных при передаче, все исполь-
рым выбирался протокол. Во-первых, Для того чтобы добавить в образ зуют протокол Remote FrameBuffer (RFB).
нам хотелось использовать как можно пакет VNC-клиента, раскомментиру- Различаются они количеством функций,
более широкий диапазон старых ком- ем строчку «#package vncviewer» в кон- параметрами кодирования данных,
пьютеров, имеющих процессоры начи- фигурационном файле ~/thinstation/ а также числом поддерживаемых плат-
ная с i486, с минимальным объемом па- build.conf. Если каталог tftp-серве- форм. Например, RealVNC [4] подде-
мяти, такой техники у нас предостаточ- ра находится в /tftpboot (как это у ме- рживает сервер и клиент для Windows,
но. Во-вторых, отметались коммерчес- ня), то отредактируйте файл /tftpboot/ UNIX, Microsoft PocketPC и Mac OS X,
кие продукты: мы не хотели нести до- thinstation.conf.network таким образом, TightVNC [5] включает сервер и клиент
полнительные расходы. В-третьих, не- чтобы в нем появились строчки: для Windows и UNIX, VNC for DOS [6] –
обходимы хорошая поддержка русско- клиент для DOS, UltraVNC [7] – сервер
го языка и кириллицы, а также наличие SESSION_0_TYPE=vncviewer и клиент для Windows, OSXvnc [8] – сер-
SESSION_0_TITLE="VNC"
привычного для пользователей спосо- SESSION_0_VNCVIEWER_SERVER= ↵ вер и клиент для Mac OS X. Я протести-
ба переключения между раскладками – 10.10.10.10:5901 ровал RealVNC и TightVNC: второй про-
комбинации клавиш <CTRL+SHIFT>. дукт (и сервер, и клиент) субъективно
В-четвертых, в рамках локальной сети IP-адрес 10.10.10.10 замените на адрес немного быстрее, но оба создают эф-
нам необязательна поддержка шифра- вашего VNC-сервера. фект «слайд-шоу» на слабых компью-
ции, но важны сжатие и минимизация Теперь проверим собранный с но- терах. Придется попробовать что-ни-
сетевого трафика. вым параметром образ в работе: вклю- будь другое в качестве протокола свя-
чаем тонкого клиента, дожидаемся за- зи между клиентом и сервером. VNC
Поиск решения грузки и запуска образа Thinstation, пока оставим в покое, позже придется
В первую очередь я обратил внимание подключаемся к VNC-серверу. Обра- к нему еще вернуться. Вот здесь я об-
на VNC как наиболее распространен- тите внимание на то, что переключе- ратился к NX.
ный и имеющийся в любом дистрибу- ние раскладок происходит с помощью Поддержка Nomachine NX-клиента
тиве Linux, а также являющийся лег- клавиши «правый Alt». Собственно, ви- впервые появилась в Thinstation вер-
ким в настройке продуктом. Когда не- новат здесь не VNC-клиент, а файл сии 2.1 в 2005 году, а последней на те-
обходимо подключиться к удаленно- Thinstation из пакета поддержки кирил- кущий момент является 2.2, она и бу-
му рабочему столу Linux-сервера с ра- лицы keymaps-ru. Чтобы долго не во- дет подразумеваться далее. Для сбор-
бочей станции Windows или того же зиться с поисками решения пробле- ки образа с пакетом NX раньше был
Linux, то первое, что приходит в голо- мы, я сгенерировал xkb-файл в на- необходим прямой доступ в Интернет,
ву, это VNC. Скачайте последнюю вер- строенной системе SUSE-10.0 следу- в последних версиях Thinstation поя-
сию дистрибутива Thinstation [3], за- ющим образом: вилась возможность указывать путь
тем распакуйте полученный архивный к файлу префиксом «file://». Исполь-
файл в домашнем каталоге. Будем счи- xkbcomp :0 ru.xkb зуемый и поддерживаемый дистрибу-
xkbcomp -xkm ru.xkb ru.xkm
тать, что путь к дистрибутиву выгля- тивом Nomachine NX клиент до сих пор
дит так: ~/thinstation. Файл, отвечаю- Утилита xkbcomp конвертирует опи- имеет версию 1.5.x, хотя уже прошло
щий за параметры сборки, находится сание XKB-раскладки в один из фор- достаточно времени с момента появ-
здесь: ~/thinstation/build.conf. Он име- матов. В первой команде генерируется ления новой версии NX 2.0. В файле
ет подробные комментарии. О его на- дамп текущей раскладки из источника, конфигурации build.conf раскомменти-
стройке, а также о том, как заставить в качестве которого выступает X-дисп- руем строку «package nx», также в кон-
образ Thinstation загружаться при по- лей «:0». Вторая команда компилирует це файла найдем строку «param nxurl»:
мощи сетевой карты с бутовой микро- полученный файл в понятный для сис- укажем путь к заранее скачанному
схемой, я подробно рассказывать не бу- темы двоичный вид. Заменяем исход- файлу, либо оставим как есть(нужен
ду, об этом уже писалось в указанных ный файл своим: доступ в Интернет). Полученный сге-
18
администрирование
ных, а при изменении этих блоков
данных потока вычисляет и пере-
дает только их разницу.
До NX не было надежного спосо-
ба подавления избыточного тра-
фика X-протокола на дальних ли-
ниях связи. NX может это делать,
транслируя X-трафик на удален-
ном конце(от приложения к nxagent)
в трафик протокола NX.
20
администрирование
ве тонких клиентов, железо и перифе-
рия будут отличаться, то отдельные па-
кеты хотелось бы вынести за рамки об-
щего для всех образа. Такая возмож-
ность у Thinstation есть: pkg означает
собрать как отдельный подгружаемый
пакет с расширением pkg, package оз-
начает включение в общий образ. Па-
кеты lprng, sshd, samba-server и другие
однозначно собираем как подгружае-
мые. Можно все пакеты с X-драйвера-
ми видеокарт указать как pkg, но тогда
при сборке образа появятся несколько
дополнительных пакетов, которые надо
будет подгружать всем, и в результате
общий размер подгружаемых данных
будет больше. Поступим проще: один
из видеодрайверов, наиболее часто ис-
пользуемый, а именно S3, укажем как
package, остальные – pkg. Модули то-
Рисунок 3. Файлы настроек тонких клиентов Thinstation
же можно выносить за пределы ядра,
но пока эта возможность работала некорректно, к тому же Добавление локальной фильтрации избавило меня
места в составе ядра они занимают совсем немного. Ниже от проблемы «лесенки» при печати. Кроме того, я создал
представлен мой файл конфигурации build.conf: следующий скрипт для проверки работы печати ~/thinstation/
packages/base/bin/my:
module serial
module intel-agp #!/bin/sh
module via-agp echo PRINTER TEST to /dev/printers/0 1>&2
module 8139too for i in 1 2 3 4 5 6 7 8 9;
module floppy do
module vfat echo PRINTER /dev/printers/0 $i > /dev/printers/0;
module supermount done
pkg xorg6-ati echo -e \\r\\f > /dev/printers/0
pkg xorg6-i810 exit 0;
pkg xorg6-nv
package xorg6-s3
pkg xorg6-s3virge Когда непонятно, что именно не работает, можно выпол-
pkg xorg6-sis нить этот скрипт на консоли тонкого клиента: /bin/my.
pkg xorg6-trident
package keymaps-ru Чтобы при подключении клиента NX к серверу каждый
package nx раз не появлялось окошко с предупреждением о незнакомом
pkg lprng
pkg sshd хосте, создадим в корне Thinstation файл known_hosts:
pkg samba-server
param rootpasswd pleasechangeme ssh-keyscan -t rsa nxserver_ip>>~/thinstation/known_hosts
param xorgvncpasswd pleasechangeme
param bootlogo false
param bootresolution 800x600
param defaultconfig thinstation.conf.buildtime В качестве «nxserver_ip» надо указать IP-адрес NX-сер-
param basename thinstation вера. Таким образом клиент будет знать о цифровом отпе-
param basepath .
param knownhosts ./known_hosts чатке rsa-ключа NX-сервера при аутентификации.
param localpkgs true После успешного выполнения build копируем thinstation/
param fulllocales false
param bootverbosity 3 boot-images/etherboot/thinstation.nbi и thinstation.nbi.zpxe,
param nxurl file://home/zhen/sources/nx/bin ↵ а также все pkg-файлы из thinstation/boot-images/pkg-
/nxclient-1.5.0-141.i386.tar.gz
packages в каталог /tftpboot на tftp-сервер. У меня создаю-
Если будете использовать печать на принтер, подклю- щийся файл thinstation.nbi.zpxe не заработал, в таком случае
ченный к тонкому клиенту с помощью lprng, необходимо вне- по адресу [17] можно скачать файл BootPXE535.zip, в этом
сти небольшую модификацию в файл thinstation/packages/ архиве есть универсальный загрузчик loader-native.zpxe,
lprng/etc/init.d/lprng. Для этого замените строчку: с ним все должно работать.
Конфигурационные файлы Thinstation достаточно хоро-
echo "$PRINTER_X_NAME:lp=$PRINTER_X_DEVICE:wd= ↵ шо откомментированы, но вот сам процесс настройки и пос-
$PRINTER_X_DRIVER:br=$PRINTER_X_OPTIONS: ↵
lf=/var/log/spooler.log:sh:sf" >> /etc/printcap ледовательность действий не всегда очевидны, так что не-
которые трудности, с которыми мне пришлось столкнуться,
на и тонкости я все-таки упомяну.
На рис. 3 показаны основные действия по включению
echo "$PRINTER_X_NAME:lp=$PRINTER_X_DEVICE:wd= ↵ тонкого клиента в работу. Сначала добавляем информацию
$PRINTER_X_DRIVER:br=$PRINTER_X_OPTIONS:if=/bin/lpf: ↵
lf=/var/log/spooler.log:sh:sf" >> /etc/printcap о MAC-адресе сетевой карты в dhcpd.conf. Не забудьте ука-
thinstation.nbi.zpxe";
22
администрирование
[ -z "$PROXY_LIBRARY_PATH" ] && PROXY_LIBRARY_PATH=$PATH_LIB # Патч просто копирует файл(ы) настроек NX-клиента
[ -z "$APPLICATION_LIBRARY_PATH" ] && APPLICATION_LIBRARY_PATH=$PATH_LIB # из стандартного места в корень
-[ -z "$APPLICATION_LIBRARY_PRELOAD" ] && APPLICATION_LIBRARY_
PRELOAD="$APPLICATION_LIBRARY_PATH/libX11.so.6.2:$APPLICATION_LIBRARY_ ls $HOME/.nx/config/.>nxsessions
PATH/libXext.so.6.4:$APPLICATION_LIBRARY_PATH/libXcomp.so.1:$APPLICATION_ if [ -s nxsessions ] ; then
LIBRARY_PATH/libXcompext.so.1:$APPLICATION_LIBRARY_PATH/libXrender.so.1.2" (cat nxsessions ) |
+[ -z "$APPLICATION_LIBRARY_PRELOAD" ] && APPLICATION_LIBRARY_ while read filename ; do
PRELOAD="$APPLICATION_LIBRARY_PATH/libX11.so.6.2:$APPLICATION_
probe=${filename%*.nxs}
LIBRARY_PATH/libXext.so.6.4:$APPLICATION_LIBRARY_PATH/libXcomp.
so.2.1.0:$APPLICATION_LIBRARY_PATH/libXcompext.so.2.1.0:$APPLICATION_
if [ "$filename" != "$probe" ]
LIBRARY_PATH/libXrender.so.1.2"
then
cp $HOME/.nx/config/$filename /$probe
[ -z "$KDE_PRINTRC" -a -n "$KDEHOME" ] && KDE_PRINTRC="$KDEHOME/share/ fi
config/kdeprintrc" done
[ -z "$KDE_PRINTRC" -a -z "$KDEHOME" ] && KDE_PRINTRC="$HOME/.kde/share/ fi
config/kdeprintrc" rm nxsessions
@@ -511,8 +511,8 @@
[ -z $(echo "$ENABLE_ROOTLESS_MODE" | egrep "^[0|1]$") ] && \
ERROR="yes" && echo "Error: Invalid value \"ENABLE_
Данный кусок кода надо вставить в конец файла
ROOTLESS_MODE=$ENABLE_ROOTLESS_MODE\"" ~/thinstation/packages/nx/etc/init.d/nx.init перед последней
- [ -z "$(strings $PATH_BIN/nxagent | grep 'NXAGENT - Version командой «exit 0». После этого надо пересобрать образ
1.5.0')" ] && \ Thinstation. Вот, теперь NX-сессия на тонком клиенте запус-
- ERROR="yes" && echo "Error: Could not find 1.5.0
version string in nxagent. NX 1.5.0 backend is needed for this version of кается так, как и задумано. В целом новая версия работа-
FreeNX."
+# [ -z "$(strings $PATH_BIN/nxagent | grep 'NXAGENT - Version
ет более стабильно, управление сессиями происходит бо-
1.5.0')" ] && \ лее корректно плюс в свежих исходниках обновлены алго-
+# ERROR="yes" && echo "Error: Could not find 1.5.0
version string in nxagent. NX 1.5.0 backend is needed for this version of ритмы компрессии, исправлены некоторые ошибки. Ранее
FreeNX." для очистки и закрытия незавершенных сессий и процес-
[ -z $(echo "$ENABLE_USESSION" | egrep "^[0|1]$") ] && \ сов приходилось обращаться к помощи cron:
ERROR="yes" && echo "Error: Invalid value \"ENABLE_
USESSION=$ENABLE_USESSION\""
1 0 * * * root /srv/NX/bin/nxserver –cleanup
Nxloadconfig надо отредактировать до выполнения ко-
манды /srv/NX/bin/nxsetup. В конфигурационном файле Удобно и то, что клиент NX 2.1 работает с серверами
/srv/NX/etc/node.conf раскомментируйте строчку: обеих версий.
В следующем номере читайте продолжение статьи, в ко-
ENABLE_2_0_0_BACKEND="1" торой я расскажу об особенностях эксплуатации, дополни-
тельных настройках NX и Thinstation, а также предложу ре-
Теперь посмотрим, что надо изменить в дистрибутиве шения некоторых возможных проблем.
Thinstation (последняя версия сейчас 2.2) для поддержки
NX 2.0 со стороны клиента. На момент написания статьи 1. Борисов А. Тонкий клиент – шаг к мэйнфреймам? //Систем-
поддерживался только клиент версии 1.5. Забираем с ад- ный администратор, №11, ноябрь 2005 г. – С. 32-38.
реса [20] NX client, не требующий поддержки библиотек XFT, 2. Маркелов А. Использование бездисковых Linux-станций с за-
в виде tar.gz-архива (на данный момент это nxclient-2.1.0-9. грузкой по сети. //Системный администратор, № 11, ноябрь
i386.tar.gz), распаковываем его в домашнем каталоге, ко- 2004 г. – С. 12-14.
пируем файлы и создаём недостающие ссылки. 3. h t t p : / / s o u r c e f o r g e . n e t / p r o j e c t / s h o w f i l e s . p h p ? g r o u p _
id=80408&package_id=82039.
#!/bin/sh 4. http://www.realvnc.com.
tar -xzf nxclient-2.1.0-9.i386.tar.gz
cp ~/NX/bin/* ~/thinstation/packages/nx/usr/NX/bin 5. http://www.tightvnc.com.
cp -fl ~/NX/lib/libXcomp.so.* ↵ 6. http://www.complang.tuwien.ac.at/nino/dosvnc.html.
~/thinstation/packages/nx/usr/NX/lib/
ln -sf libXcomp.so.2.1.0 ↵ 7. http://ultravnc.sourceforge.net.
~/thinstation/packages/nx/usr/NX/lib/libXcomp.so.1.5.0 8. http://www.redstonesoftware.com/products/vine/server/vineosx/
cp ~/NX/share/keys/server.id_dsa.key ↵
~/thinstation/packages/nx/usr/NX/share/keys index.html.
cp ~/NX/share/keyboards ↵ 9. http://en.wikipedia.org/wiki/X_Window_System.
~/thinstation/packages/nx/usr/NX/share/
cp -R ~/NX/share/images ↵ 10. http://www.vigor.nu/dxpc.
~/thinstation/packages/nx/usr/NX/share/ 11. http://www.nomachine.com/sources.php.
touch ~/thinstation/packages/nx/build/installed
12. http://www.nomachine.com/experimental-products.php.
После этих действий пакет NX считается установлен- 13. http://debian.tu-bs.de/knoppix/nx/freenx-0.4.4.tar.gz.
ным в дереве пакетов Thinstation, теперь собираем об- 14. http://www.linuxfromscratch.org/hints/downloads/attachments/
раз, выполнив build, и копируем на tftp-сервер. Ну вот, об- freenx/NX-lfs_hint.diff.
раз готов и помещен в каталог tftp-сервера, но это еще 15. http://www.linuxfromscratch.org/hints/downloads/attachments/
не все. Оказывается NX-клиент новой версии на тонком freenx/freenx-lfs_hint.diff.
клиенте по-другому интерпретирует настройки из файлов 16. http://www.novell.com/coolsolutions/feature/16247.html.
thinstation.conf.group-TUX1C(NX). После некоторого выясне- 17. h t t p : / / s o u r c e f o r g e . n e t / p r o j e c t / s h o w f i l e s . p h p ? g r o u p _
ния оказалось, что файл с настройками NX-сессии должен id=80408&package_id=97496&release_id=200769.
создаться в корне файловой системы тонкого клиента. При- 18. http://www.nomachine.com/ar/view.php?ar_id=AR02C00154.
шлось сделать небольшой патч для Thinstation, идею я под- 19. http://prdownload.berlios.de/freenx/freenx-0.5.0.tar.gz.
смотрел на одном форуме: 20. http://www.nomachine.com/download-package.php?Prod_Id=26.
Кластеризация + виртуализация:
Linux HA + OpenVZ
Часть 2: Виртуализация на практике
Евгений Прокопьев
В первой части статьи (в №11 за 2005 г.) мы построили отказоустойчивый кластер с общим
дисковым пространством, состоящий из двух узлов: m1 и m2. Теперь нам необходимо
построить систему виртуализации с виртуальными серверами, мигрирующими с узла m1 на m2
в случае отказа первого.
24
администрирование
boot=/dev/hda нальную документацию с http://openvz.org/documentation
map=/boot/map
default=linux и выжимку из нее, ориентированную на ALT Linux и до-
image=/boot/vmlinuz ступную здесь – http://www.freesource.info/wiki/AltLinux/
label=linux
root=/dev/hda2 Dokumentacija/OpenVZ.
initrd=/boot/initrd.img Существуют уже готовые шаблоны виртуальных сер-
read-only
веров, построенных на основе некоторых общедоступных
При этом /boot/vmlinuz и /boot/initrd.img должны ссылать- дистрибутивов Linux: CentOS, Debian, Fedora Core, Gentoo,
ся на образ ядра и образ initrd соответственно: Mandriva, openSUSE. Коммерческие RHEL и SUSE SLES
в этом списке отсутствуют. Отсутствует и ALT Linux, хо-
[root@m1 ~]# ls -l /boot/ тя ссылки на шаблоны ALT Linux содержатся в приведен-
total 6892
-rw-r--r-- 1 root root 755493 Sep 22 22:45 System.map-2.6.16-ovz-smp-alt7
ной выше ссылке на ALT-ориентированную документацию.
-rw-r--r-- 1 root root 686841 Oct 9 23:54 System.map-2.6.16-std26-up-alt10
-rw-r--r-- 1 root root 512 Oct 9 23:54 boot.0300
Но мы построим шаблон для виртуального сервера на ос-
-rw-r--r-- 1 root root 512 Oct 9 23:54 boot.0800
-rw-r--r-- 1 root root 65929 Sep 22 22:39 config-2.6.16-ovz-smp-alt7
нове ALT Linux самостоятельно.
-rw-r--r-- 1 root root 66100 Oct 9 23:54 config-2.6.16-std26-up-alt10
-rw------- 1 root root 321240 Oct 10 23:34 initrd-2.6.16-ovz-smp-alt7.img
Штатным для OpenVZ средством построения шаблонов
-rw------- 1 root root 204992 Oct 9 23:54 initrd-2.6.16-std26-up-alt10.img
lrwxrwxrwx 1 root root 30 Oct 10 23:34 initrd-smp.img -> initrd-2.6.16-ovz-smp-alt7.img
является утилита vzpkg. Она использует yum в качестве вы-
lrwxrwxrwx 1 root root
lrwxrwxrwx 1 root root
32 Oct 9 23:54 initrd-up.img -> initrd-2.6.16-std26-up-alt10.img
30 Oct 10 23:34 initrd.img -> initrd-2.6.16-ovz-smp-alt7.img
сокоуровневого средства управления пакетами (поддержку
-rw------- 1 root root 31744 Oct 10 23:38 map
lrwxrwxrwx 1 root root 27 Oct 10 23:34 vmlinuz -> vmlinuz-2.6.16-ovz-smp-alt7
apt обещают чуть позже) и поэтому не может быть исполь-
-rw-r--r-- 1 root root 1246789 Sep 22 22:45 vmlinuz-2.6.16-ovz-smp-alt7
-rw-r--r-- 1 root root 1132834 Oct 9 23:54 vmlinuz-2.6.16-std26-up-alt10
зована в тех случаях, когда дистрибутив, на основе кото-
lrwxrwxrwx 1 root root
lrwxrwxrwx 1 root root
27 Oct 10 23:34 vmlinuz-smp -> vmlinuz-2.6.16-ovz-smp-alt7
29 Oct 9 23:54 vmlinuz-up -> vmlinuz-2.6.16-std26-up-alt10
рого строится шаблон, не имеет yum-репозиториев. Впро-
чем, поскольку шаблон – это всего лишь архив корня уже
Также с помощью «chkconfig --list» удостоверьтесь, установленной системы в виде tar.gz, изготовить его мож-
что сервис vz не будет запущен после перезагрузки и за- но любыми подручными средствами, например, из систе-
тем перезагрузится. мы, работающей на физическом сервере.
После перезагрузки переместите файлы OpenVZ в ка- В случае ALT Linux в качестве такого подручного средс-
талог /d0, куда уже должно быть смонтировано устройс- тва удобнее всего использовать spt. Если spt уже установ-
тво /dev/drbd0, а на старом месте создать символические лен (его удобнее держать на выделенном физическом ли-
ссылки: бо виртуальном сборочном сервере), то можно использо-
вать содержимое каталога /usr/share/spt/profile-ovz/ как при-
[root@m1 ~]# mkdir /d0/vz мер для создания образа, который затем послужит нам
[root@m1 ~]# mkdir /d0/vz/etc
[root@m1 ~]# mkdir /d0/vz/etc/sysconfig шаблоном для создания виртуального сервера. Нет ника-
[root@m1 ~]# mkdir /d0/vz/var ких препятствий к тому, чтобы использовать этот образец
[root@m1 ~]# mkdir /d0/vz/var/lib
[root@m1 ~]# cp -r /etc/vz /d0/vz/etc как есть, но мне показалось более правильным скопиро-
[root@m1 ~]# cp -r /etc/sysconfig/vz-scripts ↵ вать его в ~/ovz и изменить список пакетов в шаблоне, от-
/d0/vz/etc/sysconfig
[root@m1 ~]# cp -r /var/lib/vz /d0/vz/var/lib редактировав файл ~/ovz/packages/main так:
[root@m1 ~]# cp -r /var/lib/vzquota /d0/vz/var/lib
[root@m1 ~]# rm -rf /etc/vz basesystem
[root@m1 ~]# rm -rf /etc/sysconfig/vz-scripts passwd
[root@m1 ~]# rm -rf /var/lib/vz apt
[root@m1 ~]# rm -rf /var/lib/vzquota
apt-conf-sisyphus
[root@m1 ~]# ln -s /d0/vz/etc/vz /etc/vz etcnet
[root@m1 ~]# ln -s /d0/vz/etc/sysconfig/vz-scripts ↵ glibc
/etc/sysconfig/vz-scripts
sysklogd
[root@m1 ~]# ln -s /d0/vz/var/lib/vz /var/lib/vz mc
[root@m1 ~]# ln -s /d0/vz/var/lib/vzquota ↵ openssh-server
/var/lib/vzquota
openssh-clients
После остановки сервиса heartbeat на узле m1 и мон-
тирования drbd-устройства на узле m2 на нем необходимо Также мне показалось разумным изменить конфигу-
аналогичным образом удалить каталоги OpenVZ и создать рацию apt по умолчанию, чтобы сразу иметь возможность
вместо них ссылки на /d0/vz. После того как OpenVZ перене- устанавливать пакеты из моего локального репозитория.
сен на drbd-раздел, необходимо указать сервису heartbeat, Для этого я создал файл ~/ovz/postinstall/setup.d/01apt c та-
что сервис vz должен работать на узле m1, для чего отре- ким содержимым:
дактировать файл /etc/ha.d/haresources на обоих узлах:
cat >> /etc/apt/sources.list.d/sisyphus.local.list <<END
m1.mydomain.com drbddisk ↵
Filesystem::/dev/drbd0::/d0::ext3 vz # Local Sisyphus
Краткий обзор важнейших Тонкого клиента для загрузки по сети зультатов. В этом качестве hasher исполь-
технологий Sisyphus посредством PXE. зуют как члены ALT Linux Team для под-
Spt (http://wiki.sisyphus.ru /devel /spt) – готовки своих пакетов, так и Incominger
это инструмент, позволяющий из репози- Механизм работы spt сводится к уста- (http://wiki.sisyphus.ru/devel/Incoming) – ро-
тория Sisyphus создать готовый к загруз- новке пакетов, определенных пользова- бот, занимающийся приемом новых паке-
ке экземпляр системы в виде: телем (и всех зависимых от них) в chroot, тов в репозиторий.
Live-CD. и выполнению ряда скриптов, также опре- В настоящее время пакеты поступа-
Инсталляционного диска, который деленных пользователем. ют в Incoming в виде SRPM, однако многи-
является частным случаем Live-CD Spt ак тивно использует hasher ми разработчиками уже используется тех-
отличается от него только тем, (http://www.freesource.info/wiki/ALTLinux/ нология GEAR (http://wiki.sisyphus.ru/devel/
что включает в себя alterator (http:// Dokumentacija/Hasher), который в общем git), позволяющая хранить исходный код
wiki.sisyphus.ru/Alterator) – штатный случае является механизмом помещения пакетов в системе контроля версий GIT
конфигуратор системы, построеной в chroot запускаемой программы и установ- (http://git.or.cz), первоначально разработан-
на основе Sisyphus. ки туда же всех пакетов, от которых эта про- ной Линусом Торвальдсом специально для
Архива корневой файловой системы грамма зависит. По этой причине чаще все- совместной работы над ядром Linux. В са-
для использования в качестве вирту- го hasher используется при сборке пакетов мом ближайшем будущем планируется сде-
ального сервера в какой-либо систе- для того, чтобы гарантировать постоянс- лать поступление пакетов из GIT-репозито-
ме виртуализации или для установки тво среды, в которой происходит сборка, риев напрямую в Incoming более приоритет-
на диск физического компьютера. и, соответственно, воспроизводимость ре- ным, а от SRPMS со временем отказаться.
26
администрирование
Computing interface groups: ... 3 interfaces found
Processing /etc/net/vlantab: empty.
Stopping group 1/realphys (1 interfaces)
Stopping eth1: ..OK
Stopping group 0/virtual (2 interfaces)
Stopping lo: .OK
Stopping venet0: .OK
error: setting key "net.ipv4.icmp_echo_ignore_broadcasts": Operation not permitted
error: setting key "net.ipv4.tcp_syncookies": Operation not permitted
error: setting key "net.ipv4.tcp_timestamps": Operation not permitted
Computing interface groups: ... 3 interfaces found
Starting group 0/virtual (2 interfaces)
Starting lo: ....OK
Starting venet0: ......OK
Starting group 1/realphys (1 interfaces)
Starting eth1: ......OK
Processing /etc/net/vlantab: empty.
фигурировать вручную средствами того дистрибутива [root@m1 ~]# vzctl set mail --onboot yes --save
Linux, который работает на физическом и виртуальном
Saved parameters for VE 102
сервере. Они лишены недостатков venet (которые мож-
но рассматривать и как достоинства с точки зрения бе- [root@m1 ~]# vzctl set mail ↵
--hostname mail.mydomain.com --save
зопасности и эффективности) и выглядят как полноцен-
ные ethernet-интерфейсы. Saved parameters for VE 102
Creating VE private area: /var/lib/vz/private/103 [root@m1 ~]# vzctl exec router ping 192.168.199.2
Performing postcreate actions
VE private area was created PING 192.168.199.2 (192.168.199.2) 56(84) bytes of data.
64 bytes from 192.168.199.2: icmp_seq=1 ttl=64 time=15.9 ms
[root@m1 ~]# vzctl set 103 --name dbms --save
[root@m1 ~]# vzctl exec router ping 192.168.199.3
Name ve2 assigned
PING 192.168.199.3 (192.168.199.3) 56(84) bytes of data.
Saved parameters for VE 103
64 bytes from 192.168.199.3: icmp_seq=1 ttl=64 time=3.71 ms
[root@m1 ~]# vzctl set dbms --onboot yes --save
Теперь на виртуальных серверах описываем маршрут
Saved parameters for VE 103
во внешнюю физическую сеть:
[root@m1 ~]# vzctl set dbms ↵
--hostname dbms.mydomain.com --save [root@m1 ~]# vzctl exec mail ip route ↵
add 192.168.0.0/16 via 192.168.199.1
Saved parameters for VE 103 [root@m1 ~]# vzctl exec dbms ip route ↵
add 192.168.0.0/16 via 192.168.199.1
[root@m1 ~]# vzctl start dbms
Starting VE ... На виртуальном маршрутизаторе включаем пересылку
VE is mounted
Adding IP address(es): 192.168.199.3 пакетов между физической и виртуальной сетями:
Setting CPU units: 1000
Set hostname: dbms.mydomain.com [root@m1 ~]# vzctl exec router sysctl -w ↵
VE start in progress... net.ipv4.ip_forward=1
Создаем и конфигурируем veth-интерфейсы внутри вир- Теперь если на машине из физической сети 192.168.46.0/24
туальных серверов: описать маршрут в сеть 192.168.199.0/24 (или настроить NAT
на виртуальном маршрутизаторе), мы получим то, чего
[root@m1 ~]# vzctl set router ↵ и добивались:
--veth_add veth1,00:12:34:56:78:9A,eth0, ↵
00:12:34:56:78:9B --save
[root@m1 ~]# vzctl exec mail ping 192.168.46.1
Processing veth devices
Saved parameters for VE 101 PING 192.168.46.1 (192.168.46.1) 56(84) bytes of data.
64 bytes from 192.168.46.1: icmp_seq=1 ttl=63 time=0.982 ms
[root@m1 ~]# vzctl exec router ip address ↵
add 192.168.199.1/24 dev eth0
[root@m1 ~]# vzctl exec router ip link set eth0 up Желательно, чтобы все описанные выше настройки со-
хранялись при перезапуске виртуальных серверов, сервиса
[root@m1 ~]# vzctl set mail ↵ vz и ведущего узла кластера. С настройками виртуальных
--veth_add veth2,00:12:34:56:78:9C,eth0, ↵
00:12:34:56:78:9D --save серверов проще всего – их можно сохранить в etcnet:
Processing veth devices [root@m1 ~]# vzctl enter mail
Saved parameters for VE 102 [root@mail /]# mkdir /etc/net/ifaces/eth0
[root@mail /]# echo 192.168.199.2/24 > ↵
[root@m1 ~]# vzctl exec mail ip address ↵ /etc/net/ifaces/eth0/ipv4address
add 192.168.199.2/24 dev eth0 [root@mail /]# echo 192.168.0.0/16 via 192.168.199.1 ↵
[root@m1 ~]# vzctl exec mail ip link set eth0 up dev eth0 > /etc/net/ifaces/eth0/ipv4route
[root@mail /]# echo "BOOTPROTO=static
[root@m1 ~]# vzctl set dbms ↵ > ONBOOT=yes
--veth_add veth3,00:12:34:56:78:9E,eth0, ↵ > TYPE=eth" > /etc/net/ifaces/eth0/options
00:12:34:56:78:9F --save
[root@m1 ~]# vzctl enter dbms
[root@dbms /]# mkdir /etc/net/ifaces/eth0
Processing veth devices [root@dbms /]# echo 192.168.199.3/24 > ↵
Saved parameters for VE 103 /etc/net/ifaces/eth0/ipv4address
[root@dbms /]# echo 192.168.0.0/16 via 192.168.199.1 ↵
[root@m1 ~]# vzctl exec dbms ip address ↵ dev eth0 > /etc/net/ifaces/eth0/ipv4route
add 192.168.199.3/24 dev eth0 [root@dbms /]# echo "BOOTPROTO=static
[root@m1 ~]# vzctl exec dbms ip link set eth0 up > ONBOOT=yes
> TYPE=eth" > /etc/net/ifaces/eth0/options
Имена интерфейсов и их MAC-адреса мы придумываем
сами, поэтому необходимо, чтобы последние не пересека- Для автоматического добавления конца veth-интерфей-
лись с существующими. Объединяем концы veth-интерфей- сов со стороны физического сервера в бридж при старте
сов со стороны физического сервера в бридж: соответствующего виртуального сервера потребуется ис-
28
администрирование
править скрипт /usr/sbin/vznetcfg, добавив в конец функ- Затем в виртуальных серверах необходимо удалить
ции init_veth() строку (сделать это нужно на двух узлах из etcnet настройки интерфейса venet0:
кластера):
[root@m1 ~]# vzctl exec router rm -rf /etc/net/ifaces/venet0
[root@m1 ~]# vzctl exec mail rm -rf /etc/net/ifaces/venet0
brctl addif br0 ${dev} [root@m1 ~]# vzctl exec dbms rm -rf /etc/net/ifaces/venet0
В будущем разработчики OpenVZ обещают доработать Теперь можно перезапустить сервис vz – в конфигура-
этот скрипт, чтобы подобного рода измения можно было ции виртуальных серверов останутся только те маршруты,
описывать в конфигурационном файле. которые мы указали явно.
Наконец, бридж тоже нужно создать, и сделать это не- Таким образом, мы добились того, чего хотели: в штат-
обходимо еще до старта всех виртуальных серверов. Луч- ном режиме виртуальные серверы mail и dbms работают
ше всего добавить его создание в конфигурацию etcnet на узле m1, а в случае его отказа автоматически переезжа-
на обоих узлах кластера: ют на узел m2, при этом с точки зрения внешнего наблюда-
теля из физической сети 192.168.46.0/24 наблюдается лишь
[root@m1 ~]# mkdir /etc/net/ifaces/br0 кратковременный перерыв в обслуживании:
[root@m1 ~]# echo TYPE=bri > /etc/net/ifaces/br0/options
Алексей Бережной
Использование FreeBSD на небольших роутерах для связи с внешним миром уже давно
перестало быть чем-то выдающимся. Эта простая в использовании, нетребовательная
к ресурсам и обслуживанию операционная система почти идеально подходит для решения
подобных задач.
Нам понадобится Операционная система: FreeBSD системы, больше нам ничего не пот-
Аппаратное обеспечение. Что- 5.5 или 6.1. ребуется.
бы вывести внутреннюю сеть в Ин- Дополнительно: из-за того, что
тернет, достаточно компьютера данный компьютер подлежит не- Настройка сетевых
Pentium III 600 МГц, 256 Мб RAM, прерывному использованию, реко- интерфейсов
10 Гб HDD, 2 сетевые карты. Конфи- мендую доставить внутрь корпуса Будем считать, что уже имеется ком-
гурация взята с запасом, для пол- дополнительные вентиляторы что- пьютер подходящей конфигурации
ноценной работы сети малого офи- бы обеспечить принудительное на- с установленной нужной версией
са (около 50 пользователей) впол- гнетание/отток воздуха для охлаж- FreeBSD.
не хватило бы Pentium II 400 МГц, дения. Практически все современ- Необходимо уточнить имена ин-
c 128 Мб RAM. Но в дальнейшем мо- ные корпусы ATX позволяют сде- терфейсов сетевых карт, под которы-
жет возникнуть желание установить лать это. ми их распознает операционная сис-
на этот же шлюз, к примеру, прокси- тема.
сервер, лучше выбрать конфигура- Поскольку все необходимые моду-
цию более высокого уровня. ли включены в состав операционной # ifconfig
30
администрирование
Должно появиться что-то подобное: ма Мошкова http://www.lib.ru/unixhelp/vi.txt и http://www.lib.ru/
unixhelp/vibegin.txt.
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=8<VLAN_MTU> Настройки сетевых интерфейсов во FreeBSD хранятся
ether 00:xx:xx:xx:xx:xx в файле /etc/rc.conf. Открываем его на редактирование:
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
xl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
# vi /etc/rc.conf
options=9<RXCSUM,VLAN_MTU>
ether 00:zz:zz:zz:zz:zz
media: Ethernet autoselect (100baseTX <full-duplex>) И добавляем следующие строки:
status: active
plip0: flags=108810<POINTOPOINT,SIMPLEX,MULTICAST,NEEDSGIANT> mtu 1500 # Задаем внутренний интерфейс
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384 ifconfig_xl0="inet 192.168.9.2 netmask 255.255.255.0"
inet6 ::1 prefixlen 128 # Задаем внешний интерфейс
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4 ifconfig_rl0="inet 83.xxx.xxx.xxx netmask 255.255.255.224"
inet 127.0.0.1 netmask 0xff000000 # Задаем шлюз провайдера по умолчанию
defaultrouter="83.xxx.xxx.1"
В компьютере установлены две сетевые карты c име- # Имя хоста
hostname="ourhost.ourdomain.ru"
нами интерфейсов rl0 и xl0. # Указываем, что сервер будет работать как маршрутизатор
В нашем случае интерфейс rl0 будет «смотреть» во вне- gateway_enable="YES"
шний мир, а xl0 – во внутреннюю сеть. IP- адрес внутренне-
го интерфейса: 192.168.9.2 , маска подсети 255.255.255.0, После чего перезагружаем компьютер:
имя интерфейса xl0; IP-адрес внешнего интерфейса
83.xxx.xxx.xxx, маска подсети 255.255.255.224, имя интер- # reboot
фейса rl0.
Уточнить, сетевым картам каких производителей соот- В данный момент компьютер можно было и не пере-
ветствуют те или иные сетевые адреса, можно, заглянув загружать. Но мы хотим достоверно убедиться, что наши
в файл GENERIC в каталоге /usr/src/sys/i386/conf: интерфейсы установлены корректно и работают, поэтому
я все же рекомендую перезагрузиться.
# more /usr/src/sys/i386/conf/ GENERIC После загрузки проверяем:
Открываем на редактирование новый файл ourkernel: по умолчанию FreeBSD использует правила из файла
/etc/rc.firewall.
# vi ourkernel В нем есть несколько готовых шаблонов:
open – файервол разрешает прохождение всех паке-
и добавляем следующие опции: тов.
client – рекомендуется для защиты только этого компью-
# тера. То есть файервол настроен как стандартный кли-
options IPFIREWALL #firewall
options IPFIREWALL_VERBOSE ↵ ентский компьютер. Он разрешает все исходящие со-
#enable logging to syslogd(8) единения и запрещает все входящие соединения, кро-
options IPFIREWALL_FORWARD ↵
#enable transparent proxy support ме соединений по 25 порту.
options IPFIREWALL_VERBOSE_LIMIT=100 #limit verbosity simple – предполагается для настроек простых шлю-
options IPFIREWALL_DEFAULT_TO_ACCEPT ↵
#allow everything by default зов и т. д. То есть в качестве простейшего файерво-
# ла, защищающего внутреннюю сеть от проникновения
options DUMMYNET
# извне. Мы будем настраивать более гибкую систему
options IPDIVERT #divert sockets правил, поэтому данный шаблон нами не использует-
ся не будет.
После сделанных изменений можно приступать к пере- closed – Разрешается трафик через локальный интер-
компиляции ядра. фейс lo0. Прохождение остального трафика определя-
Выполняем команды: ется правилом по умолчанию. Как правило, это запрет
любого доступа, исключая внутренний интерфейс lo0
# config ourkernel (попросту говоря, разрешен только доступ «к самому
# cd /usr/src/sys/i386/compile/ourkernel
# make depend себе»)
# make UNKNOWN – запретить загрузку файервольных правил
# make install
из конфигурационного скрипта по умолчанию. Файер-
Перегружаемся: вол никак не настраивается. Будет он пропускать тра-
фик или нет, зависит от конфигурации ядра системы.
# reboot Используется по умолчанию.
Если после перезагрузки сервер работает нормально, Эту же переменную в значении «filename» – «имя_фай-
приступаем к настройке файервола. ла» – можно использовать для задания собственного кон-
Для организации работы файервола используются сле- фигурационного файла для файервола.
дующие переменные, добавляемые при необходимости Например:
в файл rc.conf.
Разрешает или запрещает использование файервола: firewall_type="/etc/rc.firewall.newconfig"
# Set to YES to enable firewall functionality будет загружать настройки из созданного файла /etc/
firewall_enable="NO"
rc.firewall.newconfig.
Имя и местоположение файла, отвечающего за иници- «firewall_flags=””» – служит для передачи дополнитель-
ализацию файервола. ных аргументов при использовании firewall_type со значе-
нием filename.
# Which script to run to set up the firewall Наша задача состоит в том, чтобы создать систему, от-
firewall_script="/etc/rc.firewall"
вечающую следующим критериям:
32
администрирование
Простота администрирования. /sbin/ipfw add 12960 deny tcp from ${intnet} ↵
to any 20,21,80,443
Возможность модификации «на лету», незаметно /sbin/ipfw add 12970 deny tcp from any 20,21,80,443 ↵
для пользователей. Поэтому такие операции, как раз- to ${intnet}
/sbin/ipfw add 12980 deny udp from ${intnet} to any 20,21
рыв соединений и тем более перезагрузка для нас не- /sbin/ipfw add 12990 deny udp from any 20,21 to ${intnet}
желательны. #
#
Гарантия того, что наша система будет работать на боль- /sbin/ipfw add 13000 allow tcp from ${intnet} ↵
шинстве машин. to ${mailserver} 25,110
/sbin/ipfw add 13010 allow tcp from ${mailserver} 25,110 ↵
to ${intnet}
В нашем примере скрипта все компьютеры локальной
#
сети делятся на две условные группы: одна группа при- /sbin/ipfw add 55010 allow tcp from any to any 1024-65534
вилегированная – это те, кому разрешен доступ в Интер- /sbin/ipfw add 55020 allow tcp from any 1024-65534 to any
/sbin/ipfw add 55030 allow tcp from any 1024-65534 to any
нет, используя наиболее употребительные сервисы, та- /sbin/ipfw add 55040 allow tcp from any to any 1024-65534
кие как: /sbin/ipfw add 55050 allow udp from any to any 1024-65534
/sbin/ipfw add 55060 allow udp from any 1024-65534 to any
HTTP – порт 80; /sbin/ipfw add 55070 allow udp from any 1024-65534 to any
HTTPS – порт 443; /sbin/ipfw add 55080 allow udp from any to any 1024-65534
# Deny all
FTP – порты 20, 21 и от 1025 до 65535; /sbin/ipfw add 65534 deny ip from any to any
SMTP-протокол для пересылки почты – порт 25;
POP3-протокол для приема сообщений – порт 110. Создаем и редактируем скрипт rc.firewall.local.inet
для работы с привилегированной группой адресов:
Есть и другая группа, компьютерам из которой разрешен
доступ только к внешнему корпоративному серверу c IP-ад- # vi /etc/ rc.firewall.local.inet
ресом 83.xxx.xxx.2 (только протоколы SMTP и POP3). #!/bin/sh
Мы должны добиться, чтобы можно было изменять при- intnet="192.168.9.0/24"
privgroup={31,32}
вилегированную группу, что называется, «на лету», по воз- #
можности не разрывая установленных соединений. Для это- /sbin/ipfw delete 12310
/sbin/ipfw delete 12320
го мы из нашего скрипта вызываем дополнительный скрипт /sbin/ipfw delete 12330
rc.firewall.local.inet. Достаточно отредактировать и переза- /sbin/ipfw delete 12340
#
пустить этот дополнительный скрипт, не затрагивая всех /sbin/ipfw add 12310 allow tcp from ↵
остальных настроек файервола.
Дополнительно мы должны предусмотреть ситуацию,
когда меняются параметры сети, такие как IP-адрес шлю-
за провайдера. Для этого мы будем использовать в скрипте
локальные переменные. Например, при изменении шлюза
по умолчанию достаточно изменить значение переменной
intgateway и перезапустить скрипт rc.firewall.run.
Вот наш пример скрипта:
# vi rc.firewall.run
#!/bin/sh
extip="83.xxx.xxx.xxx"
intip="192.168.9.2"
intnet="192.168.9.0/24"
mailserver="83.xxx.xxx.2"
intgateway="83.xxx.xxx.1"
#
/sbin/ipfw -f flush &
#
/sbin/ipfw add 180 divert natd ip from ${intnet} ↵
to any out xmit fxp0
/sbin/ipfw add 190 divert natd ip from any to ${extip}
# ICMP
/sbin/ipfw add 500 allow icmp from any to any
# SSH
/sbin/ipfw add 10000 allow tcp from any to any 22
/sbin/ipfw add 10010 allow tcp from any 22 to any
# DNS
/sbin/ipfw add 11000 allow tcp from any to any 53
/sbin/ipfw add 11010 allow tcp from any 53 to any
/sbin/ipfw add 11020 allow udp from any to any 53
/sbin/ipfw add 11030 allow udp from any 53 to any
# Web FTP
/sbin/ipfw add 12000 allow tcp from me to any 20,21,80,443
/sbin/ipfw add 12010 allow tcp from any 20,21,80,443 to me
/sbin/ipfw add 12020 allow udp from me to any 20,21
/sbin/ipfw add 12030 allow udp from any 20,21 to me
#
# Script for the privilege group
/bin/sh /etc/rc.firewall.local.inet
# Deny other computer of LAN
В скрипте для изменения состава привилегирован- Также мы можем вносить изменения и перезапускать
ной группы необходимо отредактировать переменную скрипт rc.firewall.run, хотя, по замыслу, это нам придется
privgroup, добавив/удалив в ней номер хоста в локаль- делать гораздо реже, чем в случае со скриптом привели-
ной подсети. гированной группы.
Например, чтобы добавить два компьютера с IP-ад-
ресами 192.168.9.33 и 192.168.9.45, нужно записать # /bin/sh rc.firewall.run
«privgroup={31-33,45}».
Использовать правила типа «/sbin/ipfw delete NNNNN» Поскольку мы написали свой собственный скрипт, об-
при старте системы, когда такого правила не было – не- нуляющий существующие правила и запускающий альтер-
множко некрасиво. При попытке удалить несуществую- нативную конфигурацию файервола, нужно подумать, как
щее правило система выдает на консоль сообщение сле- его запустить.
дующего вида: Во FreeBSD есть замечательный механизм запуска поль-
зовательских программ: файл rc.local. По умолчанию он от-
ipfw: rule 13031: setsockopt(IP_FW_DEL): Invalid argument
сутствует в системе.
При этом система продолжает нормально работать. Раз мы уже создаем данный файл, добавим в него ко-
Если все делать строго, то нужно создавать два скрипта: манду запуска демона natd, который отвечает за подде-
один запускать при старте, второй – при изменениях на хо- ржку NAT.
ду. Но тогда нужно будет вносить соответствующие изме- Демон natd запускается из файла rc.conf. (Опять этот
нения в оба скрипта. файл, поистине он играет ключевую роль для всей систе-
Поскольку основная цель – создать простую в админис- мы FreeBSD в целом!)
трировании систему, то данной проблемой в нашем случае Механизм запуска этого файла из rc.conf выполняется
можно пренебречь. посредством следующих переменных:
# vi /etc/rc.local
34
администрирование
В поисках анонимного
прокси-сервера
Иван Максимов
Вопрос о безопасном серфинге по Интернету поднимался не раз. При использовании
для этой цели прокси-сервера возникает вопрос, что лучше: искать прокси или создать свой?
Если искать – как быстрее? А если создавать – как проще?
36
администрирование
З
ачастую возникает задача анонимно посетить не-
обходимый ресурс в локальной или глобальной се-
ти. Цели могут быть разные, первое и самое распро-
страненное в работе системного администратора – это тес-
тирование только что настроенной системы авторизации
сервера. Второе – анонимно ответить подозрительному
человеку по электронной почте, через веб-интерфейс сво-
ей почтовой системы. Третье, выполнить просьбу началь-
ства, скрытно посетить сайт конкурирующей фирмы. Чет-
вертое – просто быть уверенным, что, заходя в чат, IRC-ка-
нал или форум, нас не распознают.
Ситуации бывают абсолютно разные, возникают они
не каждый день, но все же бывают. Что тогда делать? Ис-
кать по Интернету прокси-лист? Но чаще всего в нем 90% Веб-интерфейс CGIProxy
недействующих ссылок. Просить друга администратора здание собственного cgi прокси-сервера, проанализиру-
дать доступ по ssh-протоколу, и, воспользовавшись lynx ем плюсы и минусы.
или links из консоли, посетить необходимый ресурс? Вы-
ход есть всегда, но хорошо иметь под рукой необходимые В поисках анонимных прокси
средства для анонимной работы. Задав в форме поиска Google ключевую фразу «proxy list»,
будет выведено «...примерно 45.900.00 для proxy list».
О прокси-серверах Как обработать подобную информацию? Конечно же, столь-
Вопрос о безопасном серфинге по Интернету поднимался ко листов не нужно. У многих есть 5-6 закладок на люби-
не раз. Существует множество методов скрыть свой реаль- мые страницы, где каждый день появляются обновленные
ный IP-адрес. Рассмотрим известную вам тему – как скрыть списки, но выборка и проверка прокси занимает немалое
свой реальный IP-адрес с помощью прокси-сервера. время, попробуем автоматизировать данную задачу стан-
Самое простое решение – это прокси c веб-интерфей- дартными средствами ОС Linux/BSD.
сом (например [1]). Заходим на страницу и в появившем- Независимо от того, есть ли у нас страницы-«фавори-
ся окне вводим необходимый URL. Метод самый простой, ты» с прокси-серверами или нет, нам понадобятся прокси-
не требуюет даже перенастраивать браузер, но очень час- листы, после сбора их необходимо отсортировать, удалить
то подобные сервисы, чтобы существовать, зарабатыва- дубликаты и проверить. Итак, приступим:
ют на рекламе, которую показывают нам. Кроме простоты
использования, данные веб-прокси имеют еще один плюс – #!/bin/bash
# Переменная счетчик
они долговечны. n=1
Но и минусы очевиды: реклама, невысокая скорость, от- echo "Всего ресурсов "`wc -l ./site.list`
while [ 1 ]
сутствие гибкости настроек и смены IP-адреса. Что ж, са- do
мое легкое – не значит самое хорошее. # Текстовым редактором sed построчно читаем файл site.list
# и заносим значение в переменную
В Интернете можно найти сотни списков http-прок- f1=`sed -n ''$n'p' ./sity.list`
си, от простых кэширующих до анонимных с поддержкой # Если переменная пуста, что означает конец файла –
# выходим из цикла
шифрования, антивирусной проверкой и «чистыми» лога- if [ "$f1" = "" ]; then
ми. Последние, как правило, пользуются большой популяр- echo "Список обработан"
exit 1
ностью, но они не бесплатны. Если необходимо, можно ку- fi
пить пару таких прокси, благо цена на обслуживание в ме- # Для наглядности выводим каждый раз номер строки
# и название ресурса
сяц у них колеблется от 1 до 50 долларов, хотя если прок- echo "$n $f1"
си стоит более 20-30 условных единиц – это не более чем # Считываем информацию с ресурса
curl $f1 --user-agent "Mozilla/4.0 (compatible; ↵
попытка его владельца заработать большие деньги. Что ж, MSIE 6.0; Windows NT 5.1)" | ↵
хороший прокси иметь под рукой всегда полезно, но не вся- grep -o "[0-9.]\+[0-9.]\+[0-9.]\+:[0-9]\+" >> ↵
proxy.list
кий готов платить деньги, да и анонимность тоже под воп- # Счетчик увеличивается на 1
росом (неизвестно где этот прокси расположен). let "n += 1"
done
Последний и, на мой взгляд, самый эффективный прок- # Количество прокси-серверов до удаления дубликатов
си – это root shell. Имея под рукой собственный сервер echo "Всего найдено"`wc -l proxy.list`
cat proxy.list | sort | uniq > proxy.list
на Linux/BSD, мы можем делать с ним очень многое: вы- # Количество прокси-серверов после удаления дубликатов
брать саму программу прокси (Squid, oops! и другие), до- echo "После сортировки осталось"`wc -l proxy.list`
бавить антивирус, отрегулировать кэш и выстроить каскад.
При этом все зависит только от нас: обновление антивиру- Рассмотрим скрипт подробнее. В файл site.list мы са-
са и прокси-сервера, настройка цепочки прокси. мостоятельно заносим «любимые» ресурсы с прокси-лис-
Тема настройки шлюзов и прокси-серверов под ОС Linux/ тами (или только что найденные). Например (имена ресур-
BSD очень хорошо освещена в Интернете, поэтому не бу- сов вымышлены):
дем ее касаться. Рассмотрим два первых вопроса: автома-
тизация процесса поиска, выбора, проверки прокси и со- http://www.proxy.com
38
администрирование
ли скрипт будет использоваться не-
сколькими лицами, рекомендуется уб- CGI:IRC (client-perl.cgi, irc.cgi и nph-irc.cgi) и вспо-
рать данные параметры для посетите- Рассказывая о распространенных cgi- могательных каталогов (в них содержатся
лей (опция «$ALLOW_USER_CONFIG») скриптах, нельзя не упомянуть о еще одном картинки, звуки, модули), поэтому, перено-
по соображениям безопасности. Свя- знаменитом скрипте, написанном на Perl – ся скрипт на веб-сервер, будьте вниматель-
зано это с тем, что, если пользова- CGI:IRC [5]. Именно этот скрипт обеспе- ны. Для настройки скрипта отредактируйте
тель отключит опцию «Remove all чивает работу многим известным ресур- файл cgiirc.config (или возьмите его полную
scripts», анонимность серфинга уже сам («шлюзам в IRC»). Последняя доступ- версию cgiirc.config.full, но это не столь не-
будет не гарантирована (о чем нас ная версия на сайте проекта 0.5.9 от 6 ию- обходимо), замечу, что при всем разнооб-
предупреждают на сайте разработчи- ня 2006 года. Этот скрипт, как и CGIProxy, разии опций назначение их понятно с пер-
ков) и второй параметр «Hide referrer является nph-скриптом, поэтому требо- вого взгляда (default_port, default_server
information» скрывает от посещаемо- вания у них примерно одинаковые, за ис- и другие), благодаря чему настройка
го сайта данные, откуда «мы пришли», ключением версии Perl, для cgi:irc необ- не вызывает трудностей. Очень жаль,
если открыть данную опцию, директи- ходима версия 5.0.4 или выше. Програм- что в CGIProxy конфигурационный файл
ва HTTP_REFERER в заголовках чес- ма в отличие от cgi-прокси-сервера состо- также отдельно не вынесен, так было бы
тно выдаст информацию о наших пе- ит не из одного скрипта, а из 3 основных намного удобней.
реходах.
Дополнительно для анонимнос- отключать обработку скриптов (так как вопросов на сайте CGIProxy, вы може-
ти стоит раскомментировать опцию только в этом случае будет гаратиро- те найти список ресурсов, предостав-
«$USER_AGENT», так как она отве- вана анонимность), после посещения ляющих место под сайт с интерпрета-
чает за идентификацию нашей сис- 5-7 ресурсов проверяющие на ано- тором языка Perl.
темы. По умолчанию значение равно: нимность пользователя мне так и не
«Mozilla/4.05 [en] (X11; I; Linux 2.0.34 удалось увидеть свой IP, точные дан- Выводы
i586)», рекомендуется выставить что- ные о ОС и браузере. Проверить «се- Если выбирать между стабильным
то более распространенное и но- бя» на анонимность можно, к примеру, и нестабильным решением, стоит опи-
вое. Примеры браузера FireFox на ОС по ссылке [4]. раться, конечно, на первый вариант
семейства Linux и Internet Explorer Итак, в итоге все же был получен (с личным cgi-прокси), но исключать
на Windows XP были выше, но если хо- стабильный прокси-сервер, легкий вторую возможность (поиска) нельзя.
чется экзотики, можно представить- в установке, простой и гибкий в конфи- Иметь root shell где-нибудь в Европе
ся браузером Camino из MacOS X, за- гурировании. CGIProxy за свою просто- с установленным прокси-сервером, ко-
пись users-agent тогда будет иметь ту и в то же время за богатство возмож- нечно, еще намного удобнее, но такая
вид: «Mozilla/5.0 (Macintosh; U; Intel ностей часто используется на «анони- возможность доступна не всегда. Най-
Mac OS X; en-US; rv:1.8.0.7) Gecko/ майзерах», и если внимательно при- ти простой хостинг, даже без доменно-
20060911 Camino/1.0.3». глядеться на сайт по ссылке [1], мы уви- го имени, SQL и почтовых серверов,
Перечисленных изменений для бе- дим слегка измененный cgiproxy. но с интерпретатором языка Perl на-
зопасного серфинга достаточно. Из- Из минусов можно выделить: про- много проще. CGIProxy можно с легко-
менения в скрипте можно сохранить блемы при работе скрипта с веб-сер- стью закрыть, открыть, иметь в запасе
и хранить его локально, а в необходи- вером IIS от компании Microsoft (на сай- 2-3 штуки или просто хранить как за-
мый момент выгрузить на хост. Мож- те проекта описаны возможные про- пасной вариант, так как у большинства
но использовать CGIProxy и в каска- блемы и их решения) и все же сущес- системных администраторов есть до-
де, но это не очень удобно. твующую затрудненность конфигури- ступ к корпоративным страницам, ко-
Настройка скрипта достаточно рования. Как вы уже, наверное, заме- торые легко можно использовать в тес-
гибкая, множество списков доступа тили, по описанию сложно сориенти- товых целях. В различных ситуациях
к ресурсам и баннерным сетям поз- роваться: «где-то наверху», «в ниж- могут быть различные решения, глав-
воляет при желании достичь макси- ний части скрипта», к сожалению, ког- ное, чтобы всегда был выбор.
мальной производительности. На- да проект был «молодым», скрипт был Удачной работы!
пример, для экономии трафика мож- небольшим, размером 260 Кб (пос-
но включить замену gif-изображе- ледняя stable-версия 2.0.1 от 19 но- 1. http://www.anonymizer.ru – сайт Россий-
ния на пустой пиксель 1*1 (параметр ября 2002 г.), и разобраться в файле ского проекта «Anonymizer.Ru – сте-
$RETURN_EMPTY_GIF). не составляло труда, тогда как разыс- рильно».
Редактировать текст приглашения кать нужные опции, параметры, текс- 2. http://www.checker.freeproxy.ru/checker –
и другие сообщения прокси-сервера, товые поля в файле размером 450 Кб один из Российских Online Prox y
как не трудно догадаться, можно пря- уже сложнее и без использования по- Checker.
мо в скрипте. Блок сообщений нахо- исковых средств текстового редактора 3. http://jmarshall.com/tools/cgiproxy – офи-
дится в нижней части скрипта, поэто- найти необходимые параметры слож- циальный сайт проекта CGIProxy.
му при необходимости локализация но. Возможно, также у кого-то из вас 4. http://prox ydetect.com – проверка
CGIProxy будет очень проста. возникнут затруднения с поиском хос- на анонимность.
Несмотря на то что разработчики тинга, поддерживающего Perl, но обра- 5. http://cgiirc.sourceforge.net – официаль-
предупреждают нас о том, что следует тившись в раздел часто задаваемых ный сайт проекта CGI:IRC.
Александр Емельянов
Ваше предприятие постоянно набирает обороты, а ваш бизнес всецело зависит от потока
электронной почты. Бесплатные сервисы вас не устраивают скоростью и качеством доставки
писем, замучил лавинный поток спама, а на эффективные дорогостоящие решения не всегда
хватает средств. Не спешите расстраиваться, альтернатива есть.
В
век информационных техноло- зуются электронной почтой. Цели и за- Географическое расстояние не име-
гий ни для кого не будет открове- дачи могут быть разные, но основная ет значения. Задержки при передаче
нием тот факт, что большинство причина ее использования – просто- письма обычной почтой и общее вре-
организаций в процессе работы поль- та и скорость передачи информации. мя его доставки никогда не сравнят-
40
администрирование
ся со временем доставки электронно-
го сообщения. Решений для организа-
ции электронного документооборота
с «внешним» миром и внутри компа-
нии существует множество. В их чис-
ле почтовые серверы крупных корпо-
раций, а также всевозможные проек-
ты для сегмента SMB (средний и ма-
лый бизнес). Ну и, наконец, не стоит за-
бывать про огромное количество бес-
платных почтовых сервисов в Интер-
нете. Отбросим гигантов (они способ-
ны сами о себе позаботиться) из рас-
смотрения и направим свой взор на не-
большие компании. Попробуем ра-
зобраться, что могут себе позволить
в этом плане компании среднего клас-
са, а также организации, находящиеся
в стадии становления.
«Здесь все уже давно решено
и прекрасно работает без финансовых
затрат», – скажете вы, кивая в сторо- Рисунок 1. Схема взаимодействия компонентов Office Mail Server
ну Open Source-продуктов, таких как, Ус тановить в лока льной сети ватель локальной сети работает с но-
например, Sendmail. Спорить не ста- почтовый сервер, работающий утбуком, все приходящие для него со-
ну. Но, предположим, что есть сеть под Windows, и настроить его. общения, к примеру, на время коман-
гипотетической организации, работа- Настроить клиентов в локальной дировки придется пересылать на бес-
ющая под управлением ОС Windows, сети для отправки/получения элек- платный почтовый ящик.
и в штате нет ни одного сотрудника, тронных сообщений через этот поч- OMS v. 0.8.10 работает на базе
знающего принципы работы *nix-сис- товый сервер. Windows 2000/XP/2003 Server (более
тем, а уж тем более Sendmail. Конеч- старые версии – на Windows 95/98/Me)
но, это не панацея, и для Windows есть В качестве локального почтово- и содержит в себе POP3- и SMTP-сер-
почтовые серверы, однако все они го сервера будем использовать Office веры, POP3- и SMTP-клиенты, веб-сер-
не бесплатны и требуют тщательно- Mail Server. Он бесплатен, стабилен вер, а также мощный сортировщик,
го подхода для установки и настрой- и невероятно функционален, для его фильтр спама, фильтр IP-адресов кли-
ки. Можно также сослаться на нали- настройки достаточно базовых зна- ентов и планировщик сеансов связи.
чие в Интернете бесплатных почто- ний о принципах работы по протоко- Что касается минимальных требова-
вых серверов, здесь достаточно завес- лам POP3 и SMTP. ний аппаратной части, то для обра-
ти речь о престиже компании, а также Стоимость такого решения не вы- ботки соединений, скажем, 50 пользо-
о качестве доставки через них элект- ходит за пределы 40-50 USD (не считая вателей сети достаточно будет иметь
ронных сообщений, и этот вариант от- ежегодных 20 USD провайдеру за про- машину на Intel Pentium III с тактовой
падет сам собой. Сегодня мы рассмот- дление регистрации доменного имени частотой 500 МГц и запасом опера-
рим недорогой способ организации и и ежемесячных минимальных отчисле- тивной памяти 256 Мб. Объем жест-
настройки почтового домена вашего ний за поддержку домена). кого диска выбирается прямо пропор-
предприятия. Основные плюсы такого подхода: ционально количеству сообщений, ко-
нет необходимости выхода поль- торые будут храниться на самом сер-
Предварительная зователей локальной сети в Ин- вере (к примеру, у меня архив за пол-
подготовка тернет для проверки электронной года использования вырос на 2 Гб).
Задача ясна. Для ее решения нам пот- почты; Распространяется OMS в zip-архиве,
ребуется следующее: не нужно организовывать DMZ скачать его вы можете адресу http://
Зарегистрировать виртуальный и, как следствие, заниматься защи- www.classcom.by/oms.
почтовый домен у интернет-про- той почтового сервера от внешних
вайдера. Пусть наш домен называ- угроз. Схема взаимодействия
ется @company.ru. Свободно ли вы- компонентов
бранное доменное имя, можно за- К недостаткам же можно отнести Механизм работы построенной схе-
ранее проверить с помощью серви- англоязычный интерфейс, отсутствие мы представлен на рис. 1. Сплошны-
са whois на www.nic.ru. поддержки протокола IMAP, а также ми линиями показан поток сообще-
Завести на сервере провайде- отсутствие возможности подключе- ний, прерывистыми – запросы на ус-
ра почтовый ящик. Например, ния к серверу из Интернета, то есть тановление соединения и организа-
company@provider.ru. в случае, когда какой-нибудь пользо- цию транспорта.
42
администрирование
ка. Указанный псевдоним автомати- в защите локальной сети от «заразы», имя пользователя и пароль, при ис-
чески прописывается SMTP-клиентом которая может содержаться в почто- пользовании APOP-аутентифика-
вместо локального адреса пользовате- вом сообщении, так как все сообще- ции пароль отправляется на сер-
ля. Для ввода пароля используйте ла- ния, не предназначенные пользова- вер не открытым текстом, а переда-
тинские символы и цифры. телям вашего домена, но прошедшие ется хэш пароля и случайной стро-
Schedules. В этом меню настраи- спам-фильтр, будут переправлять- ки, но такой метод поддерживают
ваются расписания для запуска POP3- ся в ящик постмастеру. Это, конечно, не все серверы;
и SMTP-клиентов. в идеале, если какой-нибудь из поль- расписание для запуска клиента;
IP filters. Здесь настраиваются зователей вашего почтового домена используемый фильтр спама;
IP-адреса компьютеров или целых не засветился у спамеров, иначе ему используемый сортировщик, рядом
подсетей, которым будет разрешен придется поменять адрес электрон- указывается список адресов поль-
или запрещен доступ к POP3-, SMTP- ной почты. зователей, которым будет достав-
и веб-серверам. По умолчанию настро- SMTP server. Здесь нужно указать лено сообщение, не переправлен-
ены разрешающие фильтры для заре- порт и тайм-аут подключения к SMTP- ное правилами сортировщика, ес-
зервированных IP-адресов, используе- серверу, максимальный допустимый ли не указан ни один адрес, оно пе-
мых в локальных сетях. В нашем слу- размер сообщения, которое может реправляется постмастеру;
чае здесь можно ничего не менять. До- пройти через этот SMTP-сервер, мак- максимально допустимый размер
ступ к серверам запрещается в сек- симальное количество сессий, а так- входящего сообщения, если сооб-
ции BAN внесением IP-адреса ком- же выбрать фильтр IP-адресов, для ко- щение превышает этот размер, ска-
пьютера или целой подсети (для од- торых будет разрешен либо запрещен чивается только заголовок, а те-
ного компьютера используется маска доступ к серверу. Отметив галочкой ло заменяется сообщением OMS,
255.255.255.255). «Enable connections from all IPs, but …», по умолчанию значение равно 0, что
Sorter rules. Сортировщик писем вы тем самым запретите отправку поч- означает отсутствие ограничений;
применяется при настройке POP3-кли- ты для компьютеров, указанных в спис- количество сообщений, после за-
ента OMS. Основное правило его ра- ке BAN выбранного фильтра IP-адре- грузки которых необходимо за-
боты следующее: если поле сообще- сов, позволив получать и отправлять пускать сессию к лиента зано-
ния (например, to или from) содержит почту в рамках локального почтово- во, этот параметр полезно указы-
указанную подстроку, то переправить го домена. вать при наличии некачественно-
это письмо адресату такому-то. Сорти- Список параметров для настрой- го соединения, по умолчанию – 0
ровщиков может быть несколько, так- ки POP3- и веб-серверов одинаков. (все скачивается за одну сессию).
же как и POP3-клиентов, поэтому для Нужно выбрать порт и тайм-аут под-
каждого POP3-клиента можно назна- ключения, максимальное количество Запуск в работу
чить своего сортировщика. сессий, а также необходимый фильтр В конечном итоге мы получили на-
В OMS также имеется возможность IP-адресов. строенный почтовый сервер. Запуск
использовать внешний сортировщик SMTP client. Обеспечивает транс- его в качестве службы произведем ко-
писем. Директорию, в которой он на- порт почты от SMTP-сервера OMS мандой «\oms.exe /install». После это-
ходится, а также дополнительные па- в Интернет. Поэтому здесь необходи- го в корневом каталоге OMS будет со-
раметры можно указать в настройках мо указать имя SMTP-сервера провай- здан файл oms.cfg.dump, который бу-
POP3-клиента. дера, например, smtp.provider.ru, порт дет указывать, какая конфигурация
Spam filters. Процесс настройки и тайм-аут подключения к этому серве- используется для работы.
фильтра сродни настройке правил сор- ру, имя пользователя и пароль для ав- Построенная нами схема доступ-
тировщика: если поле почтового сооб- торизации на сервере, а также распи- на в понимании, проста в настройке
щения содержит указанную подстро- сание, по которому SMTP-клиент бу- и обеспечивает достаточный уровень
ку, то удалить сообщение с сервера, дет запускаться. безопасности (особенно если у про-
не загружая, либо оставить на серве- POP3 client. Таких клиентов в от- вайдера стоит мощный фильтр спа-
ре. Защита входящего почтового тра- личие от SMTP-клиентов может быть ма). Стоит отметить, что это не единс-
фика от спама – это непрерывный про- несколько. твенный способ применения Office Mail
цесс. Здесь нужна особая вниматель- Определяемые параметры: Server. Все зависит от полета фантазии,
ность и скрупулезность, чтобы не на- имя POP3-сервера провайдера; светлой головы и «прямых» рук того,
вредить себе же самому. Потому как порт и тайм-аут подключения; кто собирается его использовать.
может возникнуть ситуация, когда
указанная в поле, например, to: (кому)
подстрока будет содержаться в адре-
се пользователя нашего почтового до-
мена. Нетрудно предположить, что ни
одного сообщения из вне этот пользо-
ватель не получит.
Вообще фильтр спама вкупе с сор-
тировщиком играют серьезную роль
Сергей Супрунов
Мы уже привыкли к «великолепной четвёрке» – Sendmail, Postfix, Exim, qmail – на рынке
открытых серверов электронной почты. Sendmail хоть и занимает первую строчку
«хит-парада», всё же неуклонно теряет свои позиции. Но команда разработчиков, похоже,
не собирается так просто сдаваться...
Зачем нужен «ещё один» Таким образом, на свет появился основополагающую цель не повлия-
Sendmail? Sendmail X, недавно переименованный ла, так что сказанное выше справед-
Основным недостатком «старичка» в MeTA1. В качестве основных требо- ливо и для MeTA1. На данный момент
Sendmail, который сразу же упоминает- ваний к разрабатываемой системе де- он не поддерживает функции моди-
ся, как только речь заходит о сравнении кларируются: фикации сообщений, однако для буду-
различных почтовых серверов, являет- полная поддержка RFC2821 и ряда щих версий такая возможность не ис-
ся его монолитная архитектура. Разме- расширяющих стандартов; ключается.
щение всего функционала в одном дво- надёжность, исключающая потерю О с н о в н о е о тл и ч и е M eTA1 о т
ичном файле, безусловно, тянет за со- сообщений; Sendmail – его модульность. Подоб-
бой целую массу проблем: и не слиш- гибкость, позволяющая заменять но Postfix и Qmail, этот пакет состоит
ком эффективное расходование ресур- различные компоненты системы, из нескольких взаимодействующих
сов; и неустойчивость системы в целом, наращивать функциональность компонентов, каждый из которых ре-
когда ошибка в одном компоненте мо- и т. д. без необходимости перестра- шает свою отдельную задачу и работа-
жет привести к полной неработоспособ- ивать весь пакет; ет с правами своего пользователя.
ности сервера; и сложность разработ- масштабируемость, т.е. способ- Это повышает устойчивость пакета
ки... Также редко кто забывает о «дыря- ность наращивать производитель- к ошибкам в той или иной подсистеме,
вом» прошлом этого пакета, по инерции ность (почти) пропорционально а также поднимает общий уровень бе-
интерполируя это и на настоящее, и да- увеличению вычислительной мощ- зопасности пакета – за счёт разграни-
же на будущее. Ну а сложность настрой- ности оборудования; чения прав доступа взлом одной под-
ки – это вообще притча во языцех, хотя расширяемость; системы не оказывает столь сильно-
типовая настройка Sendmail уже очень удобство сопровождения, выра- го влияния на сервер в целом. При-
давно занимает лишь десяток-другой жающееся в соблюдении опре- чём нужно заметить, что все програм-
простых и, что называется, интуитив- делённых стандартов кодирования, мы, кроме MCP, реализованы с подде-
но понятных строк в mc-файле. что позволит сторонним разработ- ржкой многопоточности.
Можно долго спорить о том, на- чикам без труда разобраться в ис- На рисунке представлена струк-
сколько серьёзны эти недостатки (и не- ходных текстах и при необходимос- турная схема MeTA1. Входящие сооб-
достатки ли это вообще), но понятно ти внести в них те или иные изме- щения обрабатываются программой
одно – «имидж» Sendmail на данный нения; smtps (SMTP-сервер), в задачи кото-
момент не слишком хорош, особен- портируемость, т.е. возможность рой входит приём входящих сообще-
но среди начинающих системных ад- без существенных модификаций ний и их помещение в очередь. Взаи-
министраторов, и как бы разработчи- переносить пакет на различные модействующий с SMTP-сервером, мо-
ки ни старались улучшать этот пакет, программные и аппаратные плат- дуль SMAR (address resolver) выполня-
на него всё равно смотрят искоса. формы. ет «прогон» адресов получателя и от-
Необходимость избавиться от этой правителя по базам access, aliases,
«кармы» ощущают, видимо, и сами А что внутри? mailertable и т. д. В его же юрисдик-
разработчики Sendmail, и в результа- MeTA1 объявлен как агент пере - цию входит и реализация «грейлис-
те они во главе с Клаусом Асманом ре- дачи сообщений (message transfer тинга», о которой чуть подробнее чи-
шили пойти на «реинкарнацию» – со- agent, MTA). Как сказано на домаш- тайте дальше.
здание практически с нуля нового па- ней странице «родительского» про- Очередь представляет собой не-
кета, на новых принципах, учитывая екта (http://www.sendmail.org/sm-X), сколько хранилищ. Содержимое пи-
предыдущий опыт и стремясь испра- Sendmail X нацелен на то, чтобы стать сем, включая информацию заголов-
вить проблемы, присущие нынешним эффективным и безопасным почто- ков, помещается на диск в так назы-
версиям Sendmail. вым шлюзом. Смена названия на эту ваемое хранилище контента (CDB);
44
администрирование
информация конверта входящих сооб-
щений (передаваемая в командах MAIL
и RCPT в процессе SMTP-диалога) по-
падает во входящую очередь, разме-
щаемую в оперативной памяти (IQDB),
и дублируется на диск в так называе-
мое «резервное» хранилище (IBDB).
Управляет очередью программа qmgr
(менеджер очереди).
Если сообщение должно быть пере-
дано удалённому получателю, то дан-
ные его конверта перемещаются в ак-
тивную очередь (AQ), которая периоди-
чески обрабатывается планировщиком
менеджера QMGR. Когда планировщик
принимает решение об отправке дан-
ного сообщения, его содержимое из
CDB вместе с «конвертной» информа- Структура MeTA1
цией передаётся SMTP-клиенту (про-
грамма smtpc). Если отправка завер- Второе заметное изменение – торыми он будет запускаться... Пожа-
шается успешно, информация конвер- формат конфигурационного файла. луй, это понятнее и удобнее в работе,
та передаётся в IBDB для протоколиро- Он стал «Си-подобным» (популярный чем различные «фичи» и «опции» при-
вания, а само сообщение из CDB уда- ныне XML-синтаксис Асмана, видимо, вычного нам mc-файла.
ляется. В случае ошибки сообщение не вдохновил), и в нём для каждой под- Таким же образом задаются на-
(точнее, конверт плюс некоторая слу- системы задаётся своя «подконфигу- стройки для остальных модулей: smtpc,
жебная информация) переносится на рация». Все настройки сосредоточены qmgr, smar... По умолчанию устанавли-
диск в очередь отложенных сообще- в файле /etc/meta1/meta1.conf. В нём вается вполне работоспособная кон-
ний (DEFEDB), и попытки повторной можно задать глобальные парамет- фигурация; подробности по тем или
отправки предпринимаются позже – ры (такие, как имена коммуникацион- иным параметрам вы всегда сможете
как только сообщение «отлежится» ных сокетов для взаимодействия час- найти в README-файле.
в DEFEDB определённое время, плани- тей системы) и секции параметров от- Кстати, MeTA1 позволяет очень
ровщик вновь переносит его в AQ. дельных модулей. Например, так за- просто запустить несколько однотип-
Координацией работы всех моду- даётся конфигурация SMTP-сервера ных модулей с различными парамет-
лей занимается менеджер MCP, кото- по умолчанию: рами, для чего достаточно задать не-
рый, собственно, и превращает всю эту сколько «именованных» секций для со-
россыпь отдельных программ в еди- smtps { ответствующего модуля:
log_level = 11;
ное целое. log { facility=mail; ↵
На данный момент в пакет MeTA1 ident="smtps"; } smtps SERV1 { ... }
CDB_gid = 262; smtps SERV2 { ... }
не включены агенты локальной до- wait_for_server = 4;
ставки (LDA) и submission-агент (MSA). listen_socket { type=inet; ↵ Например, таким образом можно
port = 25; }
Но для построения полнофункциональ- start_action = pass; организовать работу сервера на раз-
ной системы, способной взаимодейс- pass_fd_socket = smtps/smtpsfd; личных портах (в «дефолтном» фай-
user = smxs;
твовать с локальными пользователя- path = "/usr/local/libexec/smtps"; ле конфигурации показан пример за-
ми, необходимый функционал можно arguments = "smtps -f ↵ пуска двух экземпляров сервера –
/etc/meta1/meta1.conf";
обеспечить сторонними программа- } один как MTA на 25-м порту, другой –
ми, совместимыми с Sendmail. Напри- на порту 587).
мер, в качестве LDA вполне можно ис- Здесь задаются параметры прото- Отмечу ещё некоторые новшес-
пользовать procmail (в каталоге contrib колирования работы модуля (первые тва. Например, MeTA1 намного про-
архива исходных текстов MeTA1 мож- два параметра), номер группы для до- ще заставить работать в chroot-окру-
но найти пару патчей для эффективной ступа к CDB, информация о прослу- жении. Хотя если учесть, что с пра-
работы по протоколу LMTP). шиваемом сокете, имя пользователя, вами суперпользователя теперь ра-
Для обработки исходящих сообще- путь к «бинарнику», параметры, с ко- ботает лишь mcp, прослушивающий
ний требуется либо клиент, умеющий
работать непосредственно по прото- Версии MeTA1 ности... В конце 2006 года ветвь 1.0 бы-
колу SMTP, либо сторонняя MSA-про- Sendmail X 0.0.0.0 увидел свет 30 октяб- ла выделена в «отдельное производс-
грамма (например, в этой роли может ря 2005 года. Буква «X», видимо, наме- тво», получив наименование MeTA1. На мо-
работать Sendmail; можно найти и от- кала на то, что этот пакет вполне может мент написания статьи текущей была вер-
дельные программы на эту роль, такие со временем стать версией Sendmail 9 сия 1.0.PreAlpha12.0, вышедшая 11 ноября
как mini_sendmail). или Sendmail 10, в зависимости от готов- 2006 года. Сайт проекта – www.meta1.org.
Лучше один раз попробовать... После этого все тесты должны пройти нормально (у меня
Посмотрим на практике, что же из себя представляет время от времени проскакивала ошибка t-dns-1, но на неё
MeTA1 – на примере версии 1.0.PreAlpha12.0. Очевидно, можно не обращать особого внимания – она лишь гово-
что на данном этапе разработки речь не идёт ни о преком- рит о том, что некоторые DNS-запросы не «уложились»
пилированных пакетах, ни даже о присутствии этой про- в отведённые для них по умолчанию интервалы времени).
граммы в коллекции портов. Так что единственный способ Теперь осталось завершить установку:
«пощупать» это творение Клауса Асмана – сборка из ис-
ходных текстов. $ sudo make install
46
администрирование
По умолчанию все конфигурационные файлы будут со- тественно, всегда можно подправить в конфигурацион-
средоточены в каталоге /etc/meta1. Если вам доводилось ном файле):
работать с Sendmail, то из «старых знакомых» сразу пос-
ле инсталляции вы встретите здесь лишь файл псевдони- $ cd /var/log
$ ls -l mail.*
мов – aliases. Остальное – access, mailertable и т. д. – при не-
-rw-r--r-- 1 root root 2480 2006-11-16 21:13 mail.err
обходимости придётся создавать вручную. Для быстрого -rw-r--r-- 1 root root 6237 2006-11-17 20:30 mail.info
и лёгкого создания хэш-таблиц для этих файлов предус- -rw-r--r-- 1 root root 6237 2006-11-17 20:30 mail.log
-rw-r--r-- 1 root root 3105 2006-11-16 21:13 mail.warn
мотрен Makefile, то есть после внесения изменений доста-
точно лишь выполнить команду make. Одна из наиболее вероятных причин проблем с запус-
Все необходимые для работы каталоги (в частнос- ком (обычно о ней свидетельствуют массовые записи типа
ти, очередь, которая будет размещена по умолчанию «Permission denied») – ошибки в создании учётных записей
в /var/spool/meta1) должны быть созданы автоматически нужных пользователей и групп. Например, это может быть
в процессе инсталляции. Так что уже можно попробовать вызвано неверно установленным UID или отсутствием нуж-
запустить сервер. ного пользователя в «чужой» группе (например, meta1s дол-
Стартовый скрипт размещается по умолчанию в доволь- жен входить помимо своей группы meta1s также и в груп-
но непривычном месте – в /var/spool/meta1, там же, где и оче- пы meta1m и meta1c). Наличие пользователей, кстати гово-
редь. Называется он mcp.sh и принимает в качестве пара- ря, можно проверить с помощью входящего в дистрибутив
метра команды start, stop и restart. Им и воспользуемся: скрипта misc/sm.check.sh:
# cd /var/spool/meta1 $ cd meta1-1.0.PreAlpha12.0/misc
# ./mcp.sh start $ ls -l mail.*
Дмитрий Шурупов
Минувшей осенью российская компания LINUX-ONLINE выпустила обновление к своему
Linux-дистрибутиву Linux XP Desktop – 2006 SR2, напомнив сообществу о своих оригинальных
подходах к Linux-бизнесу.
Идеологический вызов рые им видятся неудобными для мар- speech», UNIX-way и т. п.), разработ-
Linux XP Desktop – тот случай, когда кетинга. В частности, в манифесте за- чикам удалось добиться своего. Бро-
прежде чем приступить к непосредс- является, что для десктопов «UNIX-way сив идеологический вызов сторонни-
твенному описанию дистрибутива мертв, а Windows-way победил», «пов- кам Свободных идей, компания со-
(пусть разработчики Linux XP и не хо- семестная доступность исходных ко- здала конкурентоспособное реше-
тят называть свой продукт «дистрибу- дов непродуктивно умножает число ние на базе GNU/Linux и проприетар-
тивом», а предпочитают позициониро- программ и раздробляет Linux-сооб- ных разработок. Разумеется, со своей
вать его как «готовое решение», я счи- щество» и «в Linux необходима силь- спецификой, своей аудиторией и сво-
таю более чем уместным именно такое ная коммерческая составляющая». ими целями, но от этого проект только
общепринятое определение), предла- Многие, наверное, полагали, что из- выигрывает на фоне множества одно-
гаю разобраться с тем, как смотрят за такой смелой идеологии, способной образных и бесперспективных люби-
на мир свободного и открытого про- довести до состояния гневного кипе- тельских дистрибутивов, продолжаю-
граммного обеспечения авторы проек- ния мозг любого в той или иной мере щих плодиться неразумными темпа-
та. Идеология, которой придерживают- фанатичного члена FOSS-сообщест- ми. А вот насколько получится таким
ся в LINUX-ONLINE, идет вразрез мно- ва, проект вскоре самостоятельно ка- образом приблизиться к «потрясаю-
гим широко принятым в сообществе нет в Лету. По принципу «нечего ру- щим результатам», заявленным в ма-
представлениям о таких ключевых ве- бить сук, на котором сидишь». Одна- нифесте, покажет время. Мы же пос-
щах, как GNU GPL, Linux и Open Source. ко практика (пока?) показывает обрат- мотрим на то, что есть сейчас.
Дебютируя, компания получила много ное: Linux XP Desktop здравствует, раз-
критики в свой адрес, однако от ради- вивается и активно внедряется (при- Общее о дистрибутиве
кальных взглядов не отказалась. чем, что еще удивительнее, не только Linux XP D esk top о с н о в ы в ае тс я
Для того чтобы понять, чем было на территории России). на Fedora Core, что, как гласит над-
вызвано возмущение сообщества, до- В общем, невзирая на предсказу- пись на коробке, гарантирует «полную
статочно бегло ознакомиться с «Мани- емую реакцию со стороны всех, кто совместимость с мировым лидером –
фестом Linux XP Desktop» [1], где ав- убежден в необходимости строгого Red Hat Linux». Хотя и заявлена сов-
торы легко и непринужденно крити- следования распространенным в со- местимость с Fedora Core 4 и 5, вер-
куют привычные аспекты FOSS, кото- обществе принципам («free as in free сии входящего в состав дистрибутива
48
администрирование
программного обеспечения зачастую
соответствуют FC3. Например, в ка-
честве графической среды по умол-
чанию используется не совсем акту-
альная на сегодняшний день версия
GNOME – 2.8.0.
При этом дистрибутив является
коммерческим продуктом и продается
вместе с уникальным серийным номе-
ром. Регистрацию копии рекомендует-
ся проводить следующим после уста-
новки шагом, и это требует наличия до-
ступа в Интернет (хотя и необязатель-
но для машины, на которую ставится
система: операцию можно выполнить
с любого компьютера через сайт раз-
работчиков).
Linux XP распространяется в не-
скольких редакциях: Start Edition (1 ус-
тановочный CD с Linux XP Desktop),
Professional (5 CD, помимо устано-
Стандартный рабочий стол Linux XP Desktop
вочного это «Additional Software»,
«GamePack», «Developer Studio», сложной задачей даже для новичков, поминающий Windows XP, а тщательно
«HomeMedia»), Ultra (2 DVD со множес- и Linux XP это в очередной раз под- стилизованный под привычный поль-
твом дополнительных пакетов из раз- тверждает. зователям продукции Microsoft интер-
личных общедоступных репозитариев Стоит отметить подробные описа- фейс. Выражается это и в стандартной
Fedora Core). ния происходящего на русском (с ре- теме, и в иконках «Компьютер», «До-
Базовый образ Linux XP можно комендациями, что и как делать), со- машний каталог» и «Корзина» на ра-
скачать [2], а коробку с редакцией провождающие каждый шаг установ- бочем столе, и особенно до боли зна-
Professional купить, например, в Линукс- ки, а также полную предрасположен- комой кнопкой «Start» на панели в ниж-
Центре [3] или в магазине ИДДК [4]. ность к русскоязычным пользовате- нем левом углу. Причем меню, вызы-
лям в плане настроек по умолчанию ваемое этим «Пуском», тоже было пе-
Загрузка и установка (что логично). реработано с тем, чтобы вызвать на-
Первая загрузка с установочного ком- именьший конфуз у не подготовлен-
пакт-диска приветствовала меня вов- Система как она есть ного к любым новшествам человека,
се не красочной и дружелюбной за- После перезагрузки, последовавшей впервые запустившего не Windows.
ставкой GRUB, как логично было бы за последним этапом инсталляции, Все иконки и соответствующие эле-
ожидать... А позиционированным система встретила уже более адек- менты не должны вызвать удивления
не самым лучшим образом на экра- ватным GRUB (небольшое смещение у тех, кто привык, что в самом низу
не приглашением «boot:» с фрагмен- видимой части экрана пропадало при обязательно располагается вариант
том белого фона. И, собственно, все – нажатии любой клавиши для вызо- с функцией завершения работы, чуть
как пользоваться какими-либо допол- ва меню, а фон приобрел фирменный выше – последние открытые докумен-
нительными опциями и есть ли они во- оттенок синего). Удивило, что загруз- ты, затем выполнение произвольных
обще, не узнать. Впрочем, не такая ка системы осуществлялась в консоль- команд из консоли, поиск по файлам
уж это и помеха: банальное нажатие ном режиме: следуя идеологии, зало- и так далее.
на <Enter> инициализировало процесс женной в Linux XP, это, по-моему, не- Принцип упрощения и «подведе-
установки. логично: зачем пользователю смотреть ния под привычное» затронул и многие
Стартовавший инсталлятор встре- на такое обилие «странной» информа- другие аспекты системы – собствен-
тил уже дружелюбно, «на уровне». ции? Да, основная часть сообщений но, это и есть «изюминка» дистрибу-
Он представляет собой полностью ру- переведена на русский язык, но во- тива. «Подведения», например, удос-
сифицированную версию Anaconda, первых, не все, а во-вторых, очевидно, тоились и системные апплеты в трее,
которая давно служит верой и прав- целевой аудитории привычнее было бы такие как сетевые подключения и на-
дой дистрибутивам Red Hat и ее про- наблюдать за процессом в графичес- стройка звука, в которых при вызо-
изводным. ком режиме (например, как это сейчас ве конфигурации вызываются утили-
Используется Anaconda или нет, происходит в Ubuntu Linux). ты, внешне полностью напоминаю-
а установка среднестатистической Стартовал gdm, не спросив ни ло- щие аналоги в Windows, но оставаясь
GNU/Linux-системы (особенно если ее гина, ни пароля, и вскоре взору пред- при этом вполне «линуксовыми». Инте-
не классифицируют как «ОС для про- стал... вообще-то, конечно, GNOME, ресный получился гибрид, но главное –
фессионалов») давно перестала быть но своим внешним видом не просто на- достойно функционирующий.
Панель управления
Повод познакомиться с панелью уп-
равления у меня появился быстро:
первый видимый недостаток – это не-
красивые русские шрифты по умолча-
нию, а в памятке пользователю, при-
лагающейся к коробке, сообщалось,
что эта проблема решается обновле-
нием системы. Приложения для работы со звуком в Linux XP
50
администрирование
мимо лучших черт у любого проекта
можно перенять и не самые сильные
его стороны. Просто не надо слишком
увлекаться...
Пакеты для такого обновления
системы берутся с родного сервера
Linux XP, и возможности указать аль-
тернативные репозитарии я не уви-
дел. Хотя в конфигурации yum (/etc/
yum.repos.d/lxp.repo) заданы пути
к зеркалам с обновлениями к Fedora
Core (кстати, версии 3).
Программное обеспечение
Вероятно, следуя своему манифесту
(«... конечному пользователю не нуж-
но несколько десятков «почти работа-
ющих» программ, ему нужна одна, но
работающая на 100% ...»), разработ-
чики постарались оставить в Linux XP
Desktop только самые необходимые
Интернет-ПО в поставке Linux XP
пользователю настольного ПК и са-
мые зрелые на их взгляд программы.
Впрочем, вопрос, насколько карди-
нально это решение отличает их от ав-
торов многих других десктоп-ориенти-
рованных Linux-дистрибутивов, остав-
лю в стороне.
Linux XP Desktop 2006 SR2 базиру-
ется на Linux-ядре 2.6.15 (в этом он со-
ответствует Fedora Core 5). С упомяну-
той средой GNOME 2.8 в минимальную
поставку дистрибутива входят: тради-
ционный системный браузер Nautilus
(2.8.1), 2-панельный файловый менед-
жер GNOME Commander и набор стан-
дартных утилит вроде менеджера ар-
хивов File-roller, калькулятора Gcalctool
и PDF-просмотрщика Gpdf.
Представлены такие мультимедий-
ные приложения, как видеопроигрыва-
тели Totem (стандартный для GNOME,
на базе Xine) и MPayer (вместе с GUI; Установка OpenOffice.org с компакт-диска
интересно, что принцип «одной рабо-
тающей программы» почему-то не был dictionary. Интернет-приложения стан- Инсталляция программ с родных до-
распространен на напрямую конкури- дартны: веб-браузер Mozilla Firefox, полнительных дисков проводится эле-
рующие видеоплейеры), TV-плейер почтовый клиент Evolution, клиент об- ментарно: после того, как CD вставлен
tvtimer, аудиоплейер Rhythmbox, ра- мена сообщениями Gaim, ПО для ви- в привод, необходимо на нем найти
диоплейер GQradio, программа аудио- деоконференций GnomeMeeting, IRC- каталог с нужным пакетом и (как пра-
записи gnome-sound-recorder, проигры- клиент X-Chat, терминальный клиент вило) запустить файл setup.jar. Тогда
ватель аудиодисков gnome-cd. Для ра- Terminal Server Client (GUI-надстрой- появляется меню выбора нужной ло-
боты с графикой есть просмотрщик ка над rdesktop и vncviewer) и p2p-кли- кализации, а последующая установ-
gThumb, утилита для работы с фото- ент aMule. ка заключается в 2-кратном нажатии
камерами gtkam, традиционный ре- Открытый офисный пакет на кнопку «Далее» и опциональной
дактор GIMP. OpenOffice.org я качать не решился возможности добавления «ярлыков».
Из офисного ПО в однодисковой и без проблем установил со второго Из прочих дополнительных про-
версии Linux XP есть лишь редактор CD («Additional Software»). Там нахо- граммных пакетов на дисках выделю
диаграмм Dia. Сюда же можно отнести дится русифицированная вторая вер- драйверы для видеокарт от NVIDIA
словари StarDict и стандартный gnome- сия OOo в сборке от Инфра-Ресурс. и ATI, Crossover (коммерческое ПО
Выводы
Честно говоря, берясь за обзор Linux XP,
я ожидал увидеть менее зрелый про-
дукт, что вкупе с громкими заявлени-
ями производителей ставило под сом-
нение серьезность всего проекта. Од-
нако знакомство с системой показа-
ло, что «не все так плохо в датском ко-
ролевстве». Даже несмотря на то что
про Linux XP относительно мало гово-
рят в кругах нашего Open Source-со-
общества, система определенно име-
ет право на жизнь и перспективы даль-
нейшего развития. А развиваться, без-
условно, есть куда. Потому что хоть
функционирование системы «в общих
чертах» (т.е. на уровне того пользова-
OpenOffice.org в работе тельского подхода, на который авторы
ее ориентировали) и порадовало, не-
для запуска офисных Windows-прило- Похожий момент возник в процес- дочетов в проработке различных ком-
жений в Linux-среде), а для разработ- се установки Linux XP. На одной из пос- понентов определенно хватает. А ес-
чиков – популярную IDE Eclipse, JBoss ледних стадий инсталлятор просит ли сюда добавить и серьезные недо-
и Apache Tomcat. ввести пароль root, а в это самое вре- статки, вызванные этим самым под-
Среди игр на диске «GamePack»: мя справка слева разумно сообщает ходом, и, «до кучи», вечное «совер-
3D-шу тер «Cube» и демо-версия о том, что работать в системе с права- шенству нет предела», то работы еще
«Unreal Tournament 2004», клон «Коло- ми суперпользователя нехорошо. Ре- очень много.
низации» FreeCol, трехмерная страте- комендуется создать дополнительный Linux XP Desktop – это система, со-
гия реального времени «glest», поша- аккаунт, который и сделать основным, зданная на основе спорных принци-
говая стратегия «Battle for Wesnoth», а уже из-под него выполнять необходи- пов и отсутствия преемственности
автосимулятор «TORCS», свобод- мые команды через sudo. Однако, ес- UNIX-way, стремящаяся, вобрав в се-
ный римейк классической «Scorched ли обычно инсталляторы после таких бя многолетний опыт разработок в об-
Earth» – «Scorched 3D». В общем, впол- заявлений следующим шагом предла- ласти ОС от Microsoft (как антипод это-
не добротный набор, где каждый смо- гают создать нового (обычного) поль- му самому UNIX-way), предстать на-
жет найти себе что-нибудь подходя- зователя, тут подобных предложений иболее простым и удобным решени-
щее, если заскучает во время рабо- не поступало. ем для пользователей настольных ПК,
ты в системе. Налицо яркие примеры того, что не желающих знать о внутреннем ус-
вызвало бурную реакцию сообщест- тройстве и подстраивать все под себя
Мелочи ва. Если опытные пользователи вряд на уровне исходного кода. Она вряд
Разработчики Linux XP явно не раз- ли согласятся продолжительное вре- ли придется по душе кому-то из люби-
деляют позиции своих многочислен- мя работать в такой системе, то но- телей GNU/Linux-систем «старой за-
ных коллег из мира Open Source (как, вые могут не понять истинного про- калки», но потому и не предназначе-
впрочем, и многих других «миров»...) исхождения «подводных камней» (са- на для них. Однако насколько хорошо
и, в частности, считают нормальным, мые очевидные – серьезные пробле- ее будут воспринимать начинающие
что пользователь постоянно работа- мы в безопасности), инициированных пользователи Linux, сказать с полной
ет с правами root. Причем вне зависи- «прагматичным подходом» произво- определенностью тоже нельзя.
мости от того, какие полномочия ему дителя. Более глобальные негатив-
действительно необходимы для выпол- ные последствия таковы, что некото- 1. Манифест Linux XP Desktop – http://
нения тех или иных задач. И во вре- рые после подобного «тест-драйва» www.linux-online.ru/about/articles/detail.
мя работы с системой мне довелось с Linux XP, вероятно, не пожелают об- php?ID=897.
неоднократно наблюдать вызванные ращаться к Linux-системам и в даль- 2. Страница для скачивания Linux XP –
этим противоречием нюансы. Напри- нейшем. А это печально и расходится ht tp://w w w.linux- online.ru /desk top /
мер, попытка первой загрузки из ме- даже с долгосрочными целями самих download.php.
ню IRC-клиента X-Chat приводит к вы- авторов проекта. 3. Linux XP Pro в ЛинуксЦентре – http://
воду сообщения о том, что запускать Кроме того, отмечу, что команде www.linuxcenter.ru/goods/1313.html.
данное приложение из-под суперполь- разработчиков не помешает дополни- 4. Linux XP Pro в магазине ИДДК – http://
зователя, цитирую, «глупо». тельная проверка локализации интер- shop.iddk.ru/cdrom/62055.html.
52
администрирование
Сергей Алаев
Многие провайдеры используют BIND в качестве DNS-сервера. Но иногда возникают
проблемы с добавлением зон и записей в них, и это приводит к перезапуску сервера,
что крайне нежелательно из-за возможных ошибок при обработке клиентских DNS-запросов.
Чтобы предотвратить перезапуск DNS-сервера BIND, целесообразно использовать внешние
хранилища (MySQL, OpenLDAP, PostgreSQL и т. д.).
Прелюдия Возможность обновлять содержи- Существует две реализации драй-
Сегодня подробно рассматрим хране- мое зон без перезапуска. веров для хранения зон во внешних
ние зон BIND в PostgreSQL. Этот метод Эко но мия о п еративной памя - хранилищах – DLZ и SDB.
хранения зон позволяет динамически ти (при запуске named считывает DLZ-драйверы не входят в стан-
добавлять зоны и записи в них, а так- все зоны из файлов, при большом дартный набор исходных текстов BIND.
же обновлять содержимое зон. количестве зон и записей в них Они более гибкие в настройке и подде-
В качестве внешнего хранилища это занимает достаточно много рживают широкий набор внешних хра-
можно также использовать MySQL, оперативной памяти и времени). нилищ. Техническую документацию по
OpenLDAP, BerkeleyDB, ODBC, который Более высокое быстродействие настройке DLZ-драйверов вы можете
предоставляет хранить зоны в любой по сравнению с хранением зон найти на http://bind-dlz.sourceforge.net.
СУБД, и т. д. в файлах (результаты тестов мож- SDB-драйверы входят в стандарт-
Основными достоинствами мето- но посмотреть на http://bind-dlz. ный набор исходных текстов BIND и со-
дов хранения являются: sourceforge.net/perf_tests.html). держат инструменты для автоматизи-
54
администрирование
рованной интеграции зон из файлов в базу данных. К недо- Драйвер SDB находится в contrib/sdb/pgsql. Для успеш-
статкам такого способа хранения зон можно отнести под- ной компиляции BIND с поддержкой этого драйвера необ-
держку только master-зон. ходимо включить его исходный код в исходный код серве-
Рассмотрим обе реализации. В Fedora Core Linux есть ра named.
rpm-пакет bind-sdb с поддержкой необходимых драйверов Для компиляции драйвера также будут необходимы биб-
SDB. Сначала рассмотрим метод интеграции с помощью лиотеки и файлы заголовков PostgreSQL, поэтому надо бу-
драйвера SDB. К сожалению, во FreeBSD нет интегриро- дет уточнить в pgsqldb.c их точное месторасположение от-
ванного порта BIND с поддержкой SDB PostgreSQL, поэто- носительно общих путей расположения библиотек и заго-
му устанавливать будем из исходных текстов. ловков(/usr/local/lib, /usr/local/include). Общие пути располо-
жения задаются позже с помощью патча.
Установка PostgreSQL Правим pgsqldb.c:
Итак, приступим.
Собираем PostgreSQL из портов: # mcedit contrib/sdb/pgsql/pgsqldb.c
zone "7.168.192.in-addr.arpa" {
type master;
Установка и настройка BIND database "pgsql bind zone_192_168_7 127.0.0.1 ↵
bind 123456";
на использование SDB-драйвера allow-transfer {
Приступаем к установке BIND. Устанавливаем порты gettext 192.168.7.2;
};
и libiconv из раздела devel общего дерева портов, которые };
необходимы для нормальной компиляции BIND.
Закачиваем и распаковываем исходные тексты: Разрешаем передачу зон для 192.168.7.2, т.к. с этого ад-
реса будем тестировать наш DNS-сервер.
# mkdir /usr/local/src Строка «database “pgsql bind zone_192_168_7 127.0.0.1
# cd /usr/local/src/
# fetch ftp://ftp.isc.org/isc/bind9/9.3.2/bind-9.3.2.tar.gz bind 123456”;» определяет параметры хранения зоны
# cd bind-9.3.2 в PostgreSQL в следующем порядке:
template1=# CREATE USER bind WITH SYSID 100 PASSWORD '123456' # mcedit 192.168.7.rev
NOCREATEDB NOCREATEUSER; $ttl 38400
7.168.192.in-addr.arpa. IN ↵
SOA freebsd.example.net. bsdadmin3.mail.ru (
Cоздадим базу данных для хранения зон: 1161450262
10800
template1=# CREATE DATABASE bind WITH OWNER = bind; 3600
604800
38400 )
7.168.192.in-addr.arpa. IN ↵
Скомпилируем утилиту для автоматического добавле- NS freebsd.example.net.
ния зоны из файла в базу: 1.7.168.192.in-addr.arpa. IN ↵
PTR freebsd.example.net.
2.7.168.192.in-addr.arpa. IN ↵
# cd /usr/local/src/bind-9.3.2/contrib/sdb/pgsql PTR boss.example.net.
# gcc -g `isc-config.sh --cflags isc dns` -c zonetodb.c 3.7.168.192.in-addr.arpa. IN ↵
# gcc -g -o zonetodb zonetodb.o `isc-config.sh ↵ PTR semen.example.net.
--libs isc dns` -lpq 4.7.168.192.in-addr.arpa. IN ↵
# cp zonetodb /usr/local/bin/zonetodb PTR ignat.example.net.
56
администрирование
Настраиваем параметры запуска BIND: secret "3lyE4327kU/qr6C/THQflg==";
};
controls {
# mcedit /etc/rc.conf inet 127.0.0.1 port 953 allow { 127.0.0.1; } ↵
keys { rndc-key; };
named_enable=”YES” };
named_program=”/usr/local/sbin/named” dlz "postgres zone" {
named_chroot_dir=”/var/named” database "postgres 1
named_flags=”-u bind –c /etc/namedb/named.conf” // Определяем параметры подключения к базе данных
{host=192.168.7.1 port=5432 dbname=bind ↵
user=bind password=123456}
Также необходимо настроить приоритеты загрузки, // Определяем запрос для поиска зоны в таблице dns_records.
т.к. по умолчанию во время загрузки системы BIND запус- // Все зоны будут храниться в этой таблице.
// Вместо переменной %zone% во время обработки
кается до PostgreSQL, что приведёт к ошибке, т.к. при запус- // DNS-запроса подставляется название требуемой зоны
ке он будет устанавливать соединения к PostgreSQL. Пра- {select zone from dns_records where zone = '%zone%'}
// Определяем запрос для поиска записи в таблице.
вим стартовый скрипт PostgreSQL: // Данный запрос используется, например, для обработки
// запросов на получение имени по IP-адресу и наоборот.
# mcedit /usr/local/etc/rc.d/010.pgsql.sh // Вместо переменной %record% вставляется название записи
// (DNS имя или IP адрес).
# PROVIDE: postgresql {select ttl, type, mx_priority, case ↵
# REQUIRE: NETWORKING SERVERS when lower(type)='txt' then '\"' || data || '\"' ↵
# KEYWORD: FreeBSD shutdown when lower(type)='soa' then data || ' ' || ↵
# BEFORE: resp_person || ' ' || serial || ' ' || ↵
refresh || ' ' || retry || ' ' || expire || ' ' || ↵
minimum else data end from dns_records where ↵
Данные комментарии используются для определения zone = '%zone%' and host = '%record%'}
{}
порядка запуска стартовых скриптов во время загрузки сис- // Определяем запрос для получения содержимого всей зоны
темы. Рассмотрим назначение данных ключевых слов: {select ttl, type, host, mx_priority, case when ↵
lower(type)='txt' then '\"' || data || '\"' ↵
# PROVIDE: – задает имя сервиса, предоставляемого else data end, resp_person, serial, refresh, ↵
этим файлом. retry, expire, minimum from dns_records ↵
where zone = '%zone%'}
# REQUIRE: – список сервисов, необходимых этому сер- // Формируем запрос для получения адресов клиентов,
вису. Этот файл будет запущен после указанных серви- // которым разрешено получать содержимое зоны
{select zone from xfr_table where zone = '%zone%' ↵
сов. and client = '%client%'}";
# BEFORE: – список сервисов, зависящих от этого сер- };
виса. Этот файл будет запущен до указанных серви-
сов. Обратите внимание, при создании конфигурацион-
# KEYWORD: – FreeBSD или NetBSD. Используется ного файла в настройках DLZ-драйвера очень важен по-
для функций, зависящих от версии *BSD. рядок строк, т.к. сервер считывает SQL-запросы в спе-
циальном порядке и в этом же порядке определяет, ка-
За более подробной информацией обращайтесь к спра- кой SQL-запрос использовать при обработке клиентских
вочному руководству FreeBSD. Запускаем BIND: DNS-запросов.
Создадим базу данных и таблицу для хранения зон:
# /etc/rc.d/named start
# psql –h 192.168.7.1 -d template1 -U pgsql
Тестируем наш сервер с помощью утилиты nslookup
(см. рис. 2). Создаём пользователя bind:
Установка и настройка BIND template1=# CREATE USER bind WITH SYSID 100 PASSWORD '123456'
на использование DLZ-драйвера NOCREATEDB NOCREATEUSER;
Рассмотрим использование драйвера DLZ.
Собираем BIND из портов: Создаём базу данных для хранения зон:
Добавим CNAME-запись:
Добавим MX-записи:
Приступаем к добавлению зон. В качестве примера бу- Разрешим клиенту 192.168.7.2 (с него мы будем тести-
дем использовать те же зоны, что и при описании SDB-драй- ровать сервер) получать содержимое данных зон:
вера.
Рассмотрим зону прямого просмотра. bind =# INSERT INTO xfr_table ↵
VALUES ('example.net', '192.168.7.2');
Добавим SOA-запись: bind =# INSERT INTO xfr_table ↵
VALUES ('7.168.192.in-addr.arpa', '192.168.7.2');
bind =# INSERT INTO dns_records("zone", host, ttl, ↵
"type", data, resp_person, serial, refresh, retry, ↵
expire, minimum) VALUES ('example.net', '@',38400, ↵ Параметры запуска и приоритеты загрузки задаём ана-
'SOA','freebsd.example.net.','bsdadmin3.mail.ru.', ↵ логично первому примеру.
1161450241,10800,3600,604800,38400);
Приступаем к тестированию BIND. Запускаем BIND:
Добавим NS-запись:
# /etc/rc.d/named start
bind =# INSERT INTO dns_records("zone", host, "type", data) ↵
VALUES ('example.net', '@','NS','freebsd.example.net.')
Тестируем наш сервер с помощью утилиты nslookup
Добавим A-записи: (см. рис. 4). На этом всё. Удачи.
58
bugtraq
К
своему юбилею российская ком- ляется агент, устанавливаемый на на контролируемые устройства, ес-
пания «Смарт Лайн Инк» по- каждый контролируемый компьютер. ли теневое копирование невозможно
дошла с новой версией свое- Для удаленного управления агентами в силу заполнения определенного объ-
го основного продукта – программы и DeviceLock-сервером предлагается ема на локальном диске. При возник-
DeviceLock. набор консолей управления, в том чис- новении такой ситуации лишь адми-
Существуя с 1996 года, DeviceLock ле консоль для управления групповы- нистратор может очистить хранилище,
завоевал популярность как за рубе- ми политиками домена Windows, с по- тем самым разрешив дальнейшее ко-
жом, так и в нашей стране и сегодня мощью которых можно осуществлять пирование данных. Можно разрешить
является признанным мировым лиде- наиболее эффективное развертыва- автоматическое удаление старых фай-
ром в области контроля доступа к пе- ние и управление DeviceLock. лов, помещенных в это хранилище.
риферийным устройствам. За 10 лет В DeviceLock 6.0 появился но-
клиентами «Смарт Лайн Инк» стали вый дополнительный компонент – Авторизация носителей
более 50000 компаний, DeviceLock ус- DeviceLock Enterprise Server, исполь- информации
тановлен на более чем 2 миллионах зуемый для централизованного сбо- Теперь о второй новинке программы –
компьютеров. ра и хранения данных теневого копи- авторизации носителей информации.
Основные новые возможности рования. Для его работы необходимо Авторизованные носители формиру-
продукта – значительное расширение наличие сервера MS SQL, на котором ют так называемый белый список ме-
функций аудита по использованию ус- будет храниться собираемая инфор- диа-носителей. Этот список позволя-
тройств и включение в него мощной мация. В большой сети, где имеется ет идентифицировать, к примеру, оп-
системы теневого копирования, а так- мощный SQL-сервер, возможна уста- ределенный CD/DVD-диск на осно-
же новая возможность авторизации не новка нескольких серверов DeviceLock, ве записанных на него данных и раз-
только устройств, но и носителей ин- подключаемых к одному SQL-серве- решить его использование, даже ес-
формации на основе данных, находя- ру. Можно использовать несколько ли сам CD/DVD-привод заблокирован.
щихся на них. SQL-серверов для распределения на- Изменение данных на носителе при-
грузки по сети. водит к изменению его уникального
Для чего нужно теневое В базовой конфигурации DeviceLock идентификатора, и, следовательно,
копирование? предполагается, что данные на локаль- этот носитель уже не будет распоз-
Наличие журнала аудита позволя- ном компьютере получает и кэширует нан как разрешенный (авторизован-
ет администратору отслеживать все локально агент, и с определенной пе- ный). Разрешив пользователю доступ
действия пользователя, в том числе риодичностью копирует их на сервер. к такому носителю, вы предоставляете
и по копированию файлов. Но вот са- После успешного завершения копи- ему возможность чтения данных даже
ми оригинальные файлы пользова- рования локальная копия сохранен- в том случае, если устройства для не-
тель после копирования на носитель, ных данных удаляется. Время выгрузки го недоступны.
будь то FDD, CD/DVD-диск, USB-флеш данных на сервер определяется по ал- Из других изменений можно отме-
или другое устройство, подключа- горитму, в котором учитывается время тить изменение интерфейса – стал бо-
емое к последовательному или па- появления данных для закачки, нагруз- лее удобным. Упростился процесс ус-
раллельному портам, мог уничтожить ка на сеть и на сервер. тановки программы. Впрочем, о воз-
или просто переименовать. Админис- В качестве дополнительного пара- можностях программы собственное
тратор уже не мог проверить, была ли метра предусмотрена установка огра- мнение лучше всего формировать
информация разрешена для копиро- ничения на наполнение раздела, вы- при тестировании продукта. А для это-
вания или нет. При теневом копирова- деляемого под локальное хранение го можно использовать бесплатную
нии все файлы и данные сохраняются данных теневого копирования, в про- 30-дневную пробную версию, доступ-
на SQL-сервере в базе, недоступной центах от свободного места на диске. ную на сайте компании «Смарт Лайн
для пользователя, но администратор В этом случае при достижении пре- Инк»(www.smartline.ru).
может получить к ним доступ и про- дельных цифр копирование данных
анализировать. в этот раздел прекращается. Можно
Ядром системы по-прежнему яв- запретить любое копирование данных
М
ожно ли рассматривать чело- сится к миру, к профессии, к родным, Из чего складывается личность
веческую личность под мик- к самому себе в конце концов. И дела- программиста, да и вообще, можно
роскопом, как ученый рас- ем выводы… Говоря о друзьях и зна- ли наделить личностными характе-
сматривает красные кровяные тель- комых, разве не выделяем мы какие- ристиками представителя профессии?
ца или какую-нибудь инфузорию-ту- то качества в них особо? Например: Мне кажется, представителя такой
фельку? Несолидно как-то, на пер- «У Лены характер не сахар, зато друг профессии можно. А кого взять в ка-
вый взгляд. Но, с другой стороны, раз- она отличный». А целиком и полно- честве предмета исследования, у меня
ве не складывается наше представ- стью принимаем, пожалуй, только са- тоже не вызывает сомнения – постоян-
ление о человеке из фрагментов, ос- мых близких – своих родителей и сво- ного автора нашего журнала, челове-
колков? Мы выясняем, как он отно- их детей. ка, статьи которого вы читаете с удо-
62
человек номера
вольствием. Предлагаю поближе поз- что давали, мне вообще не было нуж- циализированные журналы. Он вы-
накомится с Крисом Касперски! но. А просто так зубрить, чтобы сда- ступает на страницах «Системного
вать, мне не хотелось. Ушел, но на сле- администратора», и настолько удачно,
дующий год родители уговорили снова что наши читатели в конце концов ста-
Почему-то если у Криса берут интер- поступать – мол, нельзя ведь без об- ли требовать на форуме: расскажите
вью, то сразу спрашивают: а как ваше разования остаться. Поступил еще раз, о Касперски! Например, как он пишет?
настоящее имя? Меня этот вопрос ин- но история повторилась. И в третий раз Рассказываем. Вернее, пусть расска-
тересовал меньше всего, но я все-та- поступил, и опять не выдержал. зывает он сам:
ки вежливо поинтересовалась в на- Жалеет ли Крис об отсутствии вы- – Последние месяца три у ме-
чале нашей беседы, не будет ли ему сшего образования? С одной стороны, ня такой темп – один день на статью.
удобнее говорить, если он предста- он понимает: За один день успеваю статью написать,
вится. Мой собеседник так же вежли- – Теоретически хороший институт отредактировать, подготовить картин-
во, но твердо заметил, что те, кому на- дает базу. Пообщавшись с настоящи- ки. Компоную материал для следую-
до, знают его настоящее имя. Я согла- ми гениями, профессионалами, начи- щей статьи, после чего падаю замер-
силась… Ну какая разница, буду на- наешь понимать, чем отличается са- тво на клавиатуру. Утром просыпа-
зывать я его Мишей, Федей или Кри- моучка от того, кого действительно юсь и начинаю быстро строчить вто-
сом? Ведь это не поможет мне понять, научили. рую статью. А еще впереди третья,
какой он человек. Но диплом Крису как-то и не пона- четвертая, пятая, до бесконечности…
А что поможет? Обычно исследо- добился в жизни, не по корочке о нем А вообще я на статью трачу дня два.
вание человеческой души начина- судят работодатели. Да и не в конк- Но если серьезная тема, бывает, не-
ют с детства. Ну тут все как в книж- ретном вузе дело. Проблема в том, деля требуется.
ках про гениев. Очень рано Крис за- что Касперски пато-
интересовался элек троникой, ре- логически не прини-
шил, что будет электронщиком. Па- мает идею зубреж-
ял приемники, ковырялся в них – ин- ки. А во время недол-
тересно было… Встреча с компьюте- гой учебы в Таганро-
ром перевернула все планы. Причем ге у Криса сложилось
произошла она где-то классе в пя- стойкое впечатление,
том. Вундеркинд? Сам Касперски так что вузовские преподаватели главным – А что вам нужно, чтобы написать
не считает: образом требуют продемонстрировать, хорошую статью? Вдохновение?
– Я смотрю, у многих моих знако- сколько у тебя в голове формальных – Не столько вдохновение, сколько
мых дети в шесть лет «прогу» уже уме- знаний из учебника. А кому эти знания материал. Допустим, для «Системного
ют компилировать. Прогресс... Я же на- нужны, зачем, какие ты сделал из них администратора» я писал много статей
чал тогда, когда появились доступные выводы, не важно… по файловым системам: NTFS, ext2/3fs,
компьютеры. Мой первый компьютер – – Почему я в первый раз ушел? USF. Сначала их исследовал, а потом
«Правец 8D» был совершенно несов- Потому что был такой преподава- обобщал в виде статьи. Обычно статье
местим ни с «синклерами», ни с «бэ- тель, который программы типа «При- предшествует исследование. Мне нра-
кашками», имевшими хождение в на- вет, как тебя зовут?» писал, постоян- вится писать о том, в чем я разбира-
роде, и кучей программного обеспе- но сверяясь с конспектом. Все гадали, юсь, тут я могу принести людям поль-
чения. У меня же не было ничего, кро- что с ним будет, если конспект отоб- зу. Но иногда приходится рассказывать
ме платы с несколькими микросхема- рать. Он спрашивал у меня: когда об- о том, с чем я не работал. И я вникаю,
ми, и, чтобы вдохнуть в них жизнь, тре- разовалась фирма IBM, когда родил- собираю материал, обобщаю, прове-
бовалось научиться программировать, ся Билл Гейтс? Я отвечал: «Не пом- ряю, откидываю ошибки, заблуждения
это затянуло неожиданно. ню». А он: «Это надо знать!» И ставил других авторов. Типа реферата полу-
Однако после школы Крис пошел не «пять», а «три». Не нравится – иди чается... Я так писать не люблю, если
учиться на радиофизика. Высшее об- в деканат. Но это означало, что надо не могу исследовать тему. Допустим,
разование – яркая страница его био- ругаться постоянно… если речь идет о серверах, которых
графии. Успешно поступив в Таганрог- Можно поспорить, начать горячо у меня нет. Любимые темы – дисассем-
ский радиотехнический институт и про- доказывать, что не все профессора та- блирование, отладка, защита, взлом.
учившись там три месяца, Крис понял, кие, что стереотип – страшная штука… Это мое. Я этим занимаюсь и могу эту
что он и вуз – вещи несовместимые: Но, согласитесь, и Криса понять мож- тему развить, потому что сам не раз
– Я человек неорганизованный, но. Бог с ним, с высшим образовани- это делал. Имею опыт.
а там много обязаловки. Допустим, ем. Самородок… – Самая интересная для вас тема –
математика мне дается с трудом. Мне безопасность?
бы посидеть над какой-то темой неде- – Грубо говоря, хакерство. Мне инте-
льку, я бы понял. Но нет, нужно идти Сегодня Крис Касперски – автор двух ресно заглянуть «под капот» програм-
вместе со всеми… И мне оставалось десятков книг, переведенных на инос- мы, защиты. Тут нетривиальное мыш-
только зубрить. Я понял, что с таким транные языки. Его постоянно пригла- ление требуется.
темпом совладать не смогу. А многое, шают посотрудничать различные спе- – Вас привлекает тайна?
64
человек номера
взрослым. Одно из его увлечений – ас-
трономия. Есть телескоп, не слишком
мощный, но позволяет находить звез-
ды, туманности, вычитанные в катало-
гах. Когда видишь далекое скопление
звезд не на фотографии в Интернете,
а живьем, – дух захватывает.
– Понимаешь, какие мы маленькие,
наши проблемы тоже и какой космос
большой.
– Новую звезду не открыли? – спра-
шиваю.
– Нет. Научных задач я себе не став-
лю.
Еще Крис любит фотографировать:
листья, пейзажи, речки, капли росы
на дереве. Охотится за туманами:
– Мы на холме живем, спускаешься,
а там низина, такие туманы классные.
Недавно Касперски купил себе
пленочный Canon. Новый аппарат ра-
дует, если бы не одно «но»: Некомпьютерные увлечения Криса – астрономия и фотография
– Что меня бесит – вспышку в руч-
ном режиме нельзя принудительно не было. Высокое начальство не по- довести до ума. Конкурирующий с ним
включить. Она сама включается, ес- няло, зачем операционной системе FireFox, задавшийся целью «догнать
ли считает, что это необходимо. Когда нужен драйвер звуковой карты, если и перегнать», содержит ошибок чуть
снимаю человека против света и ис- этой карты нет вообще. Это же крей- меньше, но все равно остается небе-
пользую вспышку, получается очень сер, а не в игрушка типа DOOM со зву- зопасным. А вот Opera или Lynx нико-
хороший мягкий снимок. А, допустим, ками. Поэтому они отказались от услуг го перегнать не стремятся. Предель-
когда снимаю один лист против неба, Microsoft. Теперь Microsoft хочет окку- но вылизанный код, минимум ошибок,
вспышка не включится, как я ни ста- пировать атомные реакторы и вооб- максимум функциональности. И, что
раюсь. Ручной режим есть, но не все ще энергосистемы. А если ее поста- самое забавное, Opera служит источ-
функции в нем доступны. вят там, это означает, что толковый ха- ником вдохновения для своих же собс-
А вы хотите, чтобы человек, для ко- кер сможет отключить электростанцию твенных конкурентов, самые главные
торого свобода – жизненный принцип, (хотя бы ради забавы). Это катастро- «вкусности» IE и FireFox позаимство-
подчинился фотоаппарату? фа! Медицинские, остальные учреж- ваны именно оттуда.
дения будут без света. Очень опасно. – А что же все-таки делать бедному
В медицину проникает Windows. Мож- пользователю?
Беседуя с человеком, который «соба- но наблюдать в супермаркете: стоит – Есть системы резервирования
ку съел» на теме безопасности, греш- касса, управляемая программой, на- данных, DVD, стриммеры и другие но-
но не спросить у него: писанной на Delphi, и «вращающая- сители. Главное – не лениться и не хра-
– Как вы считаете, каким будет ся» под Windows. Периодически вис- нить критически важную информацию
дальнейшее развитие систем IT-бе- нет, сразу очередь собирается боль- в единственном экземпляре. Поль-
зопасности? шая. Магазину реальные убытки. зователь должен быть грамотным.
– Microsoft хочет, чтобы их програм- – Как быть? Windows – очень небезопасная вещь.
мное обеспечение поставили на атом- – Есть куча других систем, которые Многие с этим сталкиваются, когда
ный реактор. Это будет начало конца. очень просты и поэтому не «падают». теряют данные. Хакерская атака или
Они уже пытались внедриться к воен- Чем система проще, тем легче грамот- случайный сбой системы многим сто-
ным. Однажды был такой случай, ког- но спроектировать и протестировать. ил потери бизнеса.
да то ли на крейсер, то ли на авиано- Microsoft же гонится за сверхприбылью, Одиночка, романтик, хакер или ры-
сец, где стояла NT, приехало высокое Люди, принимающие решения о внед- царь на белом коне, защищающий нас
начальство посмотреть, как все это хо- рении того или иного продукта, думают от каверз виртуального мира, – какая
рошо работает. И NT вдруг упала, крей- только о том, чтобы заработать деньги. разница? Личность, интересная тем, кто
сер на время перезагрузки был неко- Поэтому мы имеем такую неприятную смеет быть свободным. Вот потому мы
торое время полностью безоружен – ситуацию. Взять хотя бы проблему ви- с удовольствием читаем статьи Криса
слеп, глух и нем. И снова сбой! Дол- русов. Сколько пользователей от них Касперски. Приятного чтения!
го разбирались, оказалось, виноват страдает! Потому что используют ды-
драйвер звуковой карты. И при этом рявый IE, который Microsoft в погоне Оксана Родионова,
самой звуковой карты у крейсера за новыми функциями никак не может фото из архива Криса Касперски
Сергей Яремчук
Сегодня организации включают использование веб-приложений в деловую стратегию,
понимая, что только Интернет дает возможность клиентам из разных точек мира получать
постоянный доступ к информации в любое время суток. Очень важно, чтобы веб-сервер
был всегда работоспособен и доступен вне зависимости от нагрузки.
С
давая веб-сервер в эксплуата- вера, можно оценить, только создав и программные средства и оценить
цию, следует быть уверенным, условия, приближенные к реальным. их поведение под нагрузкой. В этой
что он выдержит планируемую Можно, конечно, рискнуть, запустив ситуации на помощь приходят специ-
нагрузку. Неправильную настрой- сервис в работу, но репутацию, а зна- альные инструменты, которые иде-
ку приложений, участвующих в со- чит, и клиентов потерять легко, а вос- ально было бы использовать, перед
здании веб-контента, недостаточную становить гораздо сложнее. Чтобы из- тем как сайт будет сделан доступным
мощность системы и остальные фак- бежать этого, необходимо первона- в Интернете. Они смогут дать качест-
торы, влияющие на работу веб-сер- чально проверить свои технические венно-количественную оценку работы
66
web
веб-узла в целом и отдельных компо-
нентов. Результатом может быть мак-
симальное число пользователей, кото-
рые могут одновременно получить до-
ступ к веб-узлу, число запросов обра-
батываемых приложением или время
ответа сервера. Основываясь на ре-
зультате, веб-мастер (да, и сетевой
администратор, ведь в работе серве-
ра участвуют и другие компоненты се-
ти, маршрутизаторы, межсетевой эк-
ран, кэширующий и прокси-сервер, ба-
за данных и пр.) смогут заранее вы-
явить узкие места, возникающие из-
за несбалансированной работы ком-
понентов, и исправить ситуацию, пе-
ред тем как включать систему в пол-
ноценную работу.
Построение плана
тестирования
Любая работа требует предваритель- Рисунок 1. Выбор типа теста в WAPT
ной подготовки. При неправильно
сформулированной задаче могут полу-
читься результаты, которые, возможно,
не полностью будут отражать реаль-
ное положение дел. Исходя из пред-
полагаемой нагрузки веб-сервера не-
обходимо определить критерии испы-
тания, что будет считаться как успех,
а что как неприемлемая работа (вре-
мя ответа, загрузка сервера).
Различают три варианта тестиро-
вания:
Нагрузочное (Load-testing) – оп-
ределяется работоспособность
системы при некоторой строго за-
данной (планируемой, рабочей) на-
грузке.
Тест на устойчивость (Stress) –
применяется для проверки пара-
метров системы в анормальных
и экстремальных условиях, во вре- Рисунок 2. Создание профиля будущего теста
мя тестирования производится по- Во время тестирования имити- сколько посетителей планируется
пытка нарушить работу системы. руется одновременная работа не- принимать в среднем, в пиковой на-
Позволяет определить минималь- скольких сотен или тысяч посетите- грузке, время пиковой нагрузки;
но необходимые величины систем- лей. Для большей правдивости каж- могут ли несколько пользовате-
ных ресурсов для работы приложе- дый из пользователей может «ходить» лей иметь один и тот же IP-адрес
ния, оценить предельные возмож- по сайту по индивидуальному сцена- и/или логин/пароль;
ности системы и факторы, ограни- рию и параметрам. Также в процес- среднее количество страниц, про-
чивающие эти возможности. Так- се тестирования можно имитировать сматриваемых одним пользовате-
же определяется способность сис- кратковременные пики нагрузки, ког- лем, есть ли различия в поведе-
темы к сохранению целостности да количество посетителей скачкооб- нии между зарегистрированны-
данных в аварийных ситуациях. разно увеличивается, что очень акту- ми и анонимными пользователя-
Те с т п р о и з в о д и т е л ь н о с т и ально для сайтов с неравномерным ми, количественно соотношение
(Performance) – комплексная про- размером аудитории (например, но- между такими пользователями,
верка, включающая предыдущие востных ресурсов). наиболее посещаемые страницы
две, предназначенная для оценки Чтобы полноценно провести тести- и время нахождения пользовате-
всех показателей системы. рование, необходимо знать: ля на узле;
WAPT 4.0
Одна из самых простых в использова-
нии и в то же время функциональных
программ обзора. Для проведения про-
стого теста даже не потребовалось за-
Рисунок 4. Окно Script Modeler глядывать в документацию, интерфейс
прост и понятен, хотя и не локализо-
наличие динамических страниц доступная пропускная способность ван. Как вариант можно использовать
и страниц, изменяемых в течение канала, средний его расход на од- командную строку. Работает под уп-
определенного периода, и как час- ного пользователя; равлением MS Windows 98/Me/2000/
то это происходит; может ли работа нескольких поль- XP/2003. WAPT позволяет испытать
задействуется ли электронная поч- зователей вызывать коллизию (на- устойчивость веб-сайта и других при-
та, например для подтверждения пример, торги); ложений, использующих веб-интер-
полномочий пользователя; используется ли защищенное фейс, к реальным нагрузкам. Разра-
какая еще дополнительная инфор- HTTPS (SSL / TLS) -соединение, батывается новосибирской компани-
мация используется для проверки в каких случаях; ей SoftLogica LLC. Для проверки WAPT
статуса пользователя (cookies); используются ли Java-аплеты, пото- может создавать множество виртуаль-
требуется ли подтверждение пол- ковое медиа, специальные плаги- ных пользователей в одном сценарии,
номочий пользователя сторонней ны, что требуется с клиентской сто- каждый из них может иметь индиви-
организацией или удаленным сер- роны для их поддержки (JavaScript, дуальный IP-адрес, идентификацион-
вером (например, номер кредитной VBScript, ActiveX); ные параметры, скорость соединения.
карты) и будет ли представлена ин- используется ли кэширование Поддерживаются Windows (NTLM), ба-
формация для тестирования; страниц; зовая аутентификация и постоянные
68
web
и сессионные (persistent и session)
cookies. Сценарий позволяет изменять
задержки между запросами и динами-
чески генерировать некоторые испы-
тательные параметры, максимально
имитируя, таким образом, поведение
реальных пользователей. В запрос мо-
гут быть подставлены различные вари-
анты http-заголовка, в настроках воз-
можно указать кодировку страниц. Па-
раметры (как статические, так и маска)
User-Agent, X-Forwarded-For, IP address,
указываются в настройках сценария.
Значения параметров запроса могут
быть рассчитаны несколькими спосо-
бами, в том числе определены отве-
том сервера на предыдущий запрос,
в том числе используя некоторые ло-
кальные переменные и функции. Сце-
нарий поведения каждого виртуально- Рисунок 5. Результаты теста OpenSTA
го пользователя включает три регули-
руемых стадии: начальную (Initial), ос- пенчатое увеличение с указанием ми- рого можно тут же проверить, нажав
новную (Mail) и заключительную (Final). нимального и максимального числа «Go». Одновременно последует запрос
Поддерживается работа по защищен- и временного интервала, выставить на запуск Recorder, который будет от-
ному протоколу HTTPS (SSL/TLS) таймер проведения теста. На следую- слеживать посещенные страницы и за-
(версии SSL 2.0/3.0) и все типы прок- щем шаге выставляется время между писывать URL (они будут выводиться
си-серверов (HTTP, HTTPS, SOCKS4, кликами (think time), скорость соедине- в панели слева). И когда вся инфор-
SOCKS5). Созданные сценарии, сохра- ния, указать диапазон IP-адресов (IP мация собрана, нажимаем «Run Test».
няемые в файле XML-формата, можно Spoofing), который будет использован Подробные отчеты в форме графи-
использовать повторно. Кроме стан- виртуальными пользователями. Нажа- ка выводятся по ходу проведения тес-
дартных Performance и Stress, в спис- тие на «IP Adress List» позволит соста- та, по окончании будет сформирова-
ке присутствуют: вить список таких адресов. Также вы- на и html-страница. В результате мож-
Smoke – краткий тест, предназна- ставляется http-параметр User-Agent но получить информацию по време-
ченный для определения готов- и включается эмуляция прокси. Если ни ответа сервера с возрастанием на-
ности приложения к работе вооб- требуется, чтобы виртуальные поль- грузки, количеству переданных и при-
ще, например, есть ли смысл тес- зователи имели индивидуальные на- нятых байт, как в общем, так и в рас-
тировать дальше, если сервер ду- стройки на следующем шаге масте- чете на одного пользователя, количес-
мает минуту. ра, для каждого необходимо создать тве ошибок.
Capacity – тест для определения свой профиль, нажав «New» или за-
максимального количества посе- грузив сохраненный. В последующем
тителей; окне программы необходимо будет вы-
Endurance – тестирование под ставить параметры в каждом из таких
средней нагрузкой, в течение дол- профилей.
гого периода времени. После нажатия на кнопку «Готово»
сценарий сохраняется. Это мы подго-
Для проведения простого тес- товили параметры теста. Для указа-
та после установки WAPT и настрой- ния объекта тестирования необходи-
ки основных параметров с помощью мо создать профиль «New → Profile»
Setting Wizard (настройка прокси, вер- и заполнить все параметры на обеих
сий HTTP и SSL, времени ответа, ис- вкладках (см. рис.2). Здесь же опять,
пользуемых по умолчанию). Необхо- только уже индивидуально, доступны
димо выбрать «New → Scenario», в ре- для редактирования некоторые пара-
зультате запустится мастер созда- метры, задаваемые раннее с помощью
ния теста. На его первом шаге указы- мастера. Также указывается загрузка
вается тип теста (см. рис. 1) и далее рисунков виртуальным пользователем,
в каждом окне заполняем парамет- параметры аутентификации, исполь-
ры будущего теста. Здесь можно ука- зование Cookies и другие.
зать фиксированное количество вир- На вкладке «Recorder» указыва- Рисунок 6. Создание сценария
туальных пользователей, либо сту- ем адрес сайта, доступность кото- тестирования
70
web
вера, код ответа, размер, виртуальный
пользователь или адрес, URL) позво-
ляет отобрать необходимые резуль-
таты. Возможен экспорт результата
в CSV-файл (например, для последую-
щей обработки в Excel). OpenSTA мощ-
ный инструмент, обладающий всеми
необходимыми функциями, но требую-
щий некоторой подготовки как самого
тестирующего, так и дополнительных
временных затрат при проведении кон-
кретного теста. К тому же возможнос-
ти по выводу отчетов его несколько
ограничены. В Интернете можно най-
ти скрипты и плагины [1, 2], помога-
ющие при анализе информации. На-
пример, BView, доступный на домаш-
нем сайте проекта, помогает отлажи-
вать сценарии.
Сводная таблица
Microsoft Web Application
WAPT 4.0 OpenSTA 1.4.3 Apache JMeter 2.2 NeoLoad 2.0.3
Stress Tool
http://www.loadtestingtool.com http://www.opensta.org, http://support.microsoft.com/ http://jakarta.apache.org/ http://www.neotys.com
Сайт
http://opensta.sf.net kb/231282/en-us jmeter
Windows 98/Me/2000/XP/2003 Windows NT 4.0SP5/ Windows UNIX (Solaris, Linux и Windows NT/2000/XP,
Тип поддержи- 2000/XP пр.), Windows 98/NT/ Linux, Solaris SPARC
ваемой ОС 2000/XP, OpenVMS (7+)
Alpha 7.3+
Коммерческая, 350 $ GNU GPL Freeware Apache License Коммерческая,
Вид лицензии
от 776 €
Понятный интерфейс, не- Доступность исход- Простой мастер создания Кроссплатформен- Кроссплатформен-
сколько видов тестов, дина- ных текстов, исполь- тестов, работа с cookies, ность, тестирование ность, тестирование
мическая подстановка па- зование во время тес- регулировка нагрузки ftp, баз данных, отде- отдельных компонен-
раметров теста, индивиду- та нескольких прок- по разным URL, бесплатно льных компонентов, за- тов, работа с вирту-
альные настройки теста, си, удобный редак- грузка файлов на сер- альными пользовате-
IP Spoofing, мониторинг ре- тор скриптов, авто- вер, распределенные лями, удачные отче-
Достоинства
зультата в реальном вре- матическая рабо- тесты ты, наличие плагинов
мени та с cookies, возмож- расширяющих функ-
ность распределенно- циональность, обра-
го тестирования ботка ответа серве-
ра, сравнение резуль-
татов
Нельзя сравнить результаты Необходимо время Неудобно рассчитывать Требуется некоторое Высокая стоимость
разных тестов на освоение и подго- число виртуальных поль- время на освоение,
товку теста, отчеты зователей, невозможность нет IP Spoofing, пот-
Недостатки несколько не удобны, индивидуальной настрой- ребляет большое коли-
нет IP Spoofing ки виртуальных пользова- чество системных ре-
телей, очень простой от- сурсов
чет, нет IP Spoofing
72
web
ет работу с зашифрованным протоко-
лом HTTPS (SSL/TLS), работу с HTTP
и HTTPS прокси, basic веб-аутентифи-
кацию и cookies. Работает с Windows
NTLM-аутентификацией, автоматичес-
ки определяя во время записи сцена-
рия и затем проигрывает во время тес-
та. Для работы с различными профи-
лями для регистрации пользователей
могут быть использованы перемен-
ные. При проведении теста можно за-
действовать дополнительные мони-
торы, использующие SNMP, WebLogic,
WebSphere, RSTAT и Windows, Linux,
Solaris, с помощью которых можно кон-
тролировать загрузку системы (про-
цессора, памяти).
Позволяет проводить распреде-
ленные тесты. Один из компьютеров
является контролером, на остальные
устанавливаются генераторы нагруз- Рисунок 11. Вывод результата теста в NeoLoad
ки (loadGenerator). Контролер распре-
деляет нагрузку между loadGenerator няются отдельно. Для получения ре- раметру. Проект затем можно сохра-
и собирает статистику. зультата требуется пройти три шага: нить для повторного использования.
Очень удобно реализована рабо- Design – настройка проекта, здесь
та с виртуальными пользователями. три вкладки. В «Repository» указы- Вывод
Пользователи имеют индивидуаль- ваются веб-страницы и парамет- Тесты, как правило, проводятся не один
ные настройки, затем они объединя- ры запросов, в «Virtual User» созда- раз, и после устранения недостатков
ются в Populations (должна быть со- ются виртуальные пользователи хотелось бы сравнить результат с пре-
здана как минимум одна Populations), и указывается, какие из веб-стра- дыдущим. К сожалению, среди пред-
в Populations можно задать общее по- ниц они должны посетить, и усло- ставленных продуктов такая возмож-
ведение (например, 40% пользова- вия, которые выбираются в левой ность есть только у NeoLoad. Еще один
телей популяции посещают динами- вкладке в «Actions», проверяется подобный инструмент Web Performance
ческие ресурсы, 20% читают ново- доступ пользователя к выбранным Suite [3], также позволяет сравнить ре-
сти). Виртуальные пользователи мо- страницам. В «Populations» – зада- зультаты тестов, в обзор не попал по-
гут иметь индивидуальный IP-адрес, ния каждой из групп пользовате- тому, что не удалось провести полно-
полосу и использовать свой сцена- лей. В «Actions» могут быть выбра- ценный тест (вероятно, из-за ограниче-
рий теста. ны следующие действия: ний trial-версии). Также следует обра-
Сценарий будущего теста создать Delay (установка задержки); тить внимание на LoadRuner, 10-днев-
очень просто. Запускаем приложе- Loop (повтор запроса); ную тестовую версию которого раз-
ние (при первом запуске потребует- While (цикл); мером в 300 Мб можно скачать с сай-
ся ввести регистрационный ключ, 30- If...Then...Else (условие); та проекта [4]. Используя утилиты на-
дневная версия после регистрации бу- Container и Random Container грузочного тестирования, вы сможете
дет отправлена по почте), выбираем (групповые действия); получить информацию о работе веб-
«New Project», вводим название про- Try...Catch (обработка ошибок); сервиса и, приняв необходимые меры
екта. После этого будет показана не- Stop virtual user (остановка вир- по устранению выявленных недостат-
большая подсказка по поводу даль- туального пользователя). ков, гарантировать требуемую произ-
нейших действий (см. рис. 10), нажа- Runtime – указываются парамет- водительность.
тие «Start Recording» запустит веб-бра- ры теста, проводится тест. Здесь
узер, все перемещения с его помощью же в отдельных вкладках по ходу 1. Скрипты к OpenSTA – http://www.
будут записаны. По окончанию нажи- проведения теста выводится ста- trickytools.com/php/opensta.php.
маем «Stop Recording» или закрываем тистика. 2. Д о к у м е н т « A n a l y z i n g O p e n S TA
браузер. Запускается мастер, который Results – отвечает за вывод раз- Performance Results» – http://www.goldb.
поможет создать виртуальных пользо- личной статистики (см. рис. 11) org/docs/opensta_log_analysis.pdf.
вателей и произведет автоматический в виде таблиц и графиков. 3. Сайт проекта Web Performance Suite –
поиск динамических параметров в за- http://www.webperformanceinc.com.
писанных страницах, выставит сред- Причем, кроме общих значений, 4. Сайт проекта LoadRuner – http://www.
нее значение thinktime. Компоненты можно, используя систему фильтров, mercury.com/us/products/performance-
страницы (HTML, images, CSS) сохра- отобрать информацию по любому па- center/loadrunner.
Крис Касперски
Для охраны веб-контента можно использовать одну из многих защитных систем, имеющихся
на рынке (но большинство из них давно поломано), или попытаться смастерить что-то свое,
переоткрывая колесо и наступая на грабли, сопутствующие с подводными рифами. Как надо
и как не надо защищать веб-контент от гнусных посягательств?
Защищать посетителю, а с другой – очень силь- лы, способной это предотвратить. Ес-
или не защищать но не хотим, чтобы он получил эту ин- ли вы хотите чем-то поделиться с ми-
Специфика защиты веб-контента формацию в любом виде, пригодном ром – делитесь! Одна искорка не сде-
(под которым мы будем понимать всю для дальнейшего осмысления и обра- лает мир теплее или светлее, но… си-
совокупность текстового и графичес- ботки. Как говорится, что в Сеть по- деть в кромешной темноте и ничего
кого содержимого вместе с особен- пало, то пропало. В этом и есть сущ- не делать – еще глупее.
ностями оформления) антагонистич- ность Сети. Любая полезная инфор- Но это все была лирика, которой
на по своей природе. С одной стороны, мация мгновенно распространяется по сыт не будешь. А у кого-то уже жена,
мы стремимся передать информацию сотням тысяч узлов, и в мире нет си- и дети растут. Все это хозяйство требу-
74
web
ет денег, и, чтобы их заработать, приходится охранять свой
креатив от желающих обогатиться за чужой счет. Но всег-
да ли нужно защищаться? Например, сайтам, ненавязчиво
рекламирующим бытовую и офисную технику (фотоаппара-
ты, мобильные телефоны) и живущим преимущество за счет
спонсоров и рекламы, защита идет только во вред. Если кто-
то хочет скопировать рекламную статью, описание или до-
кументацию на новый смартфон – пусть копирует! Он ведь
не зря копирует, а с расчетом где-то разместить! Пусть да-
же на своем сайте, в журнале, книжке. Чем больше людей
узнают о товаре, тем круче взметнется кривая продаж!
Тем не менее существует большая группа людей, счи-
тающих, что любое несанкционированное копирование ин-
формации – это прямая упущенная выгода и без защиты
сайт оставлять нельзя. Посетителям демонстрируются фо-
тографии или электронные тексты, но за возможность со-
хранить их на диск/распечатать/вставить в свой реферат
необходимо заплатить. А платить, естественно, никто не хо- Рисунок 1. Дизайн сайта – единственное, что нельзя защитить
чет (или хочет, но не может ввиду неразвитости систем оп-
латы). Вот и приходится защищать. При всей порочности
этой методики и моем отвращении к ней однажды я ока-
зался замешан в проектировании такой защиты. А для это-
го потребовалось проанализировать весь комплекс техни-
ческих средств, имеющихся на рынке, намотать на ус чужие
ошибки, отобрать лучшие решения, добавить свои собс-
твенные идеи и соединить все это воедино.
<HEAD>
<SCRIPT language=JavaScript>
function click(x)
{
if (document.all)
{
if (event.button == 2)
{
alert("this operation isn't allowed");
return false;
}
}
}
document.onmousedown=click;
</SCRIPT>
</HEAD>
76
web
Листинг 2. Исходный код Java-скрипта, блокирующего
не только правую кнопку мыши, но еще и выделение текста
всеми доступными способами
<SCRIPT LANGUAGE="JavaScript">
document.ondragstart = ops;
document.onselectstart = ops;
document.oncontextmenu = ops;
</SCRIPT>
78
web
Готовые защитные продукты изображений и вывод на печать: http:// всего один раз, и она будет работать
HTML Protector – обладает способнос- www.pullsoft.com/htmlpower.zip. как часы. Напротив, описанный меха-
тью выборочно шифровать HTML-со- Encrypt HTML Pro – шифрует всю низм шифрования с переводом текста
держимое (Java/VBScript, e-mail-адре- HTML-страницу целиком или только в графику не допускает универсально-
са против mail-грабберов, линки, текст, ее часть, с Teleport не борется, изоб- го взлома, требуя к себе индивидуаль-
изображения), борется с Teleport и по- ражения не режет, сохранению стра- ного подхода!
добными ему программами, позволяет ницы не препятствует, но блокиру- Зашифрованное содержимое (неваж-
запрещать off-line-просмотр, выделе- ет правую кнопку мыши, контекстное но каким путем) недоступно поиско-
ние текста, сохранение изображений меню, выделение текста и печать: вым роботам, что крайне негативно
и печать; при необходимости разреза- http://www.mtopsoft.com /download / отражается на посещаемости, поэто-
ет изображения на кусочки и/или на- enchp.zip. му шифрование имеет смысл исполь-
кладывает на них водяные знаки, кон- зовать только для создания «закрытых
вертирует их в swf, а также препятс- Внимание: клубов» и «тайных сообществ», в ко-
твует отображению страницы во фрей- Не стоит путать шифрование, исполь- торые попасть можно только по «при-
ме чужого сайта или копированию его зуемое этими программами, с шифро- глашению», а простой человек с улицы
фрагментов, поддерживает IE, FireFox ванием, описанным в статье: зашифро- их навряд ли найдет.
и Opera: http://antssoft.fileburst.com/ ванное содержимое расшифровывает- Шифрование также позволяет обхо-
htmlprotector.zip. ся и выводится в браузер в текстовом дить разнообразные adult-фильтры,
HTML Power – шифрует всю HTML-стра- виде и потому может быть сохранено блокирующие доступ к контенту оп-
ницу целиком или только ее часть, бо- на диск универсальной программой, ределенного содержимого (к которо-
рется с Teleport и подобными ему про- представляющей собой обыкновенное му относятся не только порноресур-
граммами, препятствует сохранению расширение для браузера и считываю- сы, но и некоторые политические сай-
страницы на диск, картинки не режет, щей содержимое окна через API-функ- ты), впрочем, для этих целей сущест-
водяные знаки не накладывает, но за- ции в обход пользовательского интер- вуют и другие, гораздо более продви-
то умеет блокировать правую кнопку фейса. Такую программу (для каж- нутые методики (например, VPN-тун-
мыши, выделение текста, сохранение дого браузера) достаточно написать нели или https-proxy сервера).
не без ошибок, но все же пригодный для последующей ра- Если веб-содержимое генерируется PHP (а в большинстве
боты с ним (см. рис .8). случаев это так), совсем несложно сделать, чтобы ссылка
Таким образом, взломать предложенную защиту все-та- на предыдущую страницу (или «home page») каждый раз ге-
ки возможно, но… для этого нужно быть хакером, а «потуги» нерировалась случайным образом и «телепортер», обна-
обычных пользователей она выдержит вполне успешно. ружив, что такой ссылки еще нет в его базе, повторял за-
грузку «home» несчетное количество раз. Чуть-чуть усовер-
Защита от телепортеров шенствовав алгоритм, можно добавить и случайную гене-
Большинство веб-мастеров очень не любят, когда пользо- рацию даунлинков.
ватели выкачивают весь сайт целиком, а потом спокойно Самый простой пример: каждый линк представляет
почитывает его в off-line или прожигают на болванки, сбы- ссылку на скрипт с параметром, идентифицирующим эту
ваемые в ближайших ларьках. ссылку. Идентификатор состоит из двух частей, первая
Существует множество программ, предназначенных часть – случайным образом генерируемый ключ, которой
для автоматического скачивания и обладающих весьма расшифровывает (по XOR) вторую часть. Этот механизм,
продвинутой системой фильтров, способных качать только несмотря на всю его простоту, не позволяет «телепорте-
то, что нужно, и не качать одни и те же страницы несколь- ру» отличать ссылки на уже скачанные страницы от тех,
ко раз подряд. Тем не менее их достаточно просто обма- что еще предстоит скачать. Теоретически (!) «телепортер»
нуть (см. рис .9). может анализировать содержимое скачанных страниц, вы-
Первое, что приходит в голову, – это запрашивать под- деляя среди них дубли, но что это ему дает?! Качать-то все
тверждение при скачивании каждого файла в виде графи- равно придется… в бесконечном цикле!
ческой картинки с искаженными символами, которые тре-
буется ввести (см. рис. 10). Конечно, это утомляет чест- Пара слов о поиске украденного
ных посетителей, но зато делает «телепортирование» сай- Как ни защищай свое имущество, его все равно уведут,
та практически невозможным. Можно выводить картинку и веб-содержание начнет расползаться по Сети. Это не-
на экран, перекладывая задачу распознавания на плечи возможно предотвратить, но найти грабителей – в общем-
человека, и если таких людей будет много, то копирование то пустяковое дело. Например, наложить на каждую фото-
займет вполне разумное время. При желании можно даже графию свой логотип. Прием распространенный, но очень
привлечь аудиторию с какого-нибудь порнографического глупый и проблемы не решающий. Логотип, расположен-
сайта с гиперпосещаемостью, если, конечно, «телепорти- ный в незначащей части изображения (где-нибудь в углу)
рование» стоит того. элементарно вырезается. А если расположить его посере-
Другой механизм предполагает генерацию случайных дине да еще выбрать размер покрупнее, на такую фотогра-
аплинков, что приводит к «зацикливанию» телепортера. фию никому смотреть не захочется!
80
bugtraq
Несколько уязвимостей
в PowerDNS Recursor Переполнение буфера
Программа: PowerDNS Recursor 3.1.3 и более ранние вер- в Microsoft Windows
сии. Agent ActiveX-компоненте
Опасность: Высокая. Программа: Microsoft Windows 2000 Advanced Server,
Описание: 1. Уязвимость существует из-за ошибки под- Microsoft Windows 2000 Datacenter Server, Microsoft Windows
счета длины при обработке TCP DNS-запросов. Удален- 2000 Professional, Microsoft Windows 2000 Server, Microsoft
ный пользователь может с помощью специально сформи- Windows XP Home Edition, Microsoft Windows XP Professional,
рованного пакета выполнить произвольный код на целе- Microsoft Windows Server 2003 Datacenter Edition, Microsoft
вой системе. Windows Server 2003 Enterprise Edition, Microsoft Windows
2. Уязвимость существует из-за ошибки при обработке Server 2003 Standard Edition, Microsoft Windows Server 2003
CNAME-записей. Удаленный пользователь может аварий- Web Edition.
но завершить работу приложения. Опасность: Высокая.
URL производителя: www.powerdns.com. Описание: Уязвимость существует из-за неизвестной
Решение: Установите последнюю версию (3.1.4) с сайта ошибки в Microsoft Agent ActiveX-компоненте при обработ-
производителя. ке .ACF-файлов. Удаленный пользователь может с помо-
щью специально сформированного .ACF-файла вызвать
Небезопасные методы в WinZip переполнение буфера и выполнить произвольный код на
FileView ActiveX-компоненте целевой системе.
Программа: WinZip 10.0 версии до Build 7245. URL производителя: www.microsoft.com.
Опасность: Высокая. Решение: Установите исправление с сайта производите-
Описание: Уязвимость существует из-за наличия несколь- ля.
ких небезопасных методов в FileView ActiveX-компоненте
(WZFILEVIEW.FileViewCtrl.61). Удаленный пользователь мо-
жет с помощью специально сформированной веб-страницы Переполнение буфера в службе IMAP
выполнить произвольный код на целевой системе. в MailEnable
URL производителя: www.winzip.com. Программа: MailEnable Enterprise Edition 1.x, MailEnable
Решение: Установите последнюю версию с сайта произ- Enterprise Edition 2.x, MailEnable Professional 2.x, MailEnable
водителя. Professional 1.x.
Опасность: Высокая.
Переполнение буфера в ProFTPD Описание: Уязвимость существует из-за ошибки при обра-
Программа: ProFTPD 1.3.0 и более ранние версии. ботке некорректных команд или данных в службе IMAP. Уда-
Опасность: Высокая. ленный пользователь может с помощью специально сфор-
Описание: Уязвимость существует из-за недостаточной об- мированной команды вызвать переполнение буфера и вы-
работки входных данных в функции sreplace() в файле src/ полнить произвольный код на целевой системе.
support.c. Удаленный авторизованный пользователь мо- URL производителя: www.mailenable.com.
жет вызвать переполнение стека и выполнить произволь- Решение: Установите исправление с сайта производите-
ный код на целевой системе. ля.
URL производителя: www.proftpd.org.
Решение: Установите последнюю версию (1.3.0a) с сайта
производителя. Обход ограничений безопасности
в GNU tar
Уязвимость форматной строки Программа: GNU tar 1.15.1 и 1.16, возможно более ранние
в GNU Radius версии.
Программа: GNU Radius 1.3 и более ранние версии. Опасность: Средняя.
Опасность: Высокая. Описание: Уязвимость существует из-за того, что
Описание: Уязвимость существует из-за ошибки формат- функция extract_archive() в файле extract.c и функция
ной строки в функции sqllog(). Удаленный пользователь extract_mangle() в файле mangle.c обрабатывает тип запи-
может послать приложению специально сформированную си GNUTYPE_NAMES, содержащий символическую ссыл-
строку и выполнить произвольный код на целевой систе- ку. Удаленный пользователь может с помощью специаль-
ме. Для успешной эксплуатации уязвимости GNU Radius но сформированного архива перезаписать произвольные
должен быть собран с поддержкой SQL, и SQL-эккаунтинг файлы на целевой системе.
должен быть разрешен. URL производителя: www.gnu.org/software/tar.
URL производителя: www.gnu.org /software /radius / Решение: В настоящее время способов устранения уязви-
radius.html. мости не существует.
Решение: Установите последнюю версию (1.4) с сайта про-
изводителя.
Алан Кей
Дмитрий Мороз
Кремниевая долина ещё в середине прошлого века превратилась в «кузницу передовых идей»
в области информационных технологий. Яркий тому пример: исследовательский центр Xerox
PARC, в котором, наряду с ксероксом и лазерным принтером, в 1973-м году был создан первый
в мире персональный компьютер.
Создавая «архитектуру му исследователю, чьё имя, к сожа- ний. Среди них стоит отметить груп-
информации» лению, осталось неизвестным. Этот пу бывших студентов Стэндфордско-
Название этому разделу было да- человек, нанятый высшим руководс- го Исследовательского Института
но неспроста. Как раз Architecture твом Xerox для планирования даль- (Stanford Research Institute, SRI) во гла-
of Information являлась целью, стояв- нейшей стратегии её развития, по- ве с Дугласом Энгельбартом (Douglas
шей перед первыми учёными иссле- рекомендовал компании создать тех- Engelbart).
довательского центра Xerox Palo Alto нологический центр для проведения На протяжении 1960-х годов Эн-
Research Center (Xerox PARC). За свою исследований в области цифровых гельбарт со своими коллегами созда-
почти 36-летнюю историю он принёс технологий. По его словам, анало- ли так называемую «Диалоговую Сис-
миру множество открытий в области говые разработки в будущем станут тему» (On-Line System, NLS). Она бы-
волоконно-оптической и лазерной фи- морально и технически устаревшими, ла разработана на основе технологии,
зики, интегральной микросхемотехни- и для всей индустрии копировальной позднее названной «гипертекстом»
ки, систем автоматизированного про- техники, которой «кормилась» Xerox, (Hypertext). NLS – интерактивная сис-
ектирования, а также искусственного может наступить кризис. Единствен- тема для работы с текстовой и графи-
интеллекта. ный правильный выход состоял в объ- ческой информацией – предоставля-
Не остались в стороне и компью- единении копира и цифровых техно- ла следующие возможности: телекон-
терные технологии. В недрах центра логий с интегрированными офисны- ференции, электронную почту, редак-
работали над языками программиро- ми системами. Идея была принята тор по обработке текстов, гипертек-
вания, системами и сетями передачи «на ура», и 1 июля 1970 года состоя- стовые ссылки, а также конфигури-
информации, операционными систе- лось открытие нового исследователь- рование пользователем своего рабо-
мами, графическими пользователь- ского центра. чего места. Инновационные возмож-
скими интерфейсами, издательскими Сразу после этого Xerox PARC на- ности Диалоговой Системы потребо-
системами и т. д. чала набирать «рекрутов». В основ- вали создания для неё новых инстру-
Своим появлением на свет Xerox ном это были молодые учёные – вы- ментов. Среди них были манипуля-
PARC обязана одному-единственно- пускники высших учебных заведе- тор «мышь», многооконная система
82
ретроспектива
ввода/вывода данных, система помо-
щи в режиме on-line, а также органич- Преждевременно почивший ления странички эмулятора) детище Сми-
ность и простота всего пользователь- Altogether та эмулировало процессор компьютера,
ского интерфейса. В своё время программист Эрик Смит (Eric а также видеоподсистему. Незаконченны-
Ещё один человек, имя которого Smith) взялся за написание эмулятора ми остались дисковая и сетевая подсисте-
стоит упомянуть – Алан Кей (Alan Kay). Xerox Alto под названием Altogether. К со- мы, без которых Altogether был бесполез-
До своего появления в Xerox PARC жалению, до стабильно работающей вер- ным. Исходные тексты программы можно
он занимался разработкой SmallTalk – сии дело не дошло: по состоянию на 26 ок- найти на сайте Altogether: http://altogether.
первого в мире объектно-ориенти- тября 2003 года (дата последнего обнов- brouhaha.com.
рованного языка программирования.
Кроме того, «перу» Кея принадлежит Что касается технической стороны ты с системой: вывод информации
концепт первого портативного компью- Alto, основные его характеристики бы- на экран, обновление содержимого
тера Dynabook. ли описаны ещё в памятке Лампсона. оперативной памяти, работу с диско-
Приглашённого в новый исследо- выми накопителями, сетевой подсис-
вательский центр Кея сразу же опреде- Первый в мире темой и другим функциями ввода/вы-
лили в команду, ответственную за NLS. Персональный компьютер Xerox Alto, вода. Несмотря на такую «многоза-
Для облегчения их работы Xerox в 1971 представленный в 1973 году, состоял дачность», пользователь мог управ-
году лицензировала у SRI манипуля- из четырёх основных частей: систем- лять всего одной задачей, причём она
тор «мышь». ного блока, растрового дисплея, кла- всегда имела наименьший приоритет.
Со временем концепт Диалоговой виатуры и трёхкнопочного манипуля- Такой подход позволял, в случае надо-
Системы приобрел более или менее тора «мышь». Согласитесь, это те же бности, моментально выделить допол-
законченный и целостный вид, в ре- составляющие, которыми может «пох- нительную процессорную мощность
зультате чего встал вопрос о вопло- вастаться» любой ПК. для управления другими задачами.
щении этих идей в едином аппаратно- Система обладала 128 Кб ОЗУ (рас- Производительность МП Alto состав-
программном комплексе. ширяемыми до 256 Кб), а также съём- ляла около 0,4 MIPS (миллионов инс-
Начав работать в Xerox PARC, Кей ными жёсткими дисками объёмом трукций в секунду).
не забыл о своей разработке – ком- 2,5 Мб (дисковод магнитных дисков, со- Ещё одно новшество первого ПК –
пьютере Dynabook. Первоначально зданный IBM в 1971 году, во время про- использование в качестве контролле-
его просьба создать несколько де- ектирования Alto ещё не был доступен). ра растрового экрана «буфера кадра»
сятков подобных машин, которые бы В качестве устройства отображения ин- (frame buffer), хранящего в себе инфор-
служили подспорьем в его исследо- формации был использован 12,8-дюй- мацию, выводимую на экран. Создан-
ваниях, была отклонена. Однако сама мовый растровый чёрно-белый дисп- ный инженером Диком Шаупом (Dick
идея портативного компьютера пон- лей с разрешением 606x808 точек, в от- Shoup), буфер кадра Alto представлял
равилась Батлеру Лампсону (Butler личие от всех современных «ландшаф- собой простой 16-разрядный регистр
Lampson), одному из главных учёных тных» экранов, имевший «портретную» сдвига, управлявшийся одной из мик-
и менеджеров Xerox PARC. В декабре ориентацию. В завершение компьютер ропрограмм центрального процессора
1972 года в очередной из своих памя- имел «на борту» встроенный сетевой системы. ЦП в этом случае использо-
ток он написал для руководства Xerox адаптер стандарта Ethernet, разработ- вался для выборки обновлённых дан-
«манифест», в котором попросил выде- ка которого велась в недрах центра па- ных, которые необходимо вывести на
лить денежные средства на разработ- раллельно с работами над Alto. дисплей из оперативной памяти в этот
ку и производство «персональных ком- Инновационной разработкой ин- регистр. Специально для хранения ви-
пьютеров» под названием Alto, за ос- женеров PARC стал 16-битный микро- деоданных в ОЗУ было зарезервиро-
нову которых была бы взята разработ- процессор Alto, использовавший от- вано 50 Кб адресного пространства.
ка Алана Кея под названием Dynabook. дельные микропрограммы для выпол- Использование буфера кадра позво-
Персональный компьютер в предыду- нения большинства
щем предложении был написан в ка- функций ввода/выво-
вычках неспроста, ведь исторически да вместо их аппарат-
памятка Лампсона – первое упомина- ной реализации. Яд-
ние термина. ро процессора могло
Однако концепция портативного одновременно выпол-
компьютера, являвшегося, по замыс- нять до 16 различных
лу Кея, хранилищем всей необходимой задач, одной из ко-
его владельцу информацией и сред- торых являлась не-
ством для её обработки, была замене- посредственно обра-
на более практичной настольной сис- ботка основного на-
темой. Её разработкой первоначально бора инструкций МП.
занимался Чак Такер (Chuck Thacker), Остальные задачи
на помощь которому со временем при- процессора отвеча-
шли ещё несколько человек. ли за функции рабо- Один из корпусов Xerox PARC
84
ретроспектива
кеты: интерфейс Draw состоял из не-
скольких окон, каждое из которых бы- Единственный наследник фирмы Borland, был положен графический
ло предназначено для команд опре- Несмотря на коммерческий провал STAR, менеджер GEM компании Digital Research
делённой группы. Окно, расположен- его графический интерфейс настолько (которую, кстати, также основали выход-
ное слева, содержало различные ви- понравился руководству Xerox, что было цы из PARC). Новая оболочка работала
ды кистей, верхнее окно было пред- принято решение развивать идею даль- на обычных компьютерах IBM PC AT, прав-
назначено для ввода дополнитель- ше. Созданая специально для этого ком- да, требовала мониторы компании Sigma
ных текстовых команд, а также выво- пания Elixir Technologies занялась пере- Designs с SVGA-разрешением.
да системных сообщений программы. носом графической оболочки Xerox STAR Elixir Desktop превращала простой пер-
В центре располагалось основное ок- на IBM PC. Специалист по компьютерным сональный компьютер в графическую стан-
но – непосредственно «холст». Пользо- пользовательским интерфейсам Xerox цию, которая могла быть использована для
ватель мог рисовать линии произволь- Эд Риган (Ed Regan) помог руководителю создания и подготовки документов к после-
ной длины и ширины. Кривая создава- группы Elixir Брюсу Дэмеру (Bruce Damer) дующей их распечатке на комплексах печа-
лась путём указания нескольких точек, и его команде перенести все элемен- ти Xerox и других производителей. Кроме
по которым Draw вычисляла траекто- ты внешнего вида STAROS в новую гра- того, именно Elixir Desktop считается пер-
рию отрезков и рисовала её, либо же фическую оболочку под названием Elixir вой полноценной графической оболочкой
удержанием мышкой точки на прямой Desktop, работавшую в качестве «над- для архитектуры х86, вышедшей на год
и «перетягиванием» её в сторону ис- стройки» над MS-DOS. раньше Windows 3.0.
кривления линии. Нарисованный в ре- В основу Elixir Desktop, написанной Во многих крупных компаниях Elixir
зультате объект мог быть продублиро- с использованием компилятора Turbo C Desktop используется по сей день.
ван, развёрнут в необходимую сторо-
ну, растянут или сжат. Причём все эти купателей, компания осознала о своем низована «локальная» сеть, в резуль-
операции выполнялись либо движени- промахе. В результате средства от про- тате чего сотрудники смогли общать-
ем мыши, либо набором легко запоми- даж разработок в области персональ- ся между собой посредством элект-
нающихся команд. ных компьютеров Xerox собралась по- ронной почты, а также обменивать-
лучать при помощи новой модели ПК – ся файлами.
И ещё чуть-чуть рабочей станции Xerox 8010 (позже по- Широкой общественности Xerox
о первом ПК лучившей название Xerox STAR), выпу- STAR был представлен спустя це-
Специально для работы с Alto в недрах щенной 27 апреля 1981 года. лых семь лет разработки – в апреле
Xerox PARC было создано несколько 1981 года. Спецификации компьютера
дополнительных устройств: телевизи- «Звёздный» компьютер были следующими: 512 Кб ОЗУ (из ко-
онная камера, символьный принтер ти- Проектирование Xerox STAR велось торых 100 Кб отводилось для хранения
па «ромашка», а также адаптер парал- с 1974 года. Именно этот компьютер данных буфера кадра), жёсткий диск
лельного порта. Кроме того, к этому ПК должен был воплотить все идеи Диа- объёмом 10, 29 или 40 Мб, 8-дюймовый
могли быть подключены дополнитель- логовой Системы, разработанные Эн- дисковод, 17-дюймовый монитор с тра-
ные съёмные жёсткие диски, превра- гельбартом со товарищи. Поэтому его диционной «ландшафтной» ориента-
щавшие компьютер в файловый сер- аппаратная часть создавалась лишь цией и разрешением 1024x808, а так-
вер. Кстати, несколько Alto в локальной после окончания работ над програм- же новый сетевой адаптер с повышен-
сети исследовательского центра Xerox мой, которая и диктовала свои «ус-
выполняли именно эту функцию. ловия».
Всего в Xerox PARC была изготов- Кстати, Xerox STAR не являлся раз-
лена тысяча компьютеров Alto, кото- работкой, созданной в недрах PARC.
рые, будучи объединёнными в еди- Специально для продвижения «офис-
ную сеть, использовались инженера- ных систем» (к которым руководство
ми лабораторий центра. Ещё 500 сис- компании относило персональные
тем нашли своё пристанище в универ- компьютеры) было создано отдельное
ситетских кампусах и правительствен- подразделение, получившее назва-
ных офисах. До коммерческой реали- ние Systems Development Department
зации этого компьютера дело, однако, (SDD). SDD имела два филиала: один
не дошло. Зацикленная на своём ос- располагался на территории PARC
новном бизнесе по производству ко- в Пало Альто (занимался операци-
пировальной и офисной техники, Xerox онной системой и языками програм-
не хотела рисковать большими сума- мирования), а другой – в городке Эль
ми и вкладывать их в популяризацию Сегундо, находившемся неподалёку
персональных ЭВМ. от Лос-Анджелеса (разработка аппа-
Впрочем, с появлением первых ратной части STAR, а также пользо-
массовых компьютеров, таких как Altair вательских программ). Для того что-
8800 и Apple II, а также возникшим ин- бы оба офиса имели постоянную связь
тересом к ним со стороны обычных по- друг с другом, между ними была орга- Распечатанный скриншот игры Maze War
86
ретроспектива
даться, InterPress лёг в основу их язы- STAR был компьюте-
ка Postscript. ром с «закрытой» ар-
хитектурой, никакая
Поражение другая компания не
Несмотря на передовые аппаратные могла написать или
и программные разработки, заложен- перенести свои про-
ные в Xerox STAR, этот компьютер граммы на него. Ещё
не сумел «найти своего покупателя», один недостаток за-
проиграв войну PC корпорации IBM к люча лся в опере-
и Macintosh от Apple. Причин здесь не- жении компьютером
сколько, причём кроются они как раз «своего времени»:
в его «уникальности»: ма ло к то понима л
Аппаратные недостатки. Про- весь потенциал про-
граммное обеспечение STAR, раз- граммного обеспе-
работанное для людей, не знакомых чения, поставлявше-
с компьютерной грамотой, было очень гося с этим ПК.
требовательным к аппаратному обес- Ор ганизац ион -
печению. В результате скорость ра- ные промахи. Глав-
боты Xerox STAR была приемлемой, ный же недостаток
но не более того. Инженеры центра был не техническим,
были настолько одержимы идеей раз- а организационным.
работать идеальную систему, что в ре- Xerox создала про-
зультате количество новшеств в ней дукт, который не мог-
оказалось гораздо больше необхо- ла продать. Отдел
димого на то время. Как и в случае продаж SDD не имел Скриншот текстового редактора BravoX
с Apple, инженеров PARC никто не ог- никакого опыта реа-
раничивал и не диктовал свои условия. лизации компьютерных систем, пос- знают все. Одному из основателей
В результате Xerox STAR для исполь- кольку единственными, с чем они име- Apple хватило, по его словам, всего
зования всех её возможностей требо- ли дело всё это время, были принтеры 10 минут, чтобы оценить весь скрытый
валось наличие локальной сети с под- и копиры. К тому же цена Xerox STAR потенциал STAR. Если выход в свет
ключенными к ней другими аналогич- (16 595 долларов) была приблизитель- компьютера Lisa ещё не был событи-
ными компьютерами, лазерные при- но в пять раз выше стоимости ПК кон- ем из ряда вон выходящим вследс-
нтеры, а также комнаты, забитые раз- курентов. И последнее: менеджерам твие его сверхвысокой цены, то появ-
личной электроникой. IBM PC, наобо- компании не объяснили, каким обра- ление легендарного Macintosh в 1984
рот, был «компьютером в себе»: отлич- зом использование ПК от Xerox может году спровоцировало эффект «разо-
но работал в одиночку, да к тому же не улучшить производительность труда рвавшейся бомбы». На тяжёлых тру-
«брезговал» более дешёвыми матрич- потенциальных покупателей. Семи- дах инженеров Xerox PARC инвесто-
ными и струйными принтерами. Инже- нар, посвящённый STAR, позже дока- ры Apple заработали сотни милли-
неры Xerox STAR считали, что разра- зал, что ни отдел продаж SDD, ни да- онов долларов.
ботанное ими программное обеспече- же некоторые разработчики до конца Что же касается разработчиков Alto
ние будет единственно нужным просто- не могли оценить всех преимуществ и STAR – им досталась лишь «скром-
му пользователю, поэтому этот ПК пре- выполнения офисных задач на этом ная» премия ACM Software Systems
вратился в «закрытую» систему, под- компьютере. Award, присуждённая PARC в 1984
робное описание аппаратной части ко- В результате SDD смогла продать году за вклад в развитие вычисли-
торой публично не оглашалось. всего несколько десятков тысяч Xerox тельной техники. А мир тем време-
Программные недостатки. Из- STAR. В дальнейшем был разработан нем во всю приспосабливался к по-
начально STAR позиционировался его преемник, Xerox 6085 (называв- явлению и всё более широкому рас-
как компьютер для менеджеров и ру- шийся также ViewPoint). Однако кроме пространению компьютеров IBM PC
ководителей, однако инженеры, раз- 19-дюймового монитора, 40 Мб жёстко- и Apple Macintosh, коренным образом
рабатывавшие систему, были предо- го диска и обновлённого программного изменивших его и сделавших смеш-
ставлены сами себе и не учли всех обеспечения похвастаться какими-ли- ной и нелепый в прошлом веке лозунг
потребностей потенциальных поль- бо кардинальными изменениями он не «Персональный компьютер в каждый
зователей. Хотя BravoX, как тексто- мог. Количество проданных ViewPoint дом!» реальностью.
вый редактор, по своим возможностям было ещё меньше и составило около
был вне конкуренции, тот же редактор пяти тысяч систем. 1. http://www.parc.com.
электронных таблиц на STAR отсутс- 2. http://www.guidebookgallery.org.
твовал, в результате чего о выполне- Пример для остальных 3. http://www.digibarn.com.
нии всего спектра офисных задач ре- Историю с посещением Стивом Джоб- 4. http://members.tripod.com.
чи быть не могло. Поскольку Xerox сом лабораторий Xerox PARC, думаю, 5. http://www.wikipedia.org.
88
содержание журнала за 2006 год
Управляем инсталляторами Иван Коробко №4 Настраиваем DrWeb Enterprise Suite Антон Борисов №8
Устанавливаем и настраиваем Настраиваем безопасный роутер на базе FreeBSD
Systems Management Server 2003 Андрей Бирюков №7 Василий Озеров №6
Устанавливаем межсетевой экран MS ISA Server 2004 Настраиваем эффективную систему сетевой защиты Zorp
Андрей Бирюков №12 Сергей Яремчук №5
Централизованно меняем пароли локального Ошибки синхронизации открывают большие возможности
системного администратора Иван Коробко №6 для хакеров. Каковы механизмы защиты? Крис Касперски №11
Шесть дней одного года Роман Коновалов №4 Пишем систему динамической защиты ресурсов в сети
Шлюз аутентификации пользователей NuFW Андрей Бирюков №6
Сергей Яремчук №3 Полезные советы: Bacula Сергей Яремчук №11
Штопаем дыры в Ilohamail Сергей Супрунов №1 Работаем с NTLM-авторизацией Apache
Экономьте время на администрировании Active Directory в домене MS Windows 2003 Владимир Василькин №11
Сергей Яремчук №10 Растущая угроза: руткиты Win32 Артем Баранов №10
Расширяем возможности MailScanner Сергей Яремчук №1
РЕТРОСПЕКТИВА № IMHO №
История компьютерных вирусов Илья Александров №11 Open Source взглядом оптимиста Алексей Барабанов №10
История компьютеров «Амига». Часть вторая: 1995-2006 В поисках профессиональной этики сисадминов
Сергей Зуев №3 Алексей Барабанов №9
История компьютеров «Амига». Часть первая: 1982-1994 Как зарабатывают на Open Source Крис Касперски №10
Сергей Зуев №2 Куда приведет Open Source? Сергей Супрунов №10
Надежда умирает последней: история компании SGI Лицензию? Вам какую? Сергей Супрунов №5
Дмитрий Мороз №4 Перспективы профессии. Автопортрет Алексей Барабанов №4
Надежда умирает последней: история компании SGI. Часть 2 Электронная почта как источник повышенной опасности
Дмитрий Мороз №5 Сергей Супрунов №1
Надежда умирает последней: история компании SGI. Часть 3
Дмитрий Мороз №6 ХОББИ №
Попытка изменить мир: хроники компании NeXT
Дмитрий Мороз №7 Коллекция «Почему?» Анна Николаева №3
Предвестник бури, или История первого
персонального компьютера Дмитрий Мороз №12
Сеть друзей: история Fidonet Илья Александров №8 №1(38) январь 2006
подписной индекс 20780 №4(41) апрель 2006
подписной индекс 20780 №12(49) декабрь 2006
www.samag.ru
www.samag.ru подписной индекс 20780
ИНТЕРВЬЮ
с минимальным бюджетом Тестируем c Kerberos Безопасность в FreeBSD:
качество обслуживания трата? создателем языка PHP разбираемся в тонкостях
Настраиваем безопасный движки поисковых машин
№ в пакетных сетях
ProFTPD: мастер своего дела
роутер наArch
Обзор дистрибутива базеLinux
FreeBSD
Настраиваем
Растущая угроза:
руткиты Win32
применения
Работаем с NTLM-
jail
Пишем систему
Генная инженерия на службе DrWeb Enterprise Suite
Практикум Python: распаковкидинамической
PE-файлов защиты Как зарабатывают авторизацией Apache
обрабатываем входящую ресурсов в сети Аудит и дизассемблирование на Open Sourceв домене MS Windows 2003
электронную почту эксплоитов
Головоломка, Чего ждать от Perl 6
ведущая
Free Software Foundation переходит на технологию LinuxBIOS
Первый раз в Linux-класс!
Какова цена анонимности Интервью по жизни Игоря Данилова
Оппонент мистера Гейтсас cоздателем Asterisk Интервью с создателем
в Сети популярного ресурса OpenNET
Антон Борисов №2
90
книжная полка
PHP 5. Профессиональное
программирование
Энди Гутманс, Стиг Баккен, Дерик Ретанс
(перевод А. Киселева)
Первая глава знакомит читателей и PEAR DB. Стоит отметить обшир-
с ключевыми новшествами в PHP 5, ное описание возможностей библио-
последующая – с основами програм- теки PEAR и ее компонентов. Послед-
мирования на этом языке, а уже на- ние разделы призваны удовлетворить
чиная с третьей предстает разверну- потребности еще более взыскатель-
тое описание более продвинутых воз- ной публики: в них рассмотрены воп-
можностей. Так, например, значитель- росы миграции на PHP 5 c PHP 4 (тре-
ное внимание уделяется объектно- тья версия разумно забыта как арха-
ориентированному программирова- изм), повышения производительности
нию, работе с объектами и шаблона- (оптимизация, проектирование, тес-
ми. Из раздела по созданию веб-при- тирование, профилирование...), раз-
ложений вместо привычного затянуто- работки расширений для PHP и при-
го разжевывания элементарных поня- ложений для консольного примене-
Открывающее книгу предисловие Зи- тий можно почерпнуть более полезную ния (CLI).
ва Сураски, который наравне с пер- информацию вроде обеспечения безо-
вым автором этого справочника яв- пасности скриптов. Издательство: «Символ-Плюс»
ляется одним из основателей компа- В самостоятельные главы также Год издания: 2006
нии Zend, занимающейся поддержкой вынесены базовые расширения к PHP, Количество страниц: 704
PHP, впечатляет: «каждый програм- обработка различных ошибок и рабо- ISBN: 5-93286-083-9
мист, интересующийся расширенны- та с XML. Примеры взаимодействия Цена: ≈ 390 руб.
ми возможностями PHP 5, должен ее с базами данных не ограничивают- Книга предоставлена интернет-магазином
иметь». ся MySQL – представлены и SQLite, books.ru.
92
книжная полка
94
подписка на 2007 год
Российская Федерация печати «Гасид» (370102, г. Баку, ул. Джавадхана, 21)
Подписной индекс: годовой – 20780, полугодовой – 81655 Казахстан – по каталогу «Российская Пресса» через
Каталог агентства «Роспечать» ОАО «Казпочта» и ЗАО «Евразия пресс»
Подписной индекс: 87836 Беларусь – по каталогу изданий стран СНГ через РГО
Объединенный каталог «Пресса России» «Белпочта» (220050, г. Минск, пр-т Ф. Скорины, 10)
Адресный каталог «Подписка за рабочим столом» Узбекистан – по каталогу «Davriy nashrlar» российс-
Адресный каталог «Библиотечный каталог» кие издания через агентство по распространению пе-
Альтернативные подписные агентства: чати «Davriy nashrlar» (7000029, г. Ташкент, пл. Муста-
Агентство «Интер-Почта» (495) 500-00-60, курьерская киллик, 5/3, офис 33)
доставка по Москве Армения – по списку номенклатуры «АРЗИ» через
Агентство «Вся Пресса» (495) 787-34-47 ГЗАО «Армпечать» (375005, г. Ереван, пл. Сасунци Да-
Агентство «Курьер-Прессервис» вида, д. 2) и ЗАО «Контакт-Мамул» (375002, г. Ереван,
Агентство «ООО Урал-Пресс» (343) 375-62-74 ул. Сарьяна, 22)
ЛинуксЦентр www.linuxcenter.ru Грузия – по списку номенклатуры «АРЗИ» через АО
Подписка On-line «Сакпресса» ( 380019, г. Тбилиси, ул. Хошараульская, 29)
http://www.arzi.ru и АО «Мацне» (380060, г. Тбилиси, пр-т Гамсахурдия, 42)
http://www.gazety.ru Молдавия – по каталогу через ГП «Пошта Молдовей»
http://www.presscafe.ru (МД-2012, г. Кишинев, бул. Штефан чел Маре, 134)
по списку через ГУП «Почта Приднестровья» (МD-3300,
СНГ г. Тирасполь, ул. Ленина, 17)
В странах СНГ подписка принимается в почтовых отделе- по прайс-листу через ООО Агентство «Editil Periodice»
ниях по национальным каталогам или по списку номенк- (МД-2012, г. Кишинев, бул. Штефан чел Маре, 134)
латуры «АРЗИ»: Подписка для Украины:
Азербайджан – по объединенному каталогу россий- Киевский главпочтамт
ских изданий через предприятие по распространению Подписное агентство «KSS», тел./факс (044)464-0220
Подписные
индексы:
20780*
81655**
по каталогу
агентства
«Роспечать»
87836
по каталогу
агентства
«Пресса
России»
*
годовой
**
полугодовой
УЧРЕДИТЕЛИ
ЧИТАЙТЕ
Владимир Положевец
Александр Михалев В СЛЕДУЮЩЕМ
РУКОВОДИТЕЛЬ ПРОЕКТА
Петр Положевец
НОМЕРЕ:
РЕДАКЦИЯ
Исполнительный директор
Владимир Положевец Настраиваем удаленный Размещение
Ответственный секретарь доступ к сети с помощью пользовательских
Наталья Хвостова MS ISA 2004 бюджетов в LDAP
sekretar@samag.ru Предположим, у нас имеется некото- После установки Linux-системы часто
Технический редактор рое веб-приложение, например, сис- возникает потребность перейти к хра-
Владимир Лукин тема заказов on-line. Необходимо ор- нению информации о пользователях
Редактор ганизовать защищенный доступ к это- в LDAP. Обычно этот шаг связывает-
Алексей Коршунов
му ресурсу с помощью SSL. Также со- ся или с построением почтового сер-
Внештатные редакторы
трудники компании ездят в команди- вера, или с созданием PDC на основе
Алексей Барабанов
Сергей Супрунов ровки и иногда работают из дома, по- Samba. Стандартные средства рабо-
Валентин Синицын этому им необходимо предоставить ты с пользовательскими настройками
доступ по VPN. А еще у компании есть в таком случае остаются без внимания.
РЕКЛАМНАЯ СЛУЖБА филиал и его сотрудникам также тре- Но есть возможность после установки
тел./факс: (495) 628-8253 буется доступ в локальную сеть. О ре- минимальной Linux-системы настроить
Евгения Тарабрина шении всех этих задач читайте в сле- пользовательский LDAP-репозиторий
reсlama@samag.ru дующем выпуске журнала. и заставить практически все службы
работать с пользователями «из LDAP»
Верстка и оформление FreeBSD в домене как с локальными.
maker_up@samag.ru
Windows: дополнительные
Дизайн обложки
возможности Как быстро и эффективно
Николай Петрочук Правильное подключение FreeBSD в до- провести учет компьютерной
мен Windows дает возможность рабо- техники на предприятии
По вопросам распространения тать с Active Directory для проверки па- Статья будет посвящена решению про-
обращайтесь по телефону: ролей, членства в группах и т. д. Но это блемы учета компьютерной техники.
(495) 628-8253 (доб. 120) только часть того, для чего FreeBSD мо- Не секрет, что этот вопрос порой вы-
жет использовать данную информацию. зывает головную боль у системных ад-
107045, г. Москва, Элементарный доступ к компьютеру че- министраторов и руководителей IT-от-
Ананьевский переулок, дом 4/2, стр. 1 рез Microsoft Management Console, эф- дела. Мы расскажем, как автоматизи-
тел./факс: (495) 628-8253 фективная раздача прав доступа для ровать этот процесс, легко подготовить
Сайт журнала: www.samag.ru
пользователей домена, автоматичес- нужные отчеты и получить в свое рас-
кое создание каталогов пользовате- поряжение несколько дополнительных
ИЗДАТЕЛЬ
ЗАО «Издательский дом лей – вот некоторые из них. возможностей по мониторингу сети.
«Учительская газета»
96