IPtables. Настройка Network Address Translation(NAT)

Если у вас есть несколько компьютеров соединенных в локальную сеть  и только один IP адрес для выхода в Интернет, то вам нужно использовать трансляцию сетевых адресов(NAT) для того, чтобы все пользователи сети могли подключится к сети Интернет. NAT «скрывает» компьютеры в локальной сети, за одним внешним IP адресом, подменяя адреса и порты для выхода наружу и обратно. Это позволяет компьютерам внутри сети осуществлять подключения к любому хосту в Интернет, будь то веб-серверы, DNS серверы, POP3 серверы или иные Интернет-сервисы. Единственным ограничением является то, что компьютер внутри сети не может получать подключения извне.

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

Принцип работы NAT заключается в подмене адреса и порта источника в пакетах посылаемых из локальной сети в Интернет. IP адрес источника всегда заменяется на внешний IP адрес, а порт источника на какой-нибудь не занятый порт. Когда ответный пакет возвращается, его порт назначения используется для определения IP адреса и порта получателя пакета в локальной сети.

Для того, чтобы настроить NAT, всё что вам реально нужно это два сетевых интерфейса - один для внутренней сети, другой для внешней подключенный к Интернет. Если всё это у вас есть, то следуйте инструкции ниже:

1. В локальной сети, каждый компьютер должен иметь IP адрес из диапазона частных сетей, типа 192.168.0.0, включая шлюзовой(gateway) компьютер.

2. Установите в качестве шлюза по умолчанию, для всех компьютеров локальной сети, IP адрес шлюза(gateway). Это можно сделать с помощью DHCP.

3. Удостоверьтесь в том, что на шлюзе включен IP forwarding(IP форвардинг) в модуле Network Configuration(Конфигурация сети) в разделе Routing and Gateways(Маршрутизация и шлюзы).

4. На главной странице модуля Linux firewall(Межсетевой экран) на шлюзовой машине, выберите таблицу Network address translation(Трансляция сетевых адресов) из списка таблиц и нажмите кнопку Showing IPTable(Показать IPtable).

5. Нажмите кнопку Add rule(Добавить правило) в секции Packets after routing(Пакеты после маршрутизации) и вам откроется форма создания правила.

6. Установите поле Action(Действие) в значение Masquerade(Маскарадинг).

7. Для того, чтобы определить какие порты будут использоваться для маскарадинга, установите поле Source ports for masquerading(Порты источника для маскарадинга) в значение Port range(Диапазон портов) и введите начало и окончание диапазона портов. Обычно, бывает достаточно просто выбрать Any(Любой), чтобы использовать любой доступный порт.

8. Установите критерий Outgoing interface(Исходящий интерфейс) в значение Equals(Равно) и выберите внешний интерфейс из списка, типа ppp0.

9. Нажмите кнопку Save(Сохранить) внизу страницы, чтобы сохранить правило и вернутся к списку цепочек и правил.

10. Нажмите Apply Configuration(Применить конфигурацию) для активизации нового правила.

 

IPtables позволяет комбинировать NAT с другими правилами из таблицы Packet filtering(Фильтрация пакетов) для блокирования подключений файрволла самого к себе. Вы также можете определять запрещающие правила которые будут исполняться после маршрутизации пакетов для блокирования доступа к Интернет некоторым хостам внутри сети, либо для ограничения портов, которые они(хосты) могут использовать.

Инструкция по настройке NAT, описанная выше, будет работать в любой сети, которая имеет шлюз с одним внешним IP адресом. Однако, если ваш шлюз имеет статический IP адрес, лучше использовать Source NAT вместо Masquerade на шаге 6. Когда вы используете маскарадинг, все подключения проходящие через firewall будут потеряны если внешний сетевой интерфейс «упал», т.е. произошло кратковременное отключение интерфейса, даже если он потом «поднялся» с тем же IP адресом. Если внешний интерфейс имеет динамический IP адрес, то это не имеет значения, так как подключения все равно будут потеряны в любом случае. Но если вы используете статический IP адрес, то подключения сохранятся даже если будет кратковременное пропадание сети.

Для того, чтобы использовать это, выберите Source NAT в поле Action на шаге 6. Затем укажите в поле IPs and ports for SNAT(IP адреса и порты для SNAT) диапазон IP адресов для SNAT и введите статический внешний IP адрес в поле рядом. Все остальные шаги остаются теми же самыми.




Ссылки:

К содержанию

© Copyright 2004-2017 - CMS Made Simple
Сайт работает на CMS Made Simple version 1.4.1

© Все печеньки Break-people.ru принадлежат авторам проекта.

Яндекс цитирования Рейтинг@Mail.ru Яндекс.Метрика