Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
12
Добавлен:
20.04.2024
Размер:
16.73 Mб
Скачать

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

d

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P

 

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

p

 

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

 

w Click

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

 

 

g

 

 

 

 

 

df

 

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Реклама

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

>>m

 

w Click

to

 

 

 

 

взлом

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

ЛЕОНИД «R0ID» СТРОЙКОВ

 

 

 

 

 

 

 

 

 

/ R0ID@BK.RU /

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

>> взлом

Программы для хакеров

ПРОГРАММА:PHPREMOTEVIEW ОС:*NIX/WIN

АВТОР:DMITRYBORODIN

Рулимсервером

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

1.Просмотр содержимого файлов в виде:

• HTML-файлов (полноэкранный режим)

• Plain-текста (полноэкранный режим)

• Файлов PHP-сессий

• Картинок jpeg/jpg/gif/png

2.Действия в режиме просмотра каталогов:

• Загрузка файла (кнопка в виде стрелки вниз)

• Просмотр панели информации и управления (кнопка в виде стрелки вправо)

• Просмотр файла (клик по самому файлу)

3.Доступные операции в файловой системе:

• Просмотр дерева каталогов

• Удаление каталога, всех его подкаталогов и файлов

• Удаление файлов из каталога (но не подкаталогов и не самого каталога)

• Создание каталога

• Создание нового файла в каталоге

• Аплоад файлов

• Просмотр времени создания и модификации файлов/каталогов

• Предпросмотр бинарных файлов

• Кодирование/декодирование файла Base64

• Редактирование файлов

• Удаление файлов

• Обнуление файлов (сброс размера в 0 байт)

• Обновление файлов (установка текущей даты изменения)

• Уничтожение и удаление файлов (за-

щита от восстановления удаленных файлов)

Копирование файлов 4. Иные возможности:

Переключение языка: русский/английский

Просмотр phpinfo()

Выполнение любого PHP-кода через функцию eval()

Выполнение команд в командной строке (shell)

Кодирование текста в MD5-хэш или по алгоритму Base64

Áðóò MD5-хэшей (для пассов длиной до 6-7 символов)

Операции с датой/временем и unix timestamp, использование mktime()

Конвертация русского текста в транслит и обратно

Конвертация между кодировками cp1251, koi8-r, etc

Всорцескриптаследуетотредактироватьнесколькопараметров:

$write_access — можно ли тулзе создавать/удалять/модифицировать файлы. False — только чтение, True — полный доступ

$phpeval_access — можно ли исполнять php-код через функцию eval(). True — можно, False — нельзя

$system_access — можно ли выполнять команды на сервере (shell). False — нельзя, True — можно

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

$login — логин (false, если авторизация отключена)

$pass — пароль

$host_allow — с каких хостов можно коннектиться к скрипту (по дефолту «*» — доступ с любых хостов)

Утила, каквидишь, вполнеактуальнапосейдень, поэтомуможешьсмелосливатьееснашегоДВД иаплоадитьнадоступныетебесервера.

ПРОГРАММА:TFILE.RUBRUTER/ CHECKER/PARSER

ОС:*NIX/WIN АВТОР:MAILBRUSH

Еслитысторонниксвободногораспространения всевозможногофайловСетиинеможешьпройти

Парсимаккисторрент-трекера

стороноймимоторрент-трекеров, следующий наборутилдлятебя:). Говоряточнее, набортулз предназначендлякрупноготоррент-трекераtfile. ru (администрацииресурсапередаемпривет; как говорится, ничеголичного) ивключаетвсебя:

брутер, чекерипарсераккаунтовсвышеупомянутогопроекта. Сейчасмыподробнорассмотрим всетрискрипта. Итак:

1.TFile.RU Parser — PHP-скриптдляпарсинга никовсфорумаресурса. Передзапускомтебе необходимозадатьнесколькопараметров:

• начальныйиконечныйID юзеровнафоруме;

• названиефайластатистики;

• названиефайладлясохраненияников.

2.TFile.RU Bruter — PHP-скриптдлябрутапассов

каккамнаtfile.ru. Используетранеесобранные никисфорума, совмещенныеспассворд-лис- том, тоестьсписокдлябрутадолженбытьв такомвиде: логин:пароль. Вbad-файлпишутся нерабочиеаккаунты, вgood-файл— аккаунтыс правильнымипаролями.

3.TFile.RU Checker — PHP-скрипт, которыйчека-

етаккаунтыизgood-файланарейтинг, количествослитых/залитыхметровипишетлогввиде: username: upload: X download: X rating: X — либо безимениюзера: upload: X download: X rating: X.

Благодаримmailbrush'азаудобныйифункциональныйкомплектскриптов:).

P.S. Кстати, незабывай, чтополучениедоступа

кчужимаккаунтамкатегорическизапрещенои караетсяповсейстрогостизакона!

ПРОГРАММА:FASTWEBSERVER ОС:WINDOWS2000/XP/2003 АВТОР: KNOKSWILLE

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

Подобныхкомплектовсейчасхватает.Некоторые изнихявыкладывалвпрошлыхвыпускахХ-Тулз, дабытысмогоценитьвсепреимуществаинедостаткикаждогопродукта,начинаяотDenwer'а изаканчиваяTopServer'ом.Сегодняяхочу представитьтебепринципиальноинуюсофтину изсерии«всеводном»—«FastWebServer»от человека,скрывающегосяподникомKnokswille.

Основноеотличиеутилыотаналоговзаключается

070

XÀÊÅÐ 07 /127/ 09

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

t

 

P

D

 

 

 

 

 

 

 

 

o

 

 

 

 

NOW!

r

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

m

w Click

 

 

 

 

 

 

o

 

w

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

p

df

 

 

 

 

e

 

 

 

 

 

 

g

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

-xcha

 

 

вналичииnginx,mod_securityирядаполезных

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

фишек.Присборкекомплектабылсделанупорна

 

 

 

 

 

 

 

 

 

стабильностьибезопасность,чеготакнехватало

 

 

 

 

 

 

 

 

 

большинствуаналогичныхпродуктов. Среди

 

 

 

 

 

 

 

 

 

составляющихсофтиныследуетвыделить:

 

 

 

 

 

 

 

 

 

 

 

• Ñîôò: nginx 0.6.35, Apache 2.2.4,

 

 

 

 

 

 

 

 

 

 

 

PHP 5.2.4, Zend Engine 2.2.0, MySQL

 

 

 

 

 

 

 

 

 

 

 

5.0.45, phpMyAdmin 2.6.1, Sendmail

 

 

 

 

 

 

 

 

 

 

 

• Принцип работы: Nginx frontend +

 

 

 

 

 

 

 

 

 

 

 

Apache backend

 

 

 

 

 

 

 

 

 

 

 

• Фильтрация GET/POST-запросов

 

 

 

 

 

 

 

 

 

 

 

• Наличие mod_security (с предуста-

 

 

 

 

 

 

 

 

 

 

 

новленными основными правилами)

 

 

 

 

 

 

 

 

 

 

 

• Наличие расширенной защиты от XSS/

 

 

 

 

 

 

 

 

 

 

 

SQL-инъекций

 

 

 

 

 

 

 

 

 

 

 

• Полное логирование событий

 

 

 

 

 

 

 

 

 

 

 

• Удобная панель управления

 

 

 

 

 

 

 

 

 

 

 

• Возможность изменения сигнату-

 

 

 

 

 

 

 

 

 

 

 

ры сервера (по дефолту определяется

 

 

 

 

 

 

 

 

 

 

 

êàê nginx/0.6.35, Red Hat Enterprise

 

 

 

 

 

 

 

 

 

 

 

Linux 5.3)

 

 

 

 

 

 

 

 

 

 

 

• Наличие лицензии GNU/GPL на все

компоненты

В пакет входит Visual C++ 2008 Redist (необходим для mod_security)

Наличие скрипта SQLInfo (необходим для отображения настроек MySQL)

Настроитьсофтинудовольнопросто. Дляэтого:

1. ОткрываемC:\nginx\conf\nginx.conf. Правим:

listen 192.168.94.105:80; #наш IP server_name adsbss 192.168.94.105; #имя нашего сервера

2.ОткрываемC:\nginx\server\usr\local\apache\ conf\httpd.conf. Правим:

RPAFproxy_ips 192.168.94.105

127.0.0.1#ãäå, 192.168.94.105 — íàø IP

3.Заливаемфайлывкореньвеб-каталоганашего сервера:

C:\nginx\server\home\custom\www

Функциональностьпочтовогосервера:

IMAP и POP3: перенаправление пользователя на IMAP или POP3-бэкенд с использованием внешнего HTTP-сервера аутентификации

SMTP: проверка юзера с помощью внешнего HTTP-сервера аутентификации и перенаправление соединения на внутренний SMTP-сервер

Методы аутентификации:

1.POP3: USER/PASS, APOP, AUTH LOGIN/ PLAIN/CRAM-MD5;

2.IMAP: LOGIN, AUTH LOGIN/PLAIN/ CRAM-MD5;

3.SMTP: AUTH LOGIN/ PLAIN/CRAM-MD5;

• Поддержка SSL

ФункциональностьHTTP-сервера:

• Работа с виртуальными серверами, оп-

XÀÊÅÐ 07 /127/ 09

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

>> взломw Click

 

BUY

 

 

 

to

 

 

 

 

m

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-x cha

 

 

 

 

ПоднимаемFast Web Server

 

ределяемыми по IP-адресам/именам

 

• Поддержка keep-alive и pipelined-

 

соединений

 

• Настройка формата ведения логов

 

• Специальные страницы для отображе-

Пишемсценарийдляэмуляторасвоихдействий:)

ния ошибок

 

• Ограничение доступа по IP либо по

 

паролю (Basic-аутентификация)

<?php

• Наличие методов PUT, DELETE, MKCOL,

// Данный код необходим для запуска

COPY è MOVE

Human Emulatora

• Ограничение скорости передачи ответов

require("../../Templates/xedant_

• Ограничение числа одновременных

human_emulator.php");

соединений и запросов

// переходим на страницу регистрации

• Поддержка SSL

$browser->navigate("http://www.

• Распределение нагрузки

xanga.com/register.aspx");

• Отказоустойчивость

$browser->wait_for(240,1);

Тулзаимеетполноеправонаместовповседнев-

// заполняем поля ввода данными

номарсеналеутил. Еслитебенуженбыстрый

//логин

вустановке, простойвуправлении, аглавное

$input->set_value_by_

— безопасныйиотказоустойчивыйвеб-сервер

number(0,"admygteryrtin1");

скомплектомдополнительныхсофтин— ищи

//пароль

архивнанашемдиске:).

$input->set_value_by_

 

number(1,"rte34otu2");

ПРОГРАММА:HUMANEMULATOR

// повторим пароль

ОС:WINDOWSXP/VISTA

$input->set_value_by_

АВТОР: HUMANEMULATOR.INFO

number(2,"rte34otu2");

Прогавоспринимаеттривидасобытий:

//email

 

$input->set_value_by_

• Движения мышки

number(3,"ad456435min1@host.com");

• Ввод с клавы

// вызываем диалог ввода капчи

• Клики мышки

$captcha=$app->dlg_captcha_from_

 

image_number(1);

Кактыпонимаешь, сферапримененияутилы

$input->set_value_by_

довольнаширокаиограничиваетсялишьтвоей

number(4,$captcha);

фантазией. Дляпримера:

// устанавливаем дату рождения

 

// 1

• Накрутка счетчиков/автокликинг по

$listbox->select_num_value_by_

ссылкам

number(1,1);

• Автоматический сбор данных с веба

// ìàé

• Автоматическая регистрация на сайтах

$listbox->select_num_value_by_

• Автопостинг по форумам/блогам/ново-

number(0,5);

стным лентам

// 1980

 

$listbox->select_num_value_by_

Словом, софтинаобеспечиваетполнуюэмуляцию

number(2,51);

действийюзера, включаядвижениямышьюи

// устанавливаем чек "я согласен"

работусклавой. Утилаобладаетрядомособен-

$checkbox->set_checked_by_

ностей, средикоторых:

number(0,"true");

 

// нажимаем на кнопку

• Корректная работа с AJAX

$button->click_by_number(0);

• Корректная работа в защищенных об-

$browser->wait_for(240,1);

ластях сайта

// выходим

• Задание различных параметров брау-

 

зера (размер окна, etc)

$app->quit();

• Эмуляция движений/кликов мышкой

?>

• Эмуляция нажатий клавиш с клавы

 

 

Длябесперебойнойработысофтиныпотребу-

ПринципработытулзыоснованнаPHP-сцена-

етсянеменее256 метровоперативы, 50 метров

риях, вкоторыхнеобходимоописыватьдействия

свободногоместанавинтеиWin XP/Vista, атакже

приложения. Дляпримераприведускриптрегис-

установленныйPHP ипрямыеруки:).

трациинапорталеhttp://xanga.com, написанный

P.S. Утилаплатная, новедьзахорошийсофт

создателямипродукта:

заплатитьнежалко, правда? :). z

 

071

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

>>m

 

w Click

to

 

 

 

 

сцена

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

Джоэл— частыйгостьна различныхIT-конферен- циях

Внутриофисавсеобустроеноповысшемуклассу

ВходвНью-Йоркский офисFog Creek Software

072

XÀÊÅÐ 07 /127/ 09

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

>>

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

сценаw

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

 

 

 

 

 

 

o

m

 

w

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

ДЖОЭЛ ИПРОГРАММНОЕ

ОБЕСПЕЧЕНИЕ

История ДжоэляСпольски— программистаиписателя

Сегодняярасскажутебеобоченьинтересномчеловеке, которыйвсвои44 годауспелмногое. ЕгозовутДжоэлСпольски, ионнетолькослужилвизраильскойармиииработалвMicrosoft, ноисоздалсобственнуюIT-компанию, вложивнеедушу, написалнесколькокниг, вчислекоторыхимеютсябестселлеры, апотомивовсеувлексяweb 2.0 стартапами.

Высокиетехнологиивходятвнашужизнь

пробелы. Нашсегодняшнийгеройнетолько

прожилдо15 лет. Стоитсказать, чтоотецДжоэля

семимильнымишагами.Знаменитыйкритерий

интересныйчеловек, ноинеплохойменеджер,

— новозеландец, и, благодаряэтому, нашгерой

Дозуа: «High tech. Low life» («Высокиетехноло-

ипустьтебянесмущает, чтоегоимянеявляется

теперьимеетдвойноегражданствоивозмож-

гии. Низкийуровеньжизни») пересталбытьлишь

нарицательнымизнакомымкаждомушкольнику.

ностьсвободно, влюбоевремя, посещатьродину

фразой, емкоописывающейжанркиберпанк. Он

ПредставляютебеДжоэляСпольски— разра-

смешныхптичеккиви. Впрочем, мыотвлеклись.

ужевполнеспособенпретендоватьназвание

ботчикаПО, экс-сотрудникаMicrosoft, автора

КогдаДжоэлюисполнилось15, всесемейство

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

Спольскиперебралосьнапостоянноеместожи-

Притакомположениивещейсовсемнеудиви-

блога«Joel on Software», атакжеуспешного

тельствавИзраиль, аеслиточнее— вИерусалим.

тельно, чтоличностей, имеющихтоилииное

предпринимателяиоснователянескольких

Школунашгеройзаканчивалнановомместе, и

отношениексфереIT, скаждымднемстановится

стартапов.

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

всебольше. Ипустьвсемнамхорошознакомы

ИЗАЛЬБУКЕРКЕВКИБУЦУ

Поегособственномупризнанию, программи-

именатакихIT-знаменитостейипервопроходцев

роватьонначалещедопереезда, находясьв

какСтивенДжобс, РичардСтоллманилидядюш-

Исходяизперечисленныхзаслуг, ужеможно

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

каБиллиГейтс(кудаужбезнего), мынезнаемни

понять, чтомистерСпольски— личностьвесьма

оченьхорошаяпамятьнадатыицифры, так

влицо, нипоименимногихдругихталантливых

многограннаяинепривыкидтипонакатанной

каконуточняет, чтонадворебыл1978 годиего

специалистов.

колее. Забегаявперед, скажу, чтоэтовпечат-

первоймашинойсталIBM-360, стоявшийв

Засценойсегоднягораздосложнееследить— в

лениесовершенноверно— егосудьбу, всамом

вычислительномцентреУниверситетаНью-Мек-

последние5-10 летонасильноразрослась,

деле, трудноназвать«обыкновенной» или

сико. Замечу, чтоэтосегоднялюбой15-летний

