Форум системных администраторов

IT => Networks => Тема начата: K.E.P. от 20 февраля 2021, 21:05:06

Название: запутался в iptables
Отправлено: K.E.P. от 20 февраля 2021, 21:05:06
Хотел сделать простой роутер из сервера на oracle linux 7. Но что-то пошло не так  ::)
Есть локальная сеть и в ней одно рабочее место и сервер.
ip рабочего места 192.168.11.40 шлюз 192.168.11.9
ip сервера внутренний 192.168.11.9
ip сервера внешний 192.168.14.2 шлюз 192.168.14.1

дальше во вне стоит циска другого предприятия с ip 192.168.14.1 которая маршрутизирует на определенные ресурсы.
все эти ресурсы пингуются и открываются с сервера. а вот с рабочего места нет.
смотрел tcpdump-ом на внешнем интерфейсе сервера, запросы и пинги от рабочего места уходят во вне. приходит ответ из вне, но в локалку он уже не попадает.
eno2 внутренний интерфейс
ens2f0 внешний интерфейс сервера.
настройки iptables на сервере:
 iptables --list-rules
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i eno2 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 3 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 11 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -m state --state INVALID -j DROP
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP
-A INPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
-A INPUT -i ens2f0 -p tcp -m tcp --dport 22 -j ACCEPT
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -m state --state INVALID -j DROP
-A FORWARD -i eno2 -o ens2f0 -j ACCEPT
-A FORWARD -i ens2f0 -o eno2 -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -i eno2 -o ens2f0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -o eno2 -j ACCEPT
-A OUTPUT -o ens2f0 -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP

iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere           
ACCEPT     all  --  anywhere             anywhere           
ACCEPT     icmp --  anywhere             anywhere             icmp echo-reply
ACCEPT     icmp --  anywhere             anywhere             icmp destination-unreachable
ACCEPT     icmp --  anywhere             anywhere             icmp time-exceeded
ACCEPT     icmp --  anywhere             anywhere             icmp echo-request
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
DROP       all  --  anywhere             anywhere             state INVALID
DROP       tcp  --  anywhere             anywhere             tcp flags:FIN,SYN,RST,PSH,ACK,URG/NONE
DROP       tcp  --  anywhere             anywhere             tcp flags:!FIN,SYN,RST,ACK/SYN state NEW
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ssh

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
DROP       all  --  anywhere             anywhere             state INVALID
ACCEPT     all  --  anywhere             anywhere           
REJECT     all  --  anywhere             anywhere             reject-with icmp-port-unreachable
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere           
ACCEPT     all  --  anywhere             anywhere           
ACCEPT     all  --  anywhere             anywhere           
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
DROP       tcp  --  anywhere             anywhere             tcp flags:!FIN,SYN,RST,ACK/SYN state NEW



Название: запутался в iptables
Отправлено: DedMagarbI4 от 20 февраля 2021, 22:08:39
а форвардинг включен на сервере?

не помню как так точно, что то наподобии ip.forwarding=1 в каком-то файле conf  ::)
Название: запутался в iptables
Отправлено: K.E.P. от 20 февраля 2021, 22:35:37
а форвардинг включен на сервере?

не помню как так точно, что то наподобии ip.forwarding=1 в каком-то файле conf  ::)
включен конечно.
Название: запутался в iptables
Отправлено: DedMagarbI4 от 21 февраля 2021, 23:29:07
-A FORWARD -i ens2f0 -o eno2 -j REJECT --reject-with icmp-port-unreachable
а вот это правило не режет случайно ?
Название: запутался в iptables
Отправлено: K.E.P. от 24 февраля 2021, 15:36:25
ыхых. всё оказалось просто. на коммутаторе есть аксес листы с определенными Ip. хорошо что это тестовая система.  %)
Название: запутался в iptables
Отправлено: DedMagarbI4 от 26 февраля 2021, 14:04:41
уффф... стул не прогорел случайно?  :D
Название: запутался в iptables
Отправлено: Flyer_SPb от 14 марта 2021, 10:22:11
На всяк случ, листинг действующих правил лучше смотреть как "iptables -L -nv"
Ну и да, сейчас всё более становится актуальным не iptables, а nftables, правда, там с документацией не очень хорошо.