LINUX.ORG.RU
ФорумAdmin

неприятности с iptables


0

0

Недавно столкнулся с непонятками. Есть процесс, запущен от непривилегированного пользователя на непривилегированном высоком порту(томкат, 8082). Я пробрасываю высокий порт на 80 с помощью iptables :
$IPT -t nat -A PREROUTING -i eth0 -d $IP -p tcp --dport 80 -j REDIRECT --to-port 8082
либо
$IPT -t nat -A PREROUTING -i eth0 -d $IP -p tcp --dport 80 -j DNAT --to $IP:8082
Некоторое время это работает. А потом - затыкается, т.е. телнет на 80 порт говорит connection refused. Причём, через некоторое время DNAT и REDIRECT "оживают". Периодичности - не замечено. Удаление/восстановление цепочки - не помогает, т.е. восстанавливается само(???). В логах - пусто. Порт больше нигде не режется.

Подскажите, куда копать?

Deleted

А что в такие моменты говорит "telnet $IP 8082" ? Подключается ? Может это сам tomcat делает "connection refused" ?

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

Да, подключается. Сразу забыл написать...

Самое неприятное, что на соседних машинах с 2.6 ядром REDIRECT работает как часы. А этот сервер в "более сильном" продакшне, нежели соседние. И переводить его на 2.6 - долго и неохота удалённо :)

Deleted
()
Ответ на: комментарий от FatBastard

ИМХО
Есть два пути:
1) Менять связку kernel+glibc+gcc
2) Править tomcat для использования нужног порта без редиректа или NAT.

На каком из них меньше геморроя - решать тебе.
P.S. Что за ядро ты так и не указал.

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

Еще можно попробовать поменять версию iptables (как часть ядра).

archont ★★★
()

в версии iptables 1.2.7a точно есть косяки с потерей PREROUTING пакетов надо обновлятся

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