The OpenNET Project / Index page

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

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

"Linux iptables -> FreeBSD ipfw"  
Сообщение от siegerstein (??) on 15-Мрт-07, 18:49 
Был Линух с iptables, и делал следуешее:

iptables -t nat -A PREROUTING --dst xxx.xx.xxx.xxx -p tcp --dport 3333 -j DNAT --to-destination 192.168.0.1:3333
iptables -t nat -A POSTROUTING -p tcp --dst 192.168.0.1 --dport 3333 -j SNAT --to-source 192.168.0.254

Это прокидка внутренегог компа на внешнею сеть.

Поставили Фри :)

Как это замутить на ipwf?

P.S. тема сложная...

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

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Linux iptables -> FreeBSD ipfw"  
Сообщение от vvvua (??) on 16-Мрт-07, 00:04 

>P.S. тема сложная...
нифига не сложная.
Поставь xinetd и не парься
в конфиге создай:

service my_serv
{
    socket_type = stream
    wait = no
    user = root
    redirect = 192.168.0.1 3333
}

в /etc/services добавь
my_serv           3333/tcp


А делаеться это в ipfw c помощью правила forward. Но это изврат - нужно через ipnat.

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

2. "Linux iptables -> FreeBSD ipfw"  
Сообщение от siegerstein (??) on 16-Мрт-07, 19:05 
>
>>P.S. тема сложная...
>нифига не сложная.
>Поставь xinetd и не парься
>в конфиге создай:
>
>service my_serv
>{
>    socket_type = stream
>    wait = no
>    user = root
>    redirect = 192.168.0.1 3333
>}
>
>в /etc/services добавь
>my_serv           3333/tcp
>
>
>
>А делаеться это в ipfw c помощью правила forward. Но это изврат
>- нужно через ipnat.

Спасибо за ответ.
Но поднимать демона ради одного телодвижения, как то не хорошо.

Очень прошу, если знаеш как сделать через ipfw, пожалуйста скажи.
Но очень нужно!

Зарание спасибо.

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

3. "Linux iptables -> FreeBSD ipfw"  
Сообщение от Vanya email(??) on 17-Мрт-07, 12:07 
Вот пример переброски порта для пользования "ослом".
Может поможет

# more /etc/rc.conf | grep natd
natd_enable="YES"
natd_interface="fxp0"
natd_flags="-f /etc/natd.conf"


# ee /etc/natd.conf

dynamic yes
unregistered_only yes
use_sockets yes
same_ports yes
redirect_port tcp 192.168.0.1:4662 0.0.0.0:4662
redirect_port udp 192.168.0.1:4672 0.0.0.0:4672

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

4. "Linux iptables -> FreeBSD ipfw"  
Сообщение от vvvua (ok) on 18-Мрт-07, 02:36 
Через ipfw много телодвижений.
Там цепочка должна быть
редирект-нат
По памяти - не помню. У меня сделано через ipnat:
rdr rl1 REALIP/32 port 3333 -> 192.168.0.1 port 3333 tcp

Прописано в /etc/ipnat.conf
Запуск -
ipnat -FC -f /etc/ipnat.conf

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

5. "Linux iptables -> FreeBSD ipfw"  
Сообщение от siegerstein (??) on 18-Мрт-07, 22:56 
>Через ipfw много телодвижений.
>Там цепочка должна быть
>редирект-нат
>По памяти - не помню. У меня сделано через ipnat:
>rdr rl1 REALIP/32 port 3333 -> 192.168.0.1 port 3333 tcp
>
>Прописано в /etc/ipnat.conf
>Запуск -
>ipnat -FC -f /etc/ipnat.conf

Спасибо ребята, работает!

Большое спасибо всем за помощь и быстрое реагирование! Тема закрыта.

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

