Как правильно прописать правила iptables?

Вопрос от чайника в iptables.

Локальная сеть через mikrotik 192.168.10.0/24
Локальный web сервер 192.168.10.254:8000

Mikrotik выходит в интернет через VPS L2TP 192.168.42.1 <-> 192.168.42.10 . Интернет в локалке работает нормально.

На VPS прописаны правила NAT

root@vpn:~# iptables -t nat -S
-P PREROUTING ACCEPT
-P INPUT ACCEPT
-P POSTROUTING ACCEPT
-P OUTPUT ACCEPT
-A PREROUTING -d 95.181.155.97/32 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.10.254:8000
-A POSTROUTING -s 192.168.42.0/24 -o eth0 -j MASQUERADE
-A POSTROUTING -s 192.168.42.0/24 -o eth0 -m policy --dir out --pol none -j MASQUERADE
-A POSTROUTING -s 192.168.10.0/24 -o eth0 -j MASQUERADE

Рутинг прописан:
root@vpn:~# ip r
default via 95.181.155.1 dev eth0 onlink
95.181.155.1 dev eth0 proto kernel scope link src 95.181.155.97
192.168.10.0/24 via 192.168.42.10 dev ppp0
192.168.42.10 dev ppp0 proto kernel scope link src 192.168.42.1

С VPS на 192.168.10.254 проходит. С любого внешнего запроса запись в логах iptables вижу, но до mikrotik не доходит

kernel: IN=eth0 OUT= MAC=52:54:00:c7:c0:9e:00:1c:73:52:bc:33:08:00 SRC=176.110.120.173 DST=95.181.155.97 LEN=52 TOS=0x00 PREC=0x00 TTL=52 ID=63068 DF PROTO=TCP SPT=34896 DPT=80 WINDOW=65535 RES=0x00 SYN URGP=0
  • Вопрос задан
  • 67 просмотров
Пригласить эксперта
Ответы на вопрос 1
hint000
@hint000
у админа три руки
сначала выполняется это правило:
-A PREROUTING -d 95.181.155.97/32 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.10.254:8000

а потом вроде как должно это:
-A FORWARD -d 95.181.155.97/32 -p tcp -m tcp --dport 80 -j ACCEPT

но на самом деле оно не выполняется, потому что в этот момент уже -d 192.168.10.254 -p tcp -m tcp --dport 8000
короче, надо заменить на это:
-A FORWARD -d 192.168.10.254 -p tcp -m tcp --dport 8000 -j ACCEPT
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы