LINUX.ORG.RU
ФорумAdmin

Форвард портов в локалку. Непонятный трабл


0

0

Привет всем! ASPLinux7.3 Eth0->195.54.х.1, Eth1->10.10.10.254 Машина шлюзовая, кроме NAT, MASQUERADE, FORWARD пакетов ничего более нет. Сеть 10.10.10.0/24 во внешний мир ходит без проблем. В локалке стоит WWW,DNS,POP,SMTP сервер (10.10.10.1) Надо сделать проброс портов 25,53,80,110 через маскарад внутрь. Вот кусок скрипта.

$IP -F $IP -t nat -F POSTROUTING $IP -t nat -F PREROUTING $IP -P FORWARD DROP $IP -A INPUT -i eth1 -s 10.10.10.0/24 -j ACCEPT

$IP -A FORWARD -s 10.10.10.0/24 -j ACCEPT $IP -A FORWARD -d 10.10.10.0/24 -j ACCEPT $IP -t nat -A POSTROUTING -s 10.10.10.0/24 -j MASQUERADE

# Переброс портов $IP -t nat -A PREROUTING -d 195.54.х.1 -p tcp --dport 80 -j DNAT --to-destination 10.10.10.1:80 $IP -t nat -A PREROUTING -d 195.54.х.1 -p tcp --dport 25 -j DNAT --to-destination 10.10.10.1:25 $IP -t nat -A PREROUTING -d 195.54.х.1 -p tcp --dport 53 -j DNAT --to-destination 10.10.10.1:53 $IP -t nat -A PREROUTING -d 195.54.х.1 -p udp --dport 53 -j DNAT --to-destination 10.10.10.1:53 $IP -t nat -A PREROUTING -d 195.54.х.1 -p tcp --dport 110 -j DNAT --to-destination 10.10.10.1:110

Не работает зараза. На локальном сервере порты подняты. Не проходят пакеты внутрь извне по этим портам. В чём косяк? Кто сталкивался с подобным?


$IP -F $IP -t nat -F POSTROUTING $IP -t nat -F PREROUTING $IP -P FORWARD DROP $IP -A INPUT -i eth1 -s 10.10.10.0/24 -j ACCEPT

$IP -A FORWARD -s 10.10.10.0/24 -j ACCEPT $IP -A FORWARD -d 10.10.10.0/24 -j ACCEPT $IP -t nat -A POSTROUTING -s 10.10.10.0/24 -j MASQUERADE

# Переброс портов $IP -t nat -A PREROUTING -d 195.54.х.1 -p tcp --dport 80 -j DNAT --to-destination 10.10.10.1:80 $IP -t nat -A PREROUTING -d 195.54.х.1 -p tcp --dport 25 -j DNAT --to-destination 10.10.10.1:25 $IP -t nat -A PREROUTING -d 195.54.х.1 -p tcp --dport 53 -j DNAT --to-destination 10.10.10.1:53 $IP -t nat -A PREROUTING -d 195.54.х.1 -p udp --dport 53 -j DNAT --to-destination 10.10.10.1:53 $IP -t nat -A PREROUTING -d 195.54.х.1 -p tcp --dport 110 -j DNAT --to-destination 10.10.10.1:110

ozersk
() автор топика
Ответ на: комментарий от jackill

REDIRECT работает только на локальной машине.

gfh ★★★
()

Сталкивался. Тут дело скорее всего вот в чём: туда пакеты как раз проходят. А ответы обратно уже не проходят, для них-то правил нет. Не знаю, как будет совсем правильно, но по опыту работает такая конструкция:

$IP -t nat -A PREROUTING -d 195.54.х.1 -p tcp --dport 80 -j DNAT --to-destination 10.10.10.1:80

$IP -t nat -A POSTROUTING -s ! 10.10.10.0/24 -d 10.10.10.1 -p tcp --dport 80 -j SNAT --to-source внутренний-адрес-шлюза

То есть на каждый проброс создаём ещё и SNAT, который позволит ответным пакетам вернуться.

anonymous
()

Правила по идее написаны правильно, но хотелось бы увидеть что показывает tcpdump на eth1 шлюза и на 10.10.10.1 при попытке снаружи достучаться на перебрасываемые порты.

spirit ★★★★★
()
Ответ на: комментарий от spirit

Что валится в лог на 10.10.10.1 не могу сказать, машина находится на чужой территории и доступа к ней у меня нету.

Вот что даёт tcpdump -i eth1 на шлюзе:

17:24:57.404592 195.54.x.1.4547 > 10.10.10.1.http: S 959092882:959092882(0) win 65535 <mss 1460,nop,nop,sackOK> (DF)

17:25:00.357969 195.54.x.1.4547 > 10.10.10.1.http: S 959092882:959092882(0) win 65535 <mss 1460,nop,nop,sackOK> (DF)

17:25:06.373591 195.54.x.1.4547 > 10.10.10.1.http: S 959092882:959092882(0) win 65535 <mss 1460,nop,nop,sackOK> (DF)

17:25:29.976127 195.54.x.1.4554 > 10.10.10.1.http: S 966797356:966797356(0) win 65535 <mss 1460,nop,nop,sackOK> (DF)

17:25:32.951763 195.54.x.1.4554 > 10.10.10.1.http: S 966797356:966797356(0) win 65535 <mss 1460,nop,nop,sackOK> (DF)

17:25:38.967392 195.54.x.1.4554 > 10.10.10.1.http: S 966797356:966797356(0) win 65535 <mss 1460,nop,nop,sackOK> (DF)

17:25:56.500293 195.54.x.1.4556 > 10.10.10.1.http: S 972957897:972957897(0) win 65535 <mss 1460,nop,nop,sackOK> (DF)

17:25:59.420549 195.54.x.1.4556 > 10.10.10.1.http: S 972957897:972957897(0) win 65535 <mss 1460,nop,nop,sackOK> (DF)

17:26:05.436184 195.54.x.1.4556 > 10.10.10.1.http: S 972957897:972957897(0) win 65535 <mss 1460,nop,nop,sackOK> (DF)

ozersk
() автор топика
Ответ на: комментарий от ozersk

Похоже, что не приходят ответы на запросы. Такое может быть, если 10.10.10.1 не знает куда отвечать, либо это не позволяет его firewall. Следовательно, либо проверить настройку routing table на 10.10.10.1, либо смотреть firewall.

spirit ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.