Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: iptable сломал башку уже....  (Прочитано 1079 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн galich

  • Автор темы
  • Активист
  • *
  • Сообщений: 253
  • От всех бед - один Reset
    • Просмотр профиля
iptable сломал башку уже....
« : 26 Августа 2010, 23:31:03 »
Вот запись на проброс
-A INPUT -p tcp -m multiport --dport 80,443,25,465,110,995,143,993,587,465,22,3389,8333,8222,902 -j ACCEPT
Все порты открыты кроме 3389. Это порт RDP на подключение к серверу терминалов. Сервер терминалов стоит на виртуальной машине.
вот ещё строки проброса с сетевых карт, где 172.16.33.128 - IP вирт. машины.
-A PREROUTING -t nat -i eth0 -p tcp --dport 3389 -j DNAT --to 172.16.33.128:3389
-A PREROUTING -t nat -i eth1 -p tcp --dport 3389 -j DNAT --to 172.16.33.128:3389
-A PREROUTING -t nat -i ppp0 -p tcp --dport 3389 -j DNAT --to 172.16.33.128:3389
далее
iptables -t filter -A FORWARD -i ppp0 -d 172.16.33.128 -p tcp --dport 3389 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -d 172.16.33.128 -p tcp --dport 3389 -j ACCEPT
iptables -t filter -A FORWARD -i eth1 -d 172.16.33.128 -p tcp --dport 3389 -j ACCEPT

iptables -t nat -A POSTROUTING -s 172.16.33.0/24 -o 78.78.78.78 -j MASQUERADE - с внешки
iptables -t nat -A POSTROUTING -s 172.16.33.0/24 -o 10.18.100.200 -j MASQUERADE - с локалки

Адрес локалки (физическая карта) - 10.18.100.200.
Адрес внешки статический через бридж, pppoe с АДСЛ модема. 78.78.78.78
На этой же машие раздача инета в локалку через ipmasq.
С локалки по 10.18.100.200 подключится не могу, только по IP вирт. машины 172.16.33.128. из внешки ни как.

Подскажите что не так?
Штырлиц не любил торговцев.....ни разу.

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: iptable сломал башку уже....
« Ответ #1 : 27 Августа 2010, 02:05:14 »
1. Транзитный трафик через цепочку INPUT не проходит
2. Вместо разрешения на проброс в FORWARD для каждого случая лучше сделать один раз так: -A FORWARD -m conntrack --ctstate DNAT -j ACCEPT
3. С маскардом вообще синтаксис неверный и незачем оно вообще
4. ipmasq? А ты проверял как оно с твоими правилами уживается?
5. Если хочешь чтобы мы не гадали что за правила у тебя прописаны, показывай sudo iptables-save

Оффлайн galich

  • Автор темы
  • Активист
  • *
  • Сообщений: 253
  • От всех бед - один Reset
    • Просмотр профиля
Re: iptable сломал башку уже....
« Ответ #2 : 27 Августа 2010, 07:58:51 »
1. Транзитный трафик через цепочку INPUT не проходит
2. Вместо разрешения на проброс в FORWARD для каждого случая лучше сделать один раз так: -A FORWARD -m conntrack --ctstate DNAT -j ACCEPT
3. С маскардом вообще синтаксис неверный и незачем оно вообще
4. ipmasq? А ты проверял как оно с твоими правилами уживается?
5. Если хочешь чтобы мы не гадали что за правила у тебя прописаны, показывай sudo iptables-save

iptables-save

# Generated by iptables-save v1.4.2 on Fri Aug 27 07:53:01 2010
*nat
:PREROUTING ACCEPT [116461:9578906]
:POSTROUTING ACCEPT [296:21050]
:OUTPUT ACCEPT [908:60055]
-A POSTROUTING -s 78.78.78.0/24 -o ppp0 -j MASQUERADE
-A POSTROUTING -s 10.18.0.0/24 -o ppp0 -j MASQUERADE
-A POSTROUTING -s 172.16.33.0/24 -o ppp0 -j MASQUERADE
-A POSTROUTING -s 172.16.146.0/24 -o ppp0 -j MASQUERADE
COMMIT
# Completed on Fri Aug 27 07:53:01 2010
# Generated by iptables-save v1.4.2 on Fri Aug 27 07:53:01 2010
*mangle
:PREROUTING ACCEPT [5701575:2738882107]
:INPUT ACCEPT [97770:52597080]
:FORWARD ACCEPT [5603029:2685269365]
:OUTPUT ACCEPT [81614:17711865]
:POSTROUTING ACCEPT [5684642:2702981144]
COMMIT
# Completed on Fri Aug 27 07:53:01 2010
# Generated by iptables-save v1.4.2 on Fri Aug 27 07:53:01 2010
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [1:86]
-A INPUT -i lo -j ACCEPT
-A INPUT -s 127.0.0.0/8 -i ! lo -j LOG
-A INPUT -s 127.0.0.0/8 -i ! lo -j DROP
-A INPUT -d 255.255.255.255/32 -i eth0 -j ACCEPT
-A INPUT -d 255.255.255.255/32 -i eth1 -j ACCEPT
-A INPUT -d 255.255.255.255/32 -i vmnet1 -j ACCEPT
-A INPUT -d 255.255.255.255/32 -i vmnet8 -j ACCEPT
-A INPUT -s 78.78.78.0/24 -i eth0 -j ACCEPT
-A INPUT -s 10.18.0.0/24 -i eth1 -j ACCEPT
-A INPUT -s 172.16.33.0/24 -i vmnet1 -j ACCEPT
-A INPUT -s 172.16.146.0/24 -i vmnet8 -j ACCEPT
-A INPUT -d 224.0.0.0/4 -i eth0 -p ! tcp -j ACCEPT
-A INPUT -d 224.0.0.0/4 -i eth1 -p ! tcp -j ACCEPT
-A INPUT -d 224.0.0.0/4 -i vmnet1 -p ! tcp -j ACCEPT
-A INPUT -d 224.0.0.0/4 -i vmnet8 -p ! tcp -j ACCEPT
-A INPUT -s 78.78.78.0/24 -i ppp0 -j LOG
-A INPUT -s 78.78.78.0/24 -i ppp0 -j DROP
-A INPUT -s 10.18.0.0/24 -i ppp0 -j LOG
-A INPUT -s 10.18.0.0/24 -i ppp0 -j DROP
-A INPUT -s 172.16.33.0/24 -i ppp0 -j LOG
-A INPUT -s 172.16.33.0/24 -i ppp0 -j DROP
-A INPUT -s 172.16.146.0/24 -i ppp0 -j LOG
-A INPUT -s 172.16.146.0/24 -i ppp0 -j DROP
-A INPUT -d 255.255.255.255/32 -i ppp0 -j ACCEPT
-A INPUT -d 78.78.78.78/32 -i ppp0 -j ACCEPT
-A INPUT -j LOG
-A INPUT -j DROP
-A FORWARD -s 10.18.0.0/24 -d 78.85.36.0/24 -j ACCEPT
-A FORWARD -s 172.16.33.0/24 -d 78.85.36.0/24 -j ACCEPT
-A FORWARD -s 172.16.146.0/24 -d 78.85.36.0/24 -j ACCEPT
-A FORWARD -s 78.78.78.0/24 -d 10.18.0.0/24 -j ACCEPT
-A FORWARD -s 172.16.33.0/24 -d 10.18.0.0/24 -j ACCEPT
-A FORWARD -s 172.16.146.0/24 -d 10.18.0.0/24 -j ACCEPT
-A FORWARD -s 78.78.78.0/24 -d 172.16.33.0/24 -j ACCEPT
-A FORWARD -s 10.18.0.0/24 -d 172.16.33.0/24 -j ACCEPT
-A FORWARD -s 172.16.146.0/24 -d 172.16.33.0/24 -j ACCEPT
-A FORWARD -s 78.78.78.0/24 -d 172.16.146.0/24 -j ACCEPT
-A FORWARD -s 10.18.0.0/24 -d 172.16.146.0/24 -j ACCEPT
-A FORWARD -s 172.16.33.0/24 -d 172.16.146.0/24 -j ACCEPT
-A FORWARD -s 78.78.78.0/24 -i eth0 -o ppp0 -j ACCEPT
-A FORWARD -s 10.18.0.0/24 -i eth1 -o ppp0 -j ACCEPT
-A FORWARD -s 172.16.33.0/24 -i vmnet1 -o ppp0 -j ACCEPT
-A FORWARD -s 172.16.146.0/24 -i vmnet8 -o ppp0 -j ACCEPT
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -d 78.78.78.0/24 -o ppp0 -j LOG
-A FORWARD -d 78.78.78.0/24 -o ppp0 -j DROP
-A FORWARD -d 10.18.0.0/24 -o ppp0 -j LOG
-A FORWARD -d 10.18.0.0/24 -o ppp0 -j DROP
-A FORWARD -d 172.16.33.0/24 -o ppp0 -j LOG
-A FORWARD -d 172.16.33.0/24 -o ppp0 -j DROP
-A FORWARD -d 172.16.146.0/24 -o ppp0 -j LOG
-A FORWARD -d 172.16.146.0/24 -o ppp0 -j DROP
-A FORWARD -j LOG
-A FORWARD -j DROP
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -d 255.255.255.255/32 -o eth0 -j ACCEPT
-A OUTPUT -d 255.255.255.255/32 -o eth1 -j ACCEPT
-A OUTPUT -d 255.255.255.255/32 -o vmnet1 -j ACCEPT
-A OUTPUT -d 255.255.255.255/32 -o vmnet8 -j ACCEPT
-A OUTPUT -d 78.78.78.0/24 -o eth0 -j ACCEPT
-A OUTPUT -d 10.18.0.0/24 -o eth1 -j ACCEPT
-A OUTPUT -d 172.16.33.0/24 -o vmnet1 -j ACCEPT
-A OUTPUT -d 172.16.146.0/24 -o vmnet8 -j ACCEPT
-A OUTPUT -d 224.0.0.0/4 -o eth0 -p ! tcp -j ACCEPT
-A OUTPUT -d 224.0.0.0/4 -o eth1 -p ! tcp -j ACCEPT
-A OUTPUT -d 224.0.0.0/4 -o vmnet1 -p ! tcp -j ACCEPT
-A OUTPUT -d 224.0.0.0/4 -o vmnet8 -p ! tcp -j ACCEPT
-A OUTPUT -d 78.78.78.0/24 -o ppp0 -j LOG
-A OUTPUT -d 78.78.78.0/24 -o ppp0 -j DROP
-A OUTPUT -d 10.18.0.0/24 -o ppp0 -j LOG
-A OUTPUT -d 10.18.0.0/24 -o ppp0 -j DROP
-A OUTPUT -d 172.16.33.0/24 -o ppp0 -j LOG
-A OUTPUT -d 172.16.33.0/24 -o ppp0 -j DROP
-A OUTPUT -d 172.16.146.0/24 -o ppp0 -j LOG
-A OUTPUT -d 172.16.146.0/24 -o ppp0 -j DROP
-A OUTPUT -d 255.255.255.255/32 -o ppp0 -j ACCEPT
-A OUTPUT -s 78.78.78.78/32 -o ppp0 -j ACCEPT
-A OUTPUT -j LOG
-A OUTPUT -j DROP
COMMIT
# Completed on Fri Aug 27 07:53:01 2010

Штырлиц не любил торговцев.....ни разу.

Оффлайн MaratSh

  • Участник
  • *
  • Сообщений: 204
  • Всё пройдёт...
    • Просмотр профиля
Re: iptable сломал башку уже....
« Ответ #3 : 27 Августа 2010, 11:40:56 »
galich а теперь, максимально подробно опиши, что куда и откуда надо открыть и пробросить.  :)