6. "Linux iptables -> FreeBSD ipfw"  
Сообщение от siegerstein (??) on 19-Мрт-07, 14:09 
>>Через ipfw много телодвижений.
>>Там цепочка должна быть
>>редирект-нат
>>По памяти - не помню. У меня сделано через ipnat:
>>rdr rl1 REALIP/32 port 3333 -> 192.168.0.1 port 3333 tcp
>>
>>Прописано в /etc/ipnat.conf
>>Запуск -
>>ipnat -FC -f /etc/ipnat.conf
>
>Спасибо ребята, работает!
>
>Большое спасибо всем за помощь и быстрое реагирование! Тема закрыта.


Извеняюсь что поспешил.
У меня действительно заработало в дома, еогда я прокидовал с одного интерфейса на другой, но все они физически были на одной машине.

А вот пришел на работу, и не выходит. Мне надо прокинуть с одного интерфейса на другой, причем этот другой на другой машине.

Если прокидовать на ту же машину - все ok, если на другую - не катит.

xxx.xx.xxx.xx - это внешний интерфейс
192.168.0.1 - это внутрений на той же машине
192.168.0.251 - это на который надо прокинуть пакеты (другая машина)

rl0 - внутрений
rl1 - внешний

map rl1 192.168.0.1/24 -> 0/32 proxy port ftp ftp/tcp
map rl1 192.168.0.1/24 -> 0/32 portmap tcp/udp 10000:50000
map rl1 192.168.0.1/24 -> 0/32
rdr rl1 0.0.0.0/0 port 4899 -> 192.168.0.1 port 22 tcp

Так катит.

А если вот так:

map rl1 192.168.0.1/24 -> 0/32 proxy port ftp ftp/tcp
map rl1 192.168.0.1/24 -> 0/32 portmap tcp/udp 10000:50000
map rl1 192.168.0.1/24 -> 0/32
rdr rl1 0.0.0.0/0 port 4899 -> 192.168.0.251 port 22 tcp

то не катит.

Operation timed out
====
net.inet.ip.check_interface=1
net.inet.ip.forwarding=1
===
Что не так?

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

7. "Linux iptables -> FreeBSD ipfw"  
Сообщение от siegerstein (??) on 20-Мрт-07, 20:46 
>>>Через ipfw много телодвижений.
>>>Там цепочка должна быть
>>>редирект-нат
>>>По памяти - не помню. У меня сделано через ipnat:
>>>rdr rl1 REALIP/32 port 3333 -> 192.168.0.1 port 3333 tcp
>>>
>>>Прописано в /etc/ipnat.conf
>>>Запуск -
>>>ipnat -FC -f /etc/ipnat.conf
>>
>>Спасибо ребята, работает!
>>
>>Большое спасибо всем за помощь и быстрое реагирование! Тема закрыта.
>
>
>Извеняюсь что поспешил.
>У меня действительно заработало в дома, еогда я прокидовал с одного интерфейса
>на другой, но все они физически были на одной машине.
>
>А вот пришел на работу, и не выходит. Мне надо прокинуть с
>одного интерфейса на другой, причем этот другой на другой машине.
>
>Если прокидовать на ту же машину - все ok, если на другую
>- не катит.
>
>xxx.xx.xxx.xx - это внешний интерфейс
>192.168.0.1 - это внутрений на той же машине
>192.168.0.251 - это на который надо прокинуть пакеты (другая машина)
>
>rl0 - внутрений
>rl1 - внешний
>
>map rl1 192.168.0.1/24 -> 0/32 proxy port ftp ftp/tcp
>map rl1 192.168.0.1/24 -> 0/32 portmap tcp/udp 10000:50000
>map rl1 192.168.0.1/24 -> 0/32
>rdr rl1 0.0.0.0/0 port 4899 -> 192.168.0.1 port 22 tcp
>
>Так катит.
>
>А если вот так:
>
>map rl1 192.168.0.1/24 -> 0/32 proxy port ftp ftp/tcp
>map rl1 192.168.0.1/24 -> 0/32 portmap tcp/udp 10000:50000
>map rl1 192.168.0.1/24 -> 0/32
>rdr rl1 0.0.0.0/0 port 4899 -> 192.168.0.251 port 22 tcp
>
>то не катит.
>
>Operation timed out
>====
>net.inet.ip.check_interface=1
>net.inet.ip.forwarding=1
>===
>Что не так?

