The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Linux NAT на одну машину."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Маршрутизация, NAT / Linux)
Изначальное сообщение [ Отслеживать ]

"Linux NAT на одну машину."  +/
Сообщение от psix on 28-Авг-10, 02:38 
Добрый вечер,

стоит сервер centos 5.5. NAT не настроен, возникла такая необходимость - прокинуть нат на одну из машин, пожалуйста помогите по шагам + как сделать нат 1 в 1 то есть что все порты с одно IP (Сервера) перекидывались на клиента.

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

Оглавление

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


1. "Linux NAT на одну машину."  +/
Сообщение от PavelR (??) on 28-Авг-10, 06:34 
>Добрый вечер,
>
>стоит сервер centos 5.5. NAT не настроен, возникла такая необходимость - прокинуть
>нат на одну из машин, пожалуйста помогите по шагам + как
>сделать нат 1 в 1 то есть что все порты с
>одно IP (Сервера) перекидывались на клиента.

iptables -t nat -I PREROUTING -i extEth -d 1.2.3.4 -j DNAT --to-destination 192.168.0.40

возможно надо будет включить форвардинг пакетов, если не включен
возможно надо разрешить прохождение пакетов в filter.FORWARD или еще где-то...

по всем ключам - man iptables

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

2. "Linux NAT на одну машину."  +/
Сообщение от BaldyMan email(ok) on 28-Авг-10, 06:40 
>стоит сервер centos 5.5. NAT не настроен, возникла такая необходимость - прокинуть
>нат на одну из машин, пожалуйста помогите по шагам + как
>сделать нат 1 в 1 то есть что все порты с
>одно IP (Сервера) перекидывались на клиента.

Вообще тебе надо SNAT/DNAT посмотреть, наверно как-то вот наподобие этого
iptables -t nat -A POSTROUTING -s <адрес источника(клиента)> -p tcp(udp) --dport <порт назначения> -j SNAT --to <адрес назначения(сервера, с которого пробрасывать будешь)>

iptables -t nat -A PREROUTING -d <адрес назнаения (сервера, т.е. куда пришел пакет)> -p tcp(udp) --dport <порт на котрый пришел пакет> -j DNAT --to-destination <ip_клиента>:<порт>

А так же надо включить форвардинг пакетов
iptables -A FORWARD -i lo -j ACCEPT
iptables -A FORWARD -s <внешний ип сервера> -j ACCEPT
iptables -A FORWARD -s <внутренний ип сервера> -j ACCEPT
И разрешить прохождение пакетов между сетевыми картами в ядре
echo 1 > "/proc/sys/net/ipv4/ip_forward"

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

3. "Linux NAT на одну машину."  +/
Сообщение от PavelR (??) on 28-Авг-10, 09:50 
>>стоит сервер centos 5.5. NAT не настроен, возникла такая необходимость - прокинуть
>>нат на одну из машин, пожалуйста помогите по шагам + как
>>сделать нат 1 в 1 то есть что все порты с
>>одно IP (Сервера) перекидывались на клиента.
>
>Вообще тебе надо SNAT/DNAT посмотреть, наверно как-то вот наподобие этого
>iptables -t nat -A POSTROUTING -s <адрес источника(клиента)> -p tcp(udp) --dport <порт назначения> -j SNAT --to <адрес назначения(сервера, с которого пробрасывать будешь)>

некорректно. Это не фряха, не тяните в линукс ipfw, в линухе другие принципы.

>
>iptables -t nat -A PREROUTING -d <адрес назнаения (сервера, т.е. куда пришел пакет)> -p tcp(udp) --dport <порт на котрый пришел пакет> -j DNAT --to-destination <ip_клиента>:<порт>

примерно так :-)

>А так же надо включить форвардинг пакетов
>iptables -A FORWARD -i lo -j ACCEPT
>iptables -A FORWARD -s <внешний ип сервера> -j ACCEPT
>iptables -A FORWARD -s <внутренний ип сервера> -j ACCEPT

Это не "включить форвардинг пакетов", это разрешить прохождение пакетов в файрволле,
причем (1) вообще чушь, а 2 и 3 надо добавлять в нужное место в файрволле, -А добавит в конец, и правила могут не срабывать.

>И разрешить прохождение пакетов между сетевыми картами в ядре
>echo 1 > "/proc/sys/net/ipv4/ip_forward"

А вот это и есть "включить форвардинг пакетов".

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

4. "Linux NAT на одну машину."  +/
Сообщение от psix on 28-Авг-10, 14:05 
>[оверквотинг удален]
>
>Это не "включить форвардинг пакетов", это разрешить прохождение пакетов в файрволле,
>причем (1) вообще чушь, а 2 и 3 надо добавлять в нужное
>место в файрволле, -А добавит в конец, и правила могут не
>срабывать.
>
>>И разрешить прохождение пакетов между сетевыми картами в ядре
>>echo 1 > "/proc/sys/net/ipv4/ip_forward"
>
>А вот это и есть "включить форвардинг пакетов".

Так как все таки правильнее ? :) И зачем опция -d ? Мне надо передавать все порты.
Про /proc/sys/net/ipv4/ip_forward помню, спасибо.

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

5. "Linux NAT на одну машину."  +/
Сообщение от reader (ok) on 28-Авг-10, 15:20 
>[оверквотинг удален]
>>срабывать.
>>
>>>И разрешить прохождение пакетов между сетевыми картами в ядре
>>>echo 1 > "/proc/sys/net/ipv4/ip_forward"
>>
>>А вот это и есть "включить форвардинг пакетов".
>
>Так как все таки правильнее ? :) И зачем опция -d ?
>Мне надо передавать все порты.
>Про /proc/sys/net/ipv4/ip_forward помню, спасибо.

правильно как всегда в документации
https://www.opennet.ru/docs/RUS/iptables/#DNATTARGET

но пробрасывать лучше не в локалку , а в DMZ
https://www.opennet.ru/openforum/vsluhforumID1/89679.html#6

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

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

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




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

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