Пользователь решил продолжить мысль 27 Августа 2010, 11:45:04:
В правилах каша.
Например, ты задаешь политику по-умолчанию:
Цитировать
:INPUT DROP [0:0]
далее идут разрешающие правила с -j ACCEPT
а потом зачем-то запрещающие:
Цитировать
-A FORWARD -d 78.78.78.0/24 -o ppp0 -j LOG
-A FORWARD -d 78.78.78.0/24 -o ppp0 -j DROP
-A FORWARD -d 10.18.0.0/24 -o ppp0 -j LOG
-A FORWARD -d 10.18.0.0/24 -o ppp0 -j DROP
-A FORWARD -d 172.16.33.0/24 -o ppp0 -j LOG
-A FORWARD -d 172.16.33.0/24 -o ppp0 -j DROP
-A FORWARD -d 172.16.146.0/24 -o ppp0 -j LOG
-A FORWARD -d 172.16.146.0/24 -o ppp0 -j DROP
и в конце ещё:
Цитировать
-A FORWARD -j LOG
-A FORWARD -j DROP
При политике DROP, всё что не разрешено - запрещено.
То есть, после разрешающих правил можно оставить только
Цитировать
-A FORWARD -j LOG
если конечно, оно тебе надо.  :)
« Последнее редактирование: 27 Августа 2010, 11:45:58 от MaratSh »

