The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Избитая граблями тема IPFW+NATD+redirect_port"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Избитая граблями тема IPFW+NATD+redirect_port" 
Сообщение от alex_st Искать по авторуВ закладки(ok) on 24-Окт-05, 14:00  (MSK)
Всем привет! Чувствую аццкую боль в голове от постоянных ударов граблями в онную... Пришол к вам за антиГраблином...
Короче суть: Стоит фря как гейт. Настроено всё что нужно, НО! Уже вторую неделю не могу перебросить порт... Подробнее:
Стоит IPFW и NATD, люди спокойно могут ходить в нет, что говорит о правильности смежных с этим настроек. Вот кратко что имею:

rc.conf:

defaultrouter="192.168.2.2"
gateway_enable="YES"
hostname="gate.yar"
ifconfig_xl1="inet 192.168.1.71 netmask 255.255.255.0"
ifconfig_xl0="inet 192.168.2.3 netmask 255.255.255.0"
natd_enable="YES"
natd_interface="xl0"
natd_flags="-f /etc/natd.conf"
firewall_enable="YES"
firewall_type="OPEN"
sendmail_enable="NONE"
inetd_enable="YES"

natd.conf:

redirect_port tcp 213.180.204.8:80 81   ### Важная строка!
use_sockets yes
same_ports yes
unregistered_only yes
log yes
# Вычитано с многих мест, но главное - 1я строка

ipfw list:

00050 divert 8668 ip from any to any via xl0
00100 allow ip from any to any via lo0
00200 deny ip from any to 127.0.0.0/8
00300 deny ip from 127.0.0.0/8 to any
65000 allow ip from any to any
65535 deny ip from any to any

Дык вот, казалось - бы
если обратится из сети 192.168.1.0/24 на внутренний интерфейс 192.168.1.71 по порту 81, то должен попасть на сайт 213.180.204.8:80

Но неработает! Уж не знаю что и делать... Подскажите хотябы как можно помониторить или что... короче засада.  

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Избитая граблями тема IPFW+NATD+redirect_port" 
Сообщение от Skif Искать по авторуВ закладки(ok) on 24-Окт-05, 14:12  (MSK)
>natd.conf:
>
>redirect_port tcp 213.180.204.8:80 81   ### Важная строка!
Важная но не верная строка
man natd redirect_port

-redirect_port proto targetIP:targetPORT[-targetPORT]
                 [aliasIP:]aliasPORT[-aliasPORT]
                 [remoteIP[:remotePORT[-remotePORT]]]
                 Redirect incoming connections arriving to given port(s) to
                 another host and port(s).  Argument proto is either tcp or
                 udp, targetIP is the desired target IP address, targetPORT is
                 the desired target port number or range, aliasPORT is the
                 requested port number or range, and aliasIP is the aliasing
                 address.  Arguments remoteIP and remotePORT can be used to
                 specify the connection more accurately if necessary.  If
                 remotePORT is not specified, it is assumed to be all ports.

                 Arguments targetIP, aliasIP and remoteIP can be given as IP
                 addresses or as hostnames.  The targetPORT, aliasPORT and
                 remotePORT ranges need not be the same numerically, but must
                 have the same size.  When targetPORT, aliasPORT or remotePORT
                 specifies a singular value (not a range), it can be given as
                 a service name that is searched for in the services(5) data-
                 base.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Избитая граблями тема IPFW+NATD+redirect_port" 
Сообщение от alex_st Искать по авторуВ закладки(ok) on 24-Окт-05, 14:19  (MSK)
>>natd.conf:
>>
>>redirect_port tcp 213.180.204.8:80 81   ### Важная строка!
>Важная но не верная строка
>man natd redirect_port
>
Спасибо за отзывчивость!

Я могу прочитать этот ман без проблем, но вот не совсем понятно, в чём я ошибся... Я видел много подобных примеров, поясните пожалста, что вы имели ввиду.

Навсяк случай ещё раз формулирую: Если из локальной сети обратиться на 192.168.1.71:81 то должен попасть на 213.180.204.8:80

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Избитая граблями тема IPFW+NATD+redirect_port" 
Сообщение от Skif Искать по авторуВ закладки(ok) on 24-Окт-05, 14:28  (MSK)
местами менять надо.
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Избитая граблями тема IPFW+NATD+redirect_port" 
Сообщение от Dorlas Искать по авторуВ закладки(ok) on 24-Окт-05, 14:33  (MSK)
Вместо natd_interface="xl0" напиши следующее:

natd_interface="xl1"

И будет тебе счастье.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Избитая граблями тема IPFW+NATD+redirect_port" 
Сообщение от alex_st Искать по авторуВ закладки(ok) on 24-Окт-05, 14:41  (MSK)
>Вместо natd_interface="xl0" напиши следующее:
>
>natd_interface="xl1"
>
>И будет тебе счастье.


Как? Зачем? Если НАТ прекрасно работает, только редирект непашет... проверяю всячески предыдущий пост про "местами надо менять"...

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "Избитая граблями тема IPFW+NATD+redirect_port" 
Сообщение от alex_st Искать по авторуВ закладки(ok) on 24-Окт-05, 14:43  (MSK)
>местами менять надо.

Почемуже менять? Можно поподробнее? Может я что-то не так понимаю, но TargetIP именно тотсамый.... который мне желается.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "Избитая граблями тема IPFW+NATD+redirect_port" 
Сообщение от alex_st Искать по авторуВ закладки(ok) on 24-Окт-05, 14:48  (MSK)
>>местами менять надо.
>
>Почемуже менять? Можно поподробнее? Может я что-то не так понимаю, но TargetIP
>именно тотсамый.... который мне желается.

Или просто напишите, как Вы себе данную строку представляете.
Ещё раз обращу внимание, что из локалки редиректю порт наружу, т.е. еще раз: пытаюсь из той-же самой локалки, из которой по нату лазию наружу перекинуть порт на туже самую наружу, а не наоборот.

Вообще - это всё тесты, для того чтобы в дальнейшем уже прокинуть снаружи порт вовнутрь. Но логика такая, что если такая элементарщина у меня не получается, то за следующую задачу лучше не браться.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "Избитая граблями тема IPFW+NATD+redirect_port" 
Сообщение от magr emailИскать по авторуВ закладки(??) on 24-Окт-05, 15:08  (MSK)
>>>местами менять надо.
>>
>>Почемуже менять? Можно поподробнее? Может я что-то не так понимаю, но TargetIP
>>именно тотсамый.... который мне желается.
>
в мане в описании -alias_address
более подробно разъяснено, когда и что natd делает.

В текущей конфигурации natd будет пробрасывать соединения с помощью redirect_port для пакетов, приходящих не на 192.168.1.71:81, а на 192.168.2.3:81

В вашем случае, можно второй natd запустить.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "Избитая граблями тема IPFW+NATD+redirect_port" 
Сообщение от alex_st Искать по авторуВ закладки(ok) on 24-Окт-05, 15:21  (MSK)
>>>>местами менять надо.
>>>
>>>Почемуже менять? Можно поподробнее? Может я что-то не так понимаю, но TargetIP
>>>именно тотсамый.... который мне желается.
>>
>в мане в описании -alias_address
>более подробно разъяснено, когда и что natd делает.
>
>В текущей конфигурации natd будет пробрасывать соединения с помощью redirect_port для пакетов,
>приходящих не на 192.168.1.71:81, а на 192.168.2.3:81
>
>В вашем случае, можно второй natd запустить.

Да, выпустил из виду.. думалось что alias это только для учёта и тп. буду эксперементировать, одной граблей стало поменьше. Спасибо! О результатах сообщу сюда :)

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "Избитая граблями тема IPFW+NATD+redirect_port" 
Сообщение от alex_st Искать по авторуВ закладки(ok) on 24-Окт-05, 16:41  (MSK)
Итак, бравы хлопцы!

Всем спасибо за участие в процессе! Ниже описываю для мнеподобных заблудших и еще не вникнувших в суть процесса:

итак, следующая строка запускает демон НАТ на порту 8669, т.е. дивертом можно заворачивать на этот порт ваши пакеты из IPFW (-v нужно для наглядности, т.е. все подстановки будут на экране)

natd -a 192.168.1.71 -v -p 8669 -redirect_port tcp 213.180.204.8:80 81

далее, отлавливаем те самые пакеты, которые нужно скормить нату для подстановки адресов, причем как в одну так и в другую сторону:
(вырезка из ipfw list)

00040 divert 8669 ip from any to any dst-port 81
00041 divert 8669 ip from 213.180.204.0/24 to any

И всё! Теперь в локалке набираю 192.168.1.71:81 и попадаю на 213.180.204.8:80 !!! Браво FreeBSD!

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

11. "Избитая граблями тема IPFW+NATD+redirect_port" 
Сообщение от Junky Искать по авторуВ закладки on 25-Окт-05, 10:22  (MSK)
ну почему, почему в аналогичной ситуации у меня не получается добиться аналогичного результата? :)

x.x.x.x - IP, с которого делаем редирект
y.y.y.y - IP, на который делаем редирект


sysctl net.inet.ip.forwarding=1

natd -a x.x.x.x -v -p 8669 -redirect_port tcp y.y.y.y:25 10025

ipfw add 500 divert 8669 ip from any to any dst-port 10025
ipfw add 600 divert 8669 ip from y.y.y.y to any

после этого пробую:

telnet x.x.x.x 10025

и ничего не происходит, кроме Operation timed out.
natd при этом пишет:

In  {default} 0000ffff[TCP]  [TCP] z.z.z.z:58856 -> x.x.x.x:10025 aliased to
           [TCP] z.z.z.z:58856 -> y.y.y.y:25
In  {default} 0000ffff[TCP]  [TCP] z.z.z.z:58856 -> x.x.x.x:10025 aliased to
           [TCP] z.z.z.z:58856 -> y.y.y.y:25

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

12. "Избитая граблями тема IPFW+NATD+redirect_port" 
Сообщение от alex_st Искать по авторуВ закладки(ok) on 25-Окт-05, 11:30  (MSK)
>In  {default} 0000ffff[TCP]  [TCP] z.z.z.z:58856 -> x.x.x.x:10025 aliased to
>           [TCP] z.z.z.z:58856 -> y.y.y.y:25
>In  {default} 0000ffff[TCP]  [TCP] z.z.z.z:58856 -> x.x.x.x:10025 aliased to
>           [TCP] z.z.z.z:58856 -> y.y.y.y:25

На данном этапе у меня был трабел такой, что пакеты при возвращении не заворачивались в натовский порт. Об этом говорит отсутствие строчек начинающихся на Out. Т.е. проверь еще раз alias и правило отвечающее за возврат пакетов (твоё ipfw add 600 divert 8669 ip from y.y.y.y to any)
Возможно до этого правила ipfw просто не успевает дойти у тебя будучи удовлетворённый вышестоящими...

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру