iptables DNAT Проброс порта за NAT

Для проброса порта сервера, находящегося за NAT средствами iptables

Смотрим

Как раздать интернет средствами Linux и Iptables

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

  1. Разрешить форвардинг пакетов

    Или

    Для того, чтобы форвардинг работал и после перезагрузки

    Находим строчку

    И раскомментируем ее

    раздать интернет linux

  2. Вместо eth0 подставляем интерфейс, который подключен к провайдеру

  3. Убедимся, что правило появилось

    iptables nat masquerade

  4. Для того, чтобы настройки iptables вернулись после перезагрузки

    Правим файл /etc/network/interfaces, допишем туда

    раздаем интернет debian squeeze

Комнады iptables

  1. Прохождение цепочек iptables для транзитныхпакетов
    Таблица Цепочка Назначение
    mangle PREROUTING Внесение изменений в заголовок пакета, TOS, TTL, MARK
    nat PREROUTING DNAT, фильтрацию здесь не делать
    Принятие решения о дальнейшей маршрутизации
    mangle FORWARD Использовать только в исключительных случаях, когда необходимо внести некоторые изменения в заголовок пакета между двумя точками принятия решения о маршрутизации
    Filter FORWARD В цепочку FORWARD попадают только те пакеты, которые идут на другой хост Вся фильтрация транзитного трафика должна выполняться здесь. Не забывайте, что через эту цепочку проходит траффик в обоих направлениях, обязательно учитывайте это обстоятельство при написании правил фильтрации.
    mangle POSTROUTING Эта цепочка предназначена для внесения изменений в заголовок пакета уже после того как принято последнее решение о маршрутизации.
    nat POSTROUTING Цепочка предназначена для SNAT и Masquerading
  2. Прохождение цепочек iptables для локальных пакетов
    mangle PREROUTING Внесение изменений в заголовок пакета, например для изменения битов TOS
    nat PREROUTING DNAT, не для фильтрации пакетов
    Принятие решения о маршрутизации
    mangle INPUT Здесь вносятся изменения в заголовок пакета перед тем как он будет передан локальному приложению
    filter INPUT Здесь осуществляется фильтрация
  3. Прохождение цепочек iptables от локальных пакетов
    mangle OUTPUT Здесь производится внесение изменений в заголовок пакета. Выполнение фильтрации в этой цепочке может иметь негативные последствия.
    nat OUTPUT Эта цепочка используется для трансляции сетевых адресов (NAT) в пакетах, исходящих от локальных процессов брандмауэра.
    Filter OUTPUT Здесь фильтруется исходящий трафик.
    mangle POSTROUTING Цепочка POSTROUTING таблицы mangle в основном используется для правил, которые должны вносить изменения в заголовок пакета перед тем, как он покинет брандмауэр, но уже после принятия решения о маршрутизации. В эту цепочку попадают все пакеты, как транзитные, так и созданные локальными процессами брандмауэра.
    nat POSTROUTING Используется для SNAT, фильтрацию производить не стоит, однако можно останвливать DROP
  4. Команды iptables
    • -A, —append — добавить новое правило в конец цепочки
    • -D, —delete — удалить правило
    • -R, —replace — перезаписать одно павило другим
    • -I, —insert — вставляет правило
    • -L, —list — вывод списка правил в заданной цепочке
    • -F, —fush — сброс всех правли в цепочке
    • Сохранить правила iptables
    • Восставновить правила iptables
    • Нумерованый список правил iptables

Оригинал статьи тут.