Оффлайн galich

  • Автор темы
  • Активист
  • *
  • Сообщений: 253
  • От всех бед - один Reset
    • Просмотр профиля
Re: iptable сломал башку уже....
« Ответ #4 : 27 Августа 2010, 12:44:37 »
galich а теперь, максимально подробно опиши, что куда и откуда надо открыть и пробросить.  :)


Пользователь решил продолжить мысль 27 Августа 2010, 11:45:04:
В правилах каша.
Например, ты задаешь политику по-умолчанию:
Цитировать
:INPUT DROP [0:0]
далее идут разрешающие правила с -j ACCEPT
а потом зачем-то запрещающие:
Цитировать
-A FORWARD -d 78.78.78.0/24 -o ppp0 -j LOG
-A FORWARD -d 78.78.78.0/24 -o ppp0 -j DROP
-A FORWARD -d 10.18.0.0/24 -o ppp0 -j LOG
-A FORWARD -d 10.18.0.0/24 -o ppp0 -j DROP
-A FORWARD -d 172.16.33.0/24 -o ppp0 -j LOG
-A FORWARD -d 172.16.33.0/24 -o ppp0 -j DROP
-A FORWARD -d 172.16.146.0/24 -o ppp0 -j LOG
-A FORWARD -d 172.16.146.0/24 -o ppp0 -j DROP
и в конце ещё:
Цитировать
-A FORWARD -j LOG
-A FORWARD -j DROP
При политике DROP, всё что не разрешено - запрещено.
То есть, после разрешающих правил можно оставить только
Цитировать
-A FORWARD -j LOG
если конечно, оно тебе надо.  :)

Про Drop - я ни чего сам не писал на запрещение. Сама система после установки почтового сервер что то там насоздавала.
Задача проста - с интерфейса eth0 (адрес 78.78.78.78) попасть на виртуальный сервер VMWare (там сервер терминалов на винде)
Адрес вирт. виндоуса 172,16,33,128, ДНС у него виртуальный 172,16,33,1
С виртуалки я выхожу в инет, пингую локальную сеть. С локальной сети я могу по 172,33,16,128 попасть на сервер теримналов, а вот с внешн. адреса 78,78,78,78 ни как.
Штырлиц не любил торговцев.....ни разу.

Оффлайн MaratSh

  • Участник
  • *
  • Сообщений: 204
  • Всё пройдёт...
    • Просмотр профиля
Re: iptable сломал башку уже....
« Ответ #5 : 28 Августа 2010, 16:24:39 »
Почитай про Iptables!
Совсем не обязательно заучивать синтаксис всех команд, просто разберись с принципом работы.

Твоя задача решается двумя строками:
#Пакеты идущие по адресу 78.78.78.78:3389 через eth0 пробрасываем в локалку по адресу: 172.33.16.128:3389
-A PREROUTING -p tcp -m tcp -d 78.78.78.78 -i eth0 --dport 3389 -j DNAT --to-destination 172.33.16.128:3389
#Разрешаем пакеты идущие из eth0 по адресу 172.33.16.128:3389
-A FORWARD -p tcp -m tcp -d 172.33.16.128 -i eth0 --dport 3389 -j ACCEPT

 

Страница сгенерирована за 0.048 секунд. Запросов: 24.