Есть роутер на Debian 11. Локальная сеть - enp0s8, интернет - enp0s3. Хочу сделать так, чтобы из интернета был доступен web-сервер, который лежит в локальной сети на машине 10.0.0.2, а из локальной сети - был доступен Интернет. Весь лишний forward хочу запретить. Делаю такие правила iptables:
*nat
-A PREROUTING -i enp0s3 -p tcp --dport 80 -j DNAT --to-destination 10.0.0.2:80
-A POSTROUTING -o enp0s3 -j MASQUERADE
COMMIT
*filter
-A INPUT -i lo -j ACCEPT
-A INPUT -i enp0s3 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i enp0s3 -j DROP
-A FORWARD -i enp0s3 -p tcp --dport 80 -j ACCEPT
-A FORWARD -i enp0s3 -j DROP
COMMIT
В таком конфиге Web-сервер из Интернета доступен, но Интернет из локальной сети - нет. Если убрать правило -A FORWARD -i enp0s3 -j DROP
, то все работает, но это значит, что будет работать любой forward. Как бы мне сказать что forward соединений из локальной сети в Интернет можно делать, а обратно - только то, что разрешено явно? Или я загоняюсь и так делать не нужно?