Кто то может помочь?

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

8. "Linux iptables -> FreeBSD ipfw"  
Сообщение от vvvua (ok) on 24-Мрт-07, 03:23 
rdr rl1 xxx.xx.xxx.xx/32 port 4899 -> 192.168.0.251 port 22 tcp
map rl0 0.0.0.0/0 -> 0.0.0.0/32
map rl1 from 192.168.0.0/24 to any -> xxx.xx.xxx.xx/32
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "Linux iptables -> FreeBSD ipfw"  
Сообщение от siegerstein (??) on 25-Мрт-07, 07:36 
>rdr rl1 xxx.xx.xxx.xx/32 port 4899 -> 192.168.0.251 port 22 tcp
>map rl0 0.0.0.0/0 -> 0.0.0.0/32
>map rl1 from 192.168.0.0/24 to any -> xxx.xx.xxx.xx/32


Короче понял в чем были траблы:

Ту машину на которую делаете прокидку портов, или вообще пускаете в нет должен ОБЯЗАТЕЛЬНО стоять шлюз на ту машину, которая этот нет раздает (на шлюз)

Это объясняется следующий: она получает пакет из нета, проходить через шлюз, а потом отправляется обратно - в нет. Поэтому должен быть прописан шлюз.

Пакет натиться и выпускается в нет...

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

10. "Linux iptables -> FreeBSD ipfw"  
Сообщение от Kolesya on 27-Мрт-07, 21:07 
>>rdr rl1 xxx.xx.xxx.xx/32 port 4899 -> 192.168.0.251 port 22 tcp
>>map rl0 0.0.0.0/0 -> 0.0.0.0/32
>>map rl1 from 192.168.0.0/24 to any -> xxx.xx.xxx.xx/32
>
>
>Короче понял в чем были траблы:
>
>Ту машину на которую делаете прокидку портов, или вообще пускаете в нет
>должен ОБЯЗАТЕЛЬНО стоять шлюз на ту машину, которая этот нет раздает
>(на шлюз)
>
>Это объясняется следующий: она получает пакет из нета, проходить через шлюз, а
>потом отправляется обратно - в нет. Поэтому должен быть прописан шлюз.
>
>
>Пакет натиться и выпускается в нет...

Немного не так,
должен быть известен маршрут к отправителю пакета, но шлюз по дефолту НЕ ОБЯЗАТЕЛЬНО.
на ipfw  делается примерно так:
# cat /etc/natd.conf
port 8668
same_ports yes
use_sockets yes
redirect_port   tcp 10.10.10.10:1111-1112 1111-1112
======================================================
# ipfw show | grep 10.10.10.10
divert 8668 ip from 10.10.10.10 to any out xmit rl0
allow ip from any to 10.10.10.10 dst-port 1111-1112 in recv rl0
======================================================
# cat /etc/rc.conf | grep natd
natd_enable="YES"
natd_interface="rl0"
natd_flags="-f /etc/natd.conf"
======================================================
rl0           внешний интерфейс
10.10.10.10   внутренний IP который на который транслируются пакеты с наружи


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