конкуренция, всвоюочередь, тожесталагораздо

«ничемнепримечательной».

мальчишкаувлеченкомпамиивних, какмини-

жестче, адалеконевсеталантливыеспециа-

Нокакимбычеловекнибылособенным, начало

мум, неплохоразбирается, автовремяинтерес

листыещеихорошиеменеджеры. Имзачастую

жизненногопути, какправило, сводитсяксухим

Джоэляможнобылоназватьэкзотическим.

неудаетсяудачно«продатьсебя» илисвои

строчкам, похожимнаанкетныеданные—

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

разработки. Многиетакиостаютсяличностями

«родился, учился». Сэтимврядлиможночто-то

несколькопреждевременно. Деловтом, чтов

«широкоизвестнымивузкихкругах».

поделать, такчтонебудемимипренебрегать—

Израилевоеннообязаннымиявляютсядаже

Норубрика, вчислепрочего, былапридумана

ДжоэлСпольскиродился1965 году, вгородеАль-

девушки, неговоряужеопарнях. Такчтопосле

именнодлятого, чтобыликвидироватьэти

букерке, штатНью-Мексико, гдеблагополучно

окончанияшколыДжоэлотправилсявовсене

XÀÊÅÐ 07 /127/ 09

073

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

>>m

 

w Click

to

 

 

 

 

сцена

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

САЙТSTACK OVERFLOW. НАЙ-

САЙТSERVER FAULT,

ДИ10 ОТЛИЧИЙССОСЕДНИМ

ПРАКТИЧЕСКИКЛОНSTACK

СКРИНШОТОМ:)

OVERFLOW

грызтьгранитнауки, ачестноотдаватьдолг названномуотечеству.

Онотслужилвпарашютно-десантныхвойсках двагода, правда, споправкойнаспециальнуюпрограммуNachal. Благодаряпоследней, большуючастьслужбыСпольскипровел, отнюдь немаршируяпоплацувуниформесавтоматом наперевес, авкалываянахлебозаводеOranim. Тоесть, программафактическизаменяласлужбу неменееполезнойработойвкибуце— сельскохозяйственнойкоммуне. Впрочем, оттакой заменыпребываниеСпольскивармиинестало болеерадужным. Полученноепоокончании службызваниесержантаондосихпорназывает «абсурдом» иослужбевспоминает, восновном, в негативномключе. «Ясовершеннонеспособенподчинятьсядисциплине, ужасенвлюбых вопросах, касающихсяфизическойподготовки, иненавижукаждуюминуту, которуюпровелв армии», — пишетонвсвоемблоге.

ЧЕЛОВЕК,КОТОРЫЙ УВОЛИЛСЯИЗMICROSOFT

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

имозговойдеятельности, всесложилоськак нельзялучше. Спольскибезпроблемпоступилв университетПенсильвании, гдеотучилсягод, а послеперевелсяводинизпрестижнейшихвузов планеты— Йельскийуниверситет. Именноего-то Джоэлиокончилсотличиемв1991 году, получив желаннуюстепеньбакалавравобластивычислительнойтехники.

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

— послеокончанияуниверситетапервымместом егоработыстала, нимного, нимало, компания Microsoft. Конечно, «мелкомягкие» ещенебыли темВеликимиУжаснымMicrosoft, коимявляются сейчас, но, всеже, вMS работалопорядкапяти тысяччеловек, ужевышлавсветWindows 3.1 и 3.0, придумалиисобралиMicrosoft Office, инеза горамибылрелиз95-ой. Джоэлзанялвмолодом

истремительноразвивающемсяMicrosoft далеко непоследнююдолжность— онсталруководите-

лемпроекта, возглавивкоманду, работавшую надExcel. Спольскирассказывает, чтоотвечал за«программируемость», планомернозаменяя ранееиспользовавшийсяязыкExcel macro (XLMs) наExcel Basic, которыйсоздавалсяна основеVisual Basic. ВпоследствииязыкпереименоваливVisual Basic дляприложений. Ивсебыничего, Джоэлдействительноочень хотелделатькарьеруидерзать, аMicrosoft быладляэтогоотличнымплацдармом, только вотпривсемпритом… Спольскиещехотелось

иметьхотькакую-тожизньвнеработы. Например, личную. Так, разнообразияради. Преследуятакие, вобщем-то, нехитрыецели, онперебралсяв Нью-Йорк, гдечестнопопыталсяработатьвконсультационномцентреMicrosoft. Джоэляхватило минутнадесять, послечегоонвужасеуволился изкомпании, решив, чтоэтоявнонедлянего. Чтоподелать, невсемпуть«отсамыхнизов» или возложениелучшихлетжизнинаалтарькарьеры кажутсяперспективным, заманчивымиинтереснымделом. ИдажеизMicrosoft, когдатотпребывалвсамомзените, тожесбегали. Суммарно Спольскипроработална«мелкомягких» 4 года, уволившисьв1995. Следующиедесятьнедель Джоэлпровел, колесяпоШтатамнавелосипеде иразмышляя, кудабыподаться. Врезультате, уезжатькуда-либоизНью-Йоркаоннепожелал, хотятамвыборвакансийдляIT-шника, конечно, гораздобеднее, чемвтойжеКремниевойдолине. ПослеMicrosoft Спольскидовелосьпоработать ещевдвухконторах, недотягивающихдоуровня софтверногогигантадажепримерно— вViacom Interactive ServicesиJuno Online Services. Первые являютсяогромныммедийнымхолдингом,

чьеназваниерасшифровываетсякакVideo & Audio Communications. Импринадлежат, например, студииParamount иDreamWorks,

