Читаем Спецвыпуск журнала «Хакер» 47, октябрь 2004 г. полностью

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

iptables –t nat –A PREROUTING –s 194.225.226.3 –p tcp –dport 3389 –j DNAT –to-destination 10.50.40.255:3389

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


Хочешь большего? Ставь патчи!

Несмотря на столь широкие возможности iptables не превосходит OpenBSD’шный pf по функциональности. Его конкурент умеет различать операционные системы по хитрому fingerprinting’у, защищать сервер от скана портов и т.д. Пришло время нанести ответный удар. Итак, встречаем новый патч для iptables под названием Patch-o-Matic. Набор POM создан для админов, которым мало стандартных возможностей фаервола. Он включает в себя набор модулей, позволяющих творить невероятные вещи. Правда, чтобы пропатчить брандмауэр, придется пройти через семь кругов ада. Сперва убедись, что твое ядро собрано из исходников. Сорцы ядра понадобятся инсталлятору POM, ведь все таблицы и цепочки создаются именно в кернеле. Если твоя система построена на RPM-пакетах, тебе придется перекомпилить ядрышко, предварительно стянув его с ftp.kernel.com (либо с диска). Не забудь включить в ядро поддержку ipfiltering и прочих сетевых вещей. После того как отмучаешься с кернелом, скачивай свежий iptables (http://netfilter.org/files/iptables-1.2.11.tar.bz2 ), а также прилагающийся к нему патч (http://netfilter.org/files/patch-o-matic-ng-20040621.tar.bz2 ). Теперь распаковывай фаервол и компилируй его. Когда ты сделаешь все эти шаги, наступит время для установки патча.

Внутри архива с POM содержится перловый инсталлятор. Для его корректной работы тебе понадобится библиотека termcap, поэтому убедись в наличии файла /etc/termcap. Запусти инсталлятор с параметром base. В интерактивном режиме выбери нужный патч из этой категории (проверенные базовые обновления). К каждому фиксу приводится развернутое описание с конкретным правилом. После базовой установки можно заинсталлить дополнительные патчи, запустив инсталлер с опцией extra. Процесс установки очень прост, ты с ним разберешься без дополнительной помощи. Сложности возникнут после инсталляции.

Итак, все фиксы установлены, и ты жаждешь применить их на практике. Перед тем как это сделать, тебе придется выполнить два финальных шага. Во-первых, зайди в каталог с исходниками ядра и запусти make menuconfig. Затем переходи в раздел ipfiltering и выбирай все патчи, которые были установлены скриптом runme. Сохрани все изменения и открой .config для редактирования. Если ты установил обновления TARPIT и OSF, убедись в наличии двух установочных директив и в случае их отсутствия внеси их самостоятельно.

CONFIG_IP_NF_TARGET_TARPIT=m

CONFIG_IP_NF_MATCH_OSF=m,

Во-вторых, заново перекомпилируй iptables и набери make install, чтобы все модули были скопированы в каталог /lib/iptables. Если все произошло без осложнений, можно сказать, что POM успешно установлен.


Практикуемся?

Настало время для легкой практики после тяжелой установки. Рассмотрим модули из коллекции POM, которые действительно облегчат твою жизнь. Первая библиотека, которая мне очень понравилась, называется time.so. Она поможет активировать правило в определенное время. Это очень удобно, с помощью нее ты можешь либо открывать ночной интернет, либо ограничивать доступ к некоторым популярным ресурсам в час пик. Тебе достаточно добавить одно-единственное правило в цепь INPUT.

iptables -A INPUT -p tcp -dport 80 -m time -timestart 13:00 -timestop 15:00 -days Mon,Tue,Wed,Thu,Fri -j REJECT

Данный рулес запрещает обращаться к вебу в дневное время. Как я уже сказал, ты можешь юзать time.so в качестве ограничителя интернета. Для этого добавь правило в цепь POSTROUTING таблицы nat. Следующий модуль называется random.so. Он позволяет регулировать вероятность правила. В некоторых ситуациях библиотека просто незаменима. К тому же, ты можешь раскрутить своего шефа на апгрейд, показав ему великую нагрузку на сервер. Предварительно ты, конечно же, пропишешь хитрое правило, которое выставляет вероятность 33% на соединение с Web-сервером.

iptables -A INPUT -p tcp -dport 80 -m random -average 33 -j REJECT.

Перейти на страницу:

Похожие книги

Стив Джобс. Уроки лидерства
Стив Джобс. Уроки лидерства

Эта книга – редкая возможность увидеть Стива Джобса таким, каким его видели лишь его самые близкие сотрудники, и разгадать загадку этого легендарного человека. Это возможность понять и освоить оригинальный стиль лидерства Джобса, благодаря которому Apple стала одной из величайших компаний и смогла выпускать продукты, изменившие нашу жизнь. Автор книги, Джей Эллиот, бывший старший вице-президент компании Apple, долгое время работал бок о бок со Стивом Джобсом и сформулировал главные уроки «iЛидерства», которые помогут совершить прорыв компании любого размера и из любой отрасли. Интуитивный и творческий подход Джобса, о котором рассказывается в этой книге, позволит вам преобразить свой бизнес и свою жизнь.Для широкого круга читателей – для всех, кто хочет воспользоваться уроками выдающегося бизнес-лидера.

Джей Эллиот , Вильям Л Саймон , Вильям Л. Саймон , Виктория Шилкина

Деловая литература / Биографии и Мемуары / Публицистика / Прочая компьютерная литература / Управление, подбор персонала / Документальное / Финансы и бизнес / Книги по IT
Тайны и секреты компьютера
Тайны и секреты компьютера

Эта книга предназначена для тех, кто самостоятельно осваивает мир информационных технологий. Программирование в среде Microsoft Office, устройство сетей Internet и Fidonet, работа системы электронной почты, структура системного реестра Windows и файловой системы, строение жидкокристаллических дисплеев и проблема наличия различных кодировок русского языка, — про все это рассказывается в ней. Многообразие тем и легкий стиль изложения сделают ее вашим спутником на долгое время, и вы всегда сможете найти в ней нужную именно в данный момент информацию.Если Вы интересуетесь компьютерными технологиями, желали бы расширить свои знания и умения в этой области, то она Вам наверняка понравится.

Антон Орлов , Антон Александрович Орлов

Зарубежная компьютерная, околокомпьютерная литература / Фантастика / Фэнтези / Прочая компьютерная литература / Книги по IT