12. "Linux iptables -> FreeBSD ipfw"  
Сообщение от siegerstein email(??) on 28-Мрт-07, 16:22 
>>>rdr rl1 xxx.xx.xxx.xx/32 port 4899 -> 192.168.0.251 port 22 tcp
>>>map rl0 0.0.0.0/0 -> 0.0.0.0/32
>>>map rl1 from 192.168.0.0/24 to any -> xxx.xx.xxx.xx/32
>>
>>
>>Короче понял в чем были траблы:
>>
>>Ту машину на которую делаете прокидку портов, или вообще пускаете в нет
>>должен ОБЯЗАТЕЛЬНО стоять шлюз на ту машину, которая этот нет раздает
>>(на шлюз)
>>
>>Это объясняется следующий: она получает пакет из нета, проходить через шлюз, а
>>потом отправляется обратно - в нет. Поэтому должен быть прописан шлюз.
>>
>>
>>Пакет натиться и выпускается в нет...
>
>Немного не так,
>должен быть известен маршрут к отправителю пакета, но шлюз по дефолту НЕ
>ОБЯЗАТЕЛЬНО.
>на ipfw  делается примерно так:
># cat /etc/natd.conf
>port 8668
>same_ports yes
>use_sockets yes
>redirect_port   tcp 10.10.10.10:1111-1112 1111-1112
>======================================================
># ipfw show | grep 10.10.10.10
>divert 8668 ip from 10.10.10.10 to any out xmit rl0
>allow ip from any to 10.10.10.10 dst-port 1111-1112 in recv rl0
>======================================================
># cat /etc/rc.conf | grep natd
>natd_enable="YES"
>natd_interface="rl0"
>natd_flags="-f /etc/natd.conf"
>======================================================
>rl0           внешний
>интерфейс
>10.10.10.10   внутренний IP который на который транслируются пакеты с наружи
>

Знаю что на natd легко делаеться...

Просто уже замутитл на ipnat. Хоть он и не очень гибкий, но ресурсов есть на много меньше нежели natd.


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

13. "Linux iptables -> FreeBSD ipfw"  
Сообщение от vvvua (ok) on 29-Мрт-07, 21:50 
я думал, что раз сервак - роутер в инет, то и дефолт на него...
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

11. "Linux iptables -> FreeBSD ipfw"  
Сообщение от E_Vorobyov email(??) on 28-Мрт-07, 15:36 
>Был Линух с iptables, и делал следуешее:
>
>iptables -t nat -A PREROUTING --dst xxx.xx.xxx.xxx -p tcp --dport 3333 -j
>DNAT --to-destination 192.168.0.1:3333
>iptables -t nat -A POSTROUTING -p tcp --dst 192.168.0.1 --dport 3333 -j
>SNAT --to-source 192.168.0.254
>
>Это прокидка внутренегог компа на внешнею сеть.
>
>Поставили Фри :)
>
>Как это замутить на ipwf?
>
>P.S. тема сложная...

можно еще таким путем пойти:
cd /usr/ports/net/redir && make install
далее после успешной установки делаей следующее
redir --laddr=xxx.xxx.xxx.xxx --lport=3333 --caddr=192.168.0.1 --cport=3333&
и все что будет идти на ххх.ххх.ххх.ххх будет переброшено на твой внутренний ИП. Только есть один минус - все запросы на 192,168,0,1 будут приходить от машины где запущен редир, а не из всего мира. :(

ЗЫ: не забудь в правилах ipfw прописать разрешение для этих портов, адресов и интерфейсов...
ЗЫЫ: для автоматического запуска редиректа пропиши эту кманду в /etc/rc.local только укажы полный путь к бинарнику, типа
/usr/local/bin/redir --laddr=xxx.xxx.xxx.xxx --lport=3333 --caddr=192.168.0.1 --cport=3333&
!!!ВНИМАНИЕ, тут не забудь поставить в конце строки символ &, иначе поимеешь некоторые проблемы. :)

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

14. "Linux iptables -> FreeBSD ipfw"  
Сообщение от S1ash email on 12-Июн-07, 00:50 
Господа, подскажите как
iptables -t nat -A PREROUTING -p tcp --destination-port 5190 -j REDIRECT --to-ports 16667

в ipfw будет выгляденть

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

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

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




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

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