атакженесколькосотентелеканалов, вчисло которыхвходитMTV. Именнопоследним-тои занималсянановойработеСпольски. Нет, не самимканалом, конечно, асозданиемдлянего сервераприложений. НановойдолжностиДжоэл задержалсяещенадвагода, послечегоперешел кJuno Online Services — крупномуамериканскому провайдеру.

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

ОДИНИЗБЕСТСЕЛЛЕРОВСПОЛЬСКИ— «ДЖОЭЛОПРОГРАММИРОВАНИИ»

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

СВОЙЛУНА-ПАРК

Как-тоуДжоэляСпольскиспросиливинтер- вью, чтобыонпосоветовалтем, ктособирается начинатьсвоедело(речь, конечноже, шлаоб IT-сфере). Джоэлпошутил, сказав: «Одумайтесьи неделайтеэтого!», нопотомвсежеответилсерьезно. Иглавнойрекомендациейбыло: «Найдите себехотябыодногосооснователя, алучшедвоихтроих, потомучтовамдействительнопонадобятсяпартнерыиединомышленники».

КогдасамСпольскирешилсяосноватьсвою фирмуиуволилсяизJuno, надворестоял2000-й год. Партнеромпобизнесудлянашегогероястал егодруг— МайклПраойр. СнимДжоэлпознакомилсянапоследнемместеработы, всевтомже

Juno Online Services. Майкл— тожеспециалист вобластивычислительнойтехникисдипломом Дартмутскогоколледжаитожеимеетопределеннуютягукписательству, например, некоторое времяонвелсобственнуюколонкувжурнале

Make Magazine.

СпартнеромСпольскинепрогадал. Когдас моментастартаобщегоделапрошло6 лет, Прайорнаписалусебянасайте: «Мывбизнесе ужецелых6 лет, ияснетерпениемждуследующихшести». Какпоказаловремя, слованаветер Майклбросатьнесклонен— онипосейдень работаетвFog Creek Software. Да, именнотакое названиев2000 годуполучилоихначинание. Чтолюбопытно,никакихконкретныхзадумокили наработокуначинающихстартаперовнебыло. Имелосьразвечтобольшоежелание«построить свойЛуна-парк»,тоесть—создатьтакуюсофтвер- нуюкомпанию,вкоторойдействительнохотелось быработать,своегородаидеалиэталон.Иэтот

074

XÀÊÅÐ 07 /127/ 09

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

>>

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

сценаw

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

 

 

 

 

 

 

o

m

 

w

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

СОТРУДНИКИВFOG CREEK НЕ УЮТНЫЙБЛОЖЕКМИСТЕРА СКУЧАЮТ СПОЛЬСКИ

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

изFogCreekSoftwareвотуже6летнеувольнялось ниодногосотрудника.Совсемнеудивительнодля компании,наофициальномсайтекоторойкрасуетсясхема:«ЛучшиерабочиеусловияÆЛучшие программистыÆЛучшееПОÆProfit!».

«ТУМАННАЯГАВАНЬ»

ЧемжеименнозанимаетсяFog Creek Software? Этонебольшойштатталантливыхпрогеров, чья работаполностьюсосредоточиласьвокругсозданияинструментовдляпланированияпроектов, хотяисходнофирманачиналасконсалтинговой деятельности. Но«завязать» сконсультациями Fog Creek пришлосьдовольнобыстро. Такуж совпало, чтовначале2000 годалопнулпузырь доткомов, утянувнадноогромноеколичествоITкомпанийиподорвавдовериектакимпроектам вообще. Впоследствииспроснаконсалтинговые услугивэтойобластитожерезкопошелнаспад. Тогдакомпанияипереориентироваласьна созданиеипродажусофта, притомбезкакоголибоущербадлясебя. Ужев2001 годуFog Creek выпустилавсветсразудвесофтины— FogBugz и CityDesk. FogBugz изначальнобылпрограммой длявнутреннегопользования, нонаступили тяжелыевремена, консультациямпришелконец, ионпревратилсявПродукт. Современемиз обыкновеннойбаг-трекалкиFogBugz эволюционировалвполноценнуюсистемууправленияпроектами. CityDesk, всвоюочередь, был

CMS-кой(content management system, система управленияконтентом, илиже«конструктор сайтов»). ВотличиеотFogBugz, онстреском провалился, пустьинесразу. НадCityDesk продолжалиработатьвплотьдо2003 года, нопотом всежеоставилипопыткиреанимировать, посути, мертворожденнуюпрогу. Проблемазаключаласьвналичиинарынкеболееинтересныхи продуманныхконкурентскихпрограмм— взять хотябытуJoomla, которая, ктомуже, совершенно бесплатна.

XÀÊÅÐ 07 /127/ 09

ВFOG CREEK МОЖНОВСТРЕТИТЬДАЖЕБЕТМАНА!

ПозжеуFog Creek появилсяитретийпродукт— Fog Creek Copilot: удаленнаяадминистрилкав помощьспецамтехническойподдержкиииже сними. Новотнанем-тосписокпродукцииFog Creek изаканчивается. Этитрисофтины— все, чтобыловыпущеноСпольскиисотоварищами запрошедшиегоды, ивсе, чемониторгуют.

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

ДРУГИЕИПОСТАСИ ДЖОЭЛЯСПОЛЬСКИ

ПустьпокоритьрынокпрограммногообеспеченияуFog Creek невышло, ДжоэлСпольски несильнорасстроилсяпоэтомуповоду. Создав компанию, котораянехватаетзвездснеба, но вкоторойемуиегосотрудникамхорошоикомфортноработается, он, похоже, вполнеудовлетворилсядостигнутым. Ктомуже, одновременно соткрытиемсобственнойфирмыДжоэлдал зеленыйсветиещеодномуначинанию— в2000 годуонзавелличныйблог, найтикоторыйможно поадресуhttp://www.joelonsoftware.com.

Каквыяснилось, умистераСпольскиесть, чтоповедатьлюдям, ионоченьлюбитписать: часто, со вкусоминеограничиваясебяобъемамиирамками. ВблогеДжоэлрассказываетосамыхразных вещах, начинаяотстатей, целикомиполностью посвященныхразличнымсторонампрограммированияизаканчиваясоветами, каклучшевести себявовремясобеседованияприприемена работу. Управлениюперсоналом, менеджментуи другим«социальным» аспектамведениябизнеса здесьвообщеуделяетсянемаловнимания— это однаизизлюбленныхтемнашегогероя.

Витоге, ресурсJoel on Software набралогромную популярностьнетольковпрограммерскихи IT-шныхкругах— своимлегкимстилемиюмором Спольскисумелпривлечьинестольискушенных читателей. Одното, чтоегостатьипереведены

добровольцамина42 языка(ВеликийиМогучий тамтожеимеется), ужеговоритсамозасебя.

ИхотяДжоэлвоткрытуюникогданеназывалза- пускблогаPR-ходом, егопопулярность, конечно, немогланесказатьсянарепутацииифинансовыхпоказателяхFog Creek Software. Широкая публикаузналаомаленькойкомпаниисуникальнымиусловиямиработывомногомблагодаря именноэтомублогуиталантумистераСпольски красивоияркоизлагать. Однимтольковедением блоганашгеройнеограничился. Натекущий моментоннаписалужепятькниг, втомчислеипо мотивамсвоихсетевыхпубликаций. Некоторые еготруды(вчастности, «Джоэлопрограммировании», «ЛучшиепримерыразработкиПО»и«РуководствоДжоэляСпольскипоподборупрограммистовиуправлениюими») былипереведенына русскийикупитьихнесоставитбольшоготруда. ЛишьпарулетназадДжоэлСпольскирешил отвлечьсяотработынаднемногочисленными проектамиFog Creek иписательства. Видимо, емузахотелосьпопробоватьчто-нибудьновое,

итогданасветпоявилсясайтStackOverflow

