01-06-2008 15:55
Да, придется снова компилировать ядро. Нам необходимо добавить некоторые компоненты. Мы будем нуждаться в:
К счастью мы можем настроить весь этот "список на десять листов", в разделе "Networking Options", при конфигурировании ядра. Как видите, на Рисунке 3-1, все, что нам необходимо (и кое что другое, что необходимо для одной из следующих частей этой главы, Port Forwarding), доступно в рамках одного экрана. procfs можно обнаружить в секции конфигурирования ядра filesystems, под пунктом "proc filesystem support". А sysctl в "general setup". Однако, что означают все эти штуки?

Рисунок 3-1. Конфигурирования Linux-ядра.
Network firewalls и IP Firewalling позволит нам использовать ipchains, чтобы блокировать некоторые пакеты. Это обязательная часть, которая будет использована как основа для всего следующего далее. Если галочка IP: firewalling не установлена, то вы не сможете компилировать masquerading. Это, по крайней мере насколько я смог выяснить, код ядра, который позволяет внимательно всматриваться в сетевые пакеты и принимать/отклонять их.
IP transparent proxy support тоже используется для masquerading, это код ядра, который позволяет ядру изменять пакеты, которые проходят через него. Эта опция обязательна для IP Masquerading.
IP Masquerading это... угадайте, нужно ли включить эту опцию, чтобы получить IP Masquerading? Этот код ядра позволяет ядро выполнять изменение пакетов на основе правил, определенных ipchains. Помимо этого, привед к тому, что откомпилируются стандартный ipmasq-модули, такие как vdolive, irc, ftp и quake, -- они не работают в рамках обычных ipchains-правил.
ICMP Masquerading позволит использовать ping и traceroute на masq-ированных компьютерах -- это очень удобно для выявления проблем с сетью. Вам потребуется эта функциональность.
Optimization as a router -- определенно полезная штука, поэтому ее надо включить -- это приводит к увеличению пропускной способности, при использовании выделенных IPMasqing-компьютеров (что, впрочем, ранее уже настоятельно рекомендовалось). Ведь, скорость это же прекрасно?
TCP Syncookie support лежит в основне принципа выживания. Мы включаем эту опцию ядра для того, чтобы когда, рано или поздно, появится DoS-атака (denial-of-service attack), мы встретили бы ее во всеоружии. Что такое DoS-атака? Представьте себе такую кошмарную ситуацию: 35-летний родитель попал под шквал вопросов 3-х летнего ребенка. Будучи оглушен тысячами тысяч вопросов "почему?", такой родитель не в состоянии ответить ни на один вопрос. Вот что такое DoS-атака, если пытаться говорить аналогиями. Как же просто устроить такое, практически бессмысленно задавая вопросы, и как же это жутко раздражает! TCP Syncookie support позволит вашим внутренним пользователям использовать Internet, даже во время такой атаки. Круто?
Procfs -- это файловая система proc. Она требуется для того, чтобы включить IP Forwarding support и TCP Syncookie support, о которых мы только что говорили.
Sysctl support позволяет изменять некоторые параметры ядра "на лету", которые нам нужно включить, чтобы использовать... ну? угадали?.. использовать IP Forwarding и TCP Syncookie support.
Теперь, чтобы эти опции действительно включены, компилируем ядро и инсталлируем. Сделали? Теперь перегружаемся, и когда наша система загрузится, выполняем эти две комманды от имени root:
echo 1>/proc/sys/net/ipv4/ip_forward echo 1>/proc/sys/net/ipv4/tcp_syncookies
Проверьте эти две команды, и когда убедитесь, что они работают, откройте на редактирование конфигурационный файл (я люблю использовать для таких целей /etc/rc.d/rc.inet) и добавьте их где-нибудь в начале файла. Теперь после следующей перезагрузки Syncookie and IP_Forwarding support будут автоматически доступны. Поздравляем! Ваша система обеспечивает базовую конфигурацию, требуемую для IP Masquerading.
<< IPMasq-ированная сеть, подключенная через маршрутизатор | Multi Tool Linux | IP Chains >>