>>Есть сервер с RedHat 8.0, NAT работает на iptables. Необходимо натить один
>>компьютер из локальной сети только при запросе на определенный порт. При
>>запросе же на любой другой порт - отбрасывать пакет. Удалось этого
>>добиться только совмещением таблиц filter и nat, т.е. фильтром закрывать все
>>порты кроме необходимого, а уже после этого натить. Хотелось бы знать,
>>возможно ли более рациональное решение с использованием только одной таблицы nat?
>>И если да то какое?
>>
>>Я недавно в линуксе, так что прошу строго не судить за возможно
>>слишком простой вопрос.
>
>так в нате и добавь условия на исходные/конечные порты, исходные/конечные адреса.
>там можно довольно разнообразные условия задать...
пробовал следующие варианты:
1. /sbin/iptables -t nat -A POSTROUTING -s xxx.xxx.xxx.xxx/32 --dport zzz -j SNAT --to-source yyy.yyy.yyy.yyy
не получилось, т.к. --dport можно использовать только при --protocol tcp
2. /sbin/iptables -t nat -A POSTROUTING -p tcp -s xxx.xxx.xxx.xxx/32 --dport zzz -j SNAT --to-source yyy.yyy.yyy.yyy
при выполнении из командной строки глотал, но не работал, при запуске из скрипта фаервола выдавал ошибку, хотя судя по логике и man iptables все правильно.
уже не важно второй вариант заработал как надо, какая была ошибка, к сожалению не помню, и из-за чего она могла возникнуть тоже... система не менялась абсолютно...
В любом случае спасибо.