(http://www.stackoverflow.com). Краткоэтот ресурсможноохарактеризоватькакпомесьDigg

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

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

иответы(аналогичнаяDigg), системарепутации, возможностьправкичужихпостовикомментариев(всеобщее, каквWiki) ивозможность писатьикомментироватьиз-подanonymous’а— делаютStack Overflow оченьполезнымресурсом. Брат-близнецStack Overflow — сайтServer Fault(http://www.serverfault.com) появилсячуть позже, ион, какнетруднодогадаться, охватывает несофтверные, а«железные» проблемы. Что касаетсяпринципаработы, здесьServer Fault совершенноаналогиченStack Overflow. Оба сайтаюзаютOpenID. Покаэтипроектысовершеннобесплатны, нанихнетниконтекстной, ни какой-либодругойрекламы, ниплатныхуслуг. Какдолгоэтопродлится, неизвестно, потому какопределеннуюпопулярностьобасайтауже снискали, идальшеонаявнобудеттолькорасти. ОмонетизациисвоихновыхстартаповДжоэл Спольскипоканеговорилнислова.z

075

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

 

 

 

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

>>m

 

 

 

 

 

 

 

 

 

 

w

Click

to

 

 

 

 

unixoid

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

 

 

 

 

 

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

-x cha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЕВГЕНИЙ ЗОБНИН

/ZOBNIN@GMAIL.COM /

НАПУТИ КСОВЕРШЕНСТВУ

ОбзоринтересныхновшествмираLinux

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

>> unixoid

ОЧЕЛОВЕЧИВАНИЕ ПАКЕТНОГОФИЛЬТРА

СистемафильтрациипакетовядраLinux прошладолгийпутьразвития. Вядреверсии2.0 появиласьперваяреализацияBSD-подобного межсетевогоэкранаipfw изакрепленнаяза нимутилитауправленияipfwadm. Вверсии2.2 ихсменилфайрволipchains. Свыходомветки 2.4 он, всвоюочередь, былвытесненсвязкой netfilter/iptables. Netfilter действительно хорош: онграмотноспроектирован; обладает мощнымивозможностямидляконфигурированиятакихфич, кактрансляциясетевыхадресов, прозрачноепроксирование, перенаправлениетрафика, балансировканагрузки; умеет отслеживатьсостояниесоединений(stateful firewalling). Этопозволяетраспознаватьи блокировать, например, stealth-сканирование; аблагодарядополнительнымплагинамон способенобрабатыватьпакетыпрактически любоготипа. Огорчаеттолькоспособегоконфигурирования, которыйоснованнапередаче

невнятныхаргументовкоманднойстроки утилитеiptables.

Можнодолгоспоритьопреимуществахи недостаткахспособанастройки, предлагаемого iptables, нофактостаетсяфактом: онслишком громоздокиориентированнамашину, анечеловека. Командаразработчиковnetfilter ужене разсмотрелавсторонуальтернативныхсистем конфигурирования, предложенныхпакетным фильтромpf иразличнымиоберткамивокруг iptables (напримерferm, ferm.foo-projects.org).

Переписатьтолькосамуутилитунепредставлялосьвозможным, потомукаконабыла тесносвязанаскодомядра. Patrick McHardy, одинизактивныхразработчиковподсистемы netfilter, взялсязапереработкувсейсистемы фильтрациипакетов. Надосказать, онаибез тогострадалаотдругихнедостатков(необходимостьвперезагрузкевсехправилвовремяих обновления, возможностьзадаватьтолькоодну цельдлякаждогоправила, непродуманныймеханизмрасширений, слишкомплоскаямодель

кода, недопускающаясоздаватьвысокоуровневыеабстракции, противоречивыеспособы сопоставлениясшаблоном).

Врезультатенасветпоявилсяnftables — пакетныйфильтрновогопоколения, состоящийиз трехвзаимосвязанныхчастей:

1.Пакетныйфильтр, работающийвнутриядра.

2.Утилитапользовательскогоуровняnft.

3.Библиотекаlibnl, связывающаякодядраи утилитуnft черезмеханизмnetlink.

Утилитаnft читаетфайлконфигурации(который теперьпохожскореенаскрипт, чемнасписок правил), генерируетнаегоосновепростой компактныйпсевдокодипередаетэтиданные ядру. Кодnftables, работающийвнутриядра, разбираетпсевдокодиприменяетегоправила кпроходящимпоцепочкампакетам.

Дляконфигурированияnft применяетсянастоящийязыкпрограммирования, которыйпозволяетзадаватьусловия, создаватьпеременные, выполнятьматематическиеоперации. Онпрост восвоенииидостаточноразвитдлясоздания

076

XÀÊÅÐ 07 /127/ 09

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

 

 

 

 

F

 

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

 

 

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

>>

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

unixoidw

 

 

to

 

 

 

 

 

 

w Click

 

 

 

 

 

 

 

 

 

 

 

 

o

m

 

 

w

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

-x cha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Из-за отсутствия требований к обратной

 

 

 

 

совместимости разработчики ext4 смогли

 

 

 

 

применить самые изощренные техники для

 

 

 

 

повышения производительности, надеж-

 

 

 

 

ности и расширяемости файловой системы.

 

 

 

 

Далее мы рассмотрим все ключевые нов-

 

ФАЙЛОВАЯСИСТЕМАEXT4 ИТЕСТЫBONNIE++

шества ext4, которые позволили ей стать од-

 

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

 

 

 

 

на функциональность файловых систем:

 

 

 

 

• 48-битная адресация блоков. Размер

 

 

 

 

файловой системы ext3 ограничен 16

 

 

 

 

терабайтами, а размер файла — двумя,

 

 

 

 

что может быть недостаточно для больших

 

 

 

 

хранилищ данных и систем потокового ве-

 

 

 

 

щания мультимедиа. Файловая система ext4

 

 

 

 

использует 48-битную адресацию блоков и

 

ФАЙЛОВАЯСИСТЕМАEXT4 ИТЕСТЫIOZONE

доводит эти ограничения до фантастичес-

 

ких в наши дни 1 экзабайта (1 Эб = 1048576

 

 

 

 

Тб) и 16 Тб соответственно.

 

 

 

 

• Механизм пространственной записи

 

сложнейшихправилобработкипакетов. При-

 

обладающихсовершенноинымсинтакси-

файлов. Файловая система ext3 исполь-

 

веденныйавторомпроектакодфильтрации

 

сомправил, вытекаетизобщейархитектуры

зует традиционную методику слежения

 

исходящеготрафикавыглядиттак:

 

системы.

за блоками данных файлов, основанную

 

 

 

ОЧЕРЕДНОЕРАСШИРЕНИЕ

на карте соответствия. Последняя пред-

 

Примерконфигурационного

 

ставляет собой закрепленный за файлом

 

файлаnftables

 

Для Linux было создано и портировано из

список адресов блоков файловой системы,

 

include "ipv4-filter"

 

других операционок огромное количество

хранящих информацию этого файла. Во

 

 

 

 

файловых систем, но только одна из них

время чтения или записи в файл файловая

 

chain filter output {

 

может гордо носить имя официальной — это

система проходит по карте соответствия в

 

ct state established,related

 

файловая система ext3.

поисках нужного блока. Недостаток: низкая

 

accept

 

ФС ext3 — уже третья эволюция стандартной

эффективность. Карта соответствия боль-

 

tcp dport 22 accept

 

файловой системы Linux. До нее была ext2,

шого файла может содержать от нескольких

 

counter drop

 

в основном отличающаяся отсутствием

десятков до сотен тысяч записей, проход по

 

}

 

журнала. Еще раньше была ext, первая

которым отнимет значительное время. ФС

 

 

 

файловая система, созданная специаль-

ext4 использует более современный подход.

 

 

 

 

Аспособинкрементальногодобавления

 

но для Linux. Однако надолго в ядре она

Он основан на так называемых экстентах,

 

правилоченьпохожнато, какэтоделаетсяв

 

не задержалась (этому способствовали

которые представляют собой непрерывную

 

OpenBSD:

 

многочисленные ограничения, такие как

последовательность блоков, закрепленных

 

 

 

максимальный размер в 2 Гб и отсутствие

за файлом. Там, где ext3 требовалась карта

 

# nft add rule output tcp dport 22

 

поддержки дат модификации файлов).

соответствия с 10 тысячами элементов,

 

log accept

 

Четвертая реинкарнация файловой

ext4 может хранить информацию о закреп-

 

 

 

системы ext (июнь 2006) стала следстви-

ленных за файлом блоках всего лишь в

 

 

 

Генерируемыйнавыходепсевдокодпрост

 

ем требований разработчиков — новые

нескольких экстентах. Благодаря этому ме-

 

ипрямолинеен. Львинуюдолюработыпо

 

функции и возможности могли нарушить

ханизму ext4 стала более производительной

 

проверкеправилвозложилинакомпилятор

 

обратную совместимость или сделать

и менее подверженной фрагментации.

 

nft. Этопозволилосущественносократитькод

 

файловую систему нестабильной и слишком

• Многоблочноераспределение. Перед

 

фильтрации, работающийвнутриядра. Теперь

 

сложной для поддержки. Спустя 5 месяцев

записью данных на диск файловая система

 

онвыполняеттолькобазовыйнабордействий,

 

предварительная версия ext4 появляется в

должна найти нужное количество свободных

 

такихкакразборпакетов, сравнениеданных

 

ядре Linux 2.6.19, помеченная как «экспе-

блоков для размещения данных. ФС ext3

 

ит.д.

 

риментальная разработка». Допиливание

использует для этого технику поблочного

 

Вотличиеотiptables, утилитаnft нетактесно

 

файловой системы продолжалось больше

распределения, когда за один проход может

 

связанасядромипредставляетсобойвсего

 

года, и только с выходом ядра версии 2.6.28

быть найден только один свободный блок.

 

лишьфронтенддлягенерациипсевдокодаили

 

(25 декабря) ext4 становится стабильной

Эта особенность делает ext3 более медлен-

 

инкрементальногодобавленияновыхправил.

 

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

ной в сравнении с другими современными

 

Возможностьсозданияновыхфронтендов,

 

тестирования.

файловыми системами. ФС ext4 хранит не

XÀÊÅÐ 07 /127/ 09

077

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

BUY

>>m

 

 

 

 

 

w

Click

to

 

 

 

 

unixoid

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

ПРОИЗВОДИТЕЛЬНОСТЬTOMOYO LINUX

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

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

Предварительное распределение. Существует целый класс приложений, которым необходимо заранее выделять дисковое пространство под файлы. Это различные системы бэкапа, клиенты p2p-сетей и любые программы, от которых требуется стабильная и устойчивая работа. Еще совсем недавно для выполнения этой операции приложениям приходилось самостоятельно создавать пустые файлы, заполненные нулями. Затем разработчики ввели функцию libc posix_fallocate(), которая, по сути, занималась тем же самым.

И только в последних версиях файловой системы ext3 и новой ext4 появилась возможность заранее распределить дисковое пространство на уровне файловой системы. Это позволило поднять скорость выполнения операции и снизить фрагментацию за счет однократного непрерывного выделения блоков.

Больший размер inode. Размер inode увеличен со 128 до 256

байт, и появилась возможность увеличить точность временных меток (время создания и модификации файлов) до наносекунды и вместить в inode несколько расширенных атрибутов. Последнее означает, что доступ к атрибутам ACL, SELinux, Samba и другим теперь может происходить до 3-7 раз быстрее.

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

Группы неиспользуемых inode. Файловая система ext4 хранит информацию о неиспользуемых inode, что позволяет утилите fsck обойти эти индексные дескрипторы стороной во время проверки файловой системы. Выигрыш в скорости проверки может составить от 2 до 20 раз, в зависимости от заполненности файловой системы.

Контрольные суммы журнала. ФС ext4 хранит контрольные суммы для каждой журнальной транзакции. Это делает файловую систему более надежной в сравнении с ext3, ошибка в журнале которой может привести к последующей порче данных во время проверки файловой системы.

Онлайн-дефрагментация. В будущем планируется реализовать возможность «самодефрагментации» файловой системы по мере появления в этом необходимости. Пока же доступна специальная утилита e4defrag, способная дефрагментировать как отдельные файлы, так и всю файловую систему.

Неограниченное количество подкаталогов. Максимальное коли-

чество подкаталогов в ext3 — 32000. Новая ФС полностью снимает это ограничение.

Несмотря на отсутствие поддержки обратной совместимости в самой ФС, драйвер ext4 поддерживает прямую совместимость со своей предшественницей. ФС ext3 можно смонтировать в режиме ext4, используя при этом большинство преимуществ новой ФС.

НОВЫЙ ЭТАП В РАЗВИТИИ GRUB

Вместе с пингвином развиваются и средства его загрузки. Еще совсем недавно единственным загрузчиком Linux был неуклюжий, но хорошо справляющийся со своими задачами LiLo. Позднее его сменил пришедший из мира GNU/Hurd «многоцелевой» grub, который по уровню функциональности вполне мог потягаться с первыми версиями операционной системы MS-DOS.

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

Поддержка скриптинга, включая условия, циклы, переменные и функции.

Графический интерфейс.

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

Портабельность на множество архитектур.

Интернационализация. Поддержка не-ASCII кодировок, каталоги сообщений по типу gettext, шрифты, графические консоли и т.д.

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

НАЗАДВПРОШЛОЕ:

КОМАНДНЫЙ ИНТЕРПРЕТАТОРВЯДРЕ

Unix стал первой операционной системой, командный интерпретатор которой был вынесен в отдельный процесс. Matt Ranon решил вернуть все на прежние места и представил патч с реализацией интерфейса командной строки в ядре Linux. Kcli базируется на библиотеке libcli и предназначен для применения в монолитных образах Linux для встраиваемых систем.

Модульный, иерархический, объектно-ориентирован- ный фреймворк для файловых систем, файлов, дисков, терминалов, команд, таблиц разделов и загрузчиков ОС.

Кросс-платформенная установка (позволяет инсталлировать grub с разных архитектур).

Спасательный режим для «незагружаемых случаев».

Избавление от Stage 1.5.

Исправление ошибок дизайна grub1, которые не могли быть решены с сохранением обратной совместимости (например, способ именования разделов).

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

078

XÀÊÅÐ 07 /127/ 09

Соседние файлы в папке журнал хакер