Как настроить правила маршрутизации для разрешения трафика https
Это про установку clearOS.
eth0 = внешний интерфейс (dhcp Internet) eth1 = внутренняя сеть, статическая 192.168.0.10 eth2 = dmz
Проблема в том, что после первоначальной установки я смог подключиться к внешнему (Интернету) без особых проблем, но использование локальной сети (то есть просмотр) изначально было "закрыто", я мог пропинговать машины, но просмотр был невозможен.
Включение веб-прокси исправило это, за исключением страниц https. Страницы Https заблокированы, они все время ожидания, когда в сети.
Исходя из опыта программирования, я не так хорошо знаком с iptables-lingo, это за пределами моего понимания, но любые советы или полезные указания к полезному примеру, подобному тому, что мне нужно сделать, будут высоко оценены. Маршрут и вывод iptables --list предоставлены ниже.
маршрут:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.0 * 255.255.255.0 U 0 0 0 eth1
192.168.0.0 * 255.255.255.0 U 0 0 0 eth2
96.22.88.0 * 255.255.255.0 U 0 0 0 eth0
default modemcable001.8 0.0.0.0 UG 0 0 0 eth0
Iptables:
[root@alcastraz ~]# iptables --list -n -v
Chain INPUT (policy DROP 290 packets, 12072 bytes)
pkts bytes target prot opt in out source destination
2 84 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 state INVALID
0 0 REJECT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x12/0x12 state NEW reject-with tcp-reset
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:!0x17/0x02 state NEW
0 0 DROP all -- eth0 * 127.0.0.0/8 0.0.0.0/0
0 0 DROP all -- eth0 * 169.254.0.0/16 0.0.0.0/0
4473 1190K ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- pptp+ * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- tun+ * 0.0.0.0/0 0.0.0.0/0
10200 2469K ACCEPT all -- eth1 * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT udp -- eth2 * 0.0.0.0/0 192.168.0.50 udp spt:68 dpt:67
0 0 ACCEPT tcp -- eth2 * 0.0.0.0/0 192.168.0.50 tcp spt:68 dpt:67
0 0 ACCEPT udp -- eth2 * 192.168.0.0/24 192.168.0.50 udp dpt:53
0 0 ACCEPT tcp -- eth2 * 192.168.0.0/24 192.168.0.50 tcp dpt:53
56 1624 ACCEPT icmp -- eth0 * 0.0.0.0/0 0.0.0.0/0 icmp type 0
0 0 ACCEPT icmp -- eth0 * 0.0.0.0/0 0.0.0.0/0 icmp type 3
1 28 ACCEPT icmp -- eth0 * 0.0.0.0/0 0.0.0.0/0 icmp type 8
0 0 ACCEPT icmp -- eth0 * 0.0.0.0/0 0.0.0.0/0 icmp type 11
25 8189 ACCEPT udp -- eth0 * 0.0.0.0/0 0.0.0.0/0 udp spt:67 dpt:68
0 0 ACCEPT tcp -- eth0 * 0.0.0.0/0 0.0.0.0/0 tcp spt:67 dpt:68
0 0 ACCEPT tcp -- * * 0.0.0.0/0 192.168.0.50 tcp dpt:80
0 0 ACCEPT tcp -- * * 0.0.0.0/0 96.22.88.25 tcp dpt:80
0 0 ACCEPT tcp -- * * 0.0.0.0/0 192.168.0.50 tcp dpt:443
0 0 ACCEPT tcp -- * * 0.0.0.0/0 96.22.88.25 tcp dpt:443
0 0 ACCEPT tcp -- * * 0.0.0.0/0 192.168.0.50 tcp dpt:1875
0 0 ACCEPT tcp -- * * 0.0.0.0/0 96.22.88.25 tcp dpt:1875
0 0 ACCEPT udp -- eth2 * 0.0.0.0/0 0.0.0.0/0 udp dpts:1024:65535 state RELATED,ESTABLISHED
0 0 ACCEPT tcp -- eth2 * 0.0.0.0/0 0.0.0.0/0 tcp dpts:1024:65535 state RELATED,ESTABLISHED
434 56568 ACCEPT udp -- eth0 * 0.0.0.0/0 0.0.0.0/0 udp dpts:1024:65535 state RELATED,ESTABLISHED
10241 11M ACCEPT tcp -- eth0 * 0.0.0.0/0 0.0.0.0/0 tcp dpts:1024:65535 state RELATED,ESTABLISHED
Chain FORWARD (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT icmp -- * * 192.168.0.0/24 0.0.0.0/0 icmp type 0
0 0 ACCEPT icmp -- * * 0.0.0.0/0 192.168.0.0/24 icmp type 0
0 0 ACCEPT icmp -- * * 192.168.0.0/24 0.0.0.0/0 icmp type 3
0 0 ACCEPT icmp -- * * 0.0.0.0/0 192.168.0.0/24 icmp type 3
1 84 ACCEPT icmp -- * * 192.168.0.0/24 0.0.0.0/0 icmp type 8
0 0 ACCEPT icmp -- * * 0.0.0.0/0 192.168.0.0/24 icmp type 8
0 0 ACCEPT icmp -- * * 192.168.0.0/24 0.0.0.0/0 icmp type 11
0 0 ACCEPT icmp -- * * 0.0.0.0/0 192.168.0.0/24 icmp type 11
0 0 DROP icmp -- * * 192.168.0.0/24 0.0.0.0/0
0 0 DROP icmp -- * * 0.0.0.0/0 192.168.0.0/24
0 0 ACCEPT all -- * * 192.168.0.0/24 192.168.0.0/24 state RELATED,ESTABLISHED
0 0 DROP all -- * * 192.168.0.0/24 192.168.0.0/24
0 0 ACCEPT all -- * * 192.168.0.0/24 192.168.0.0/24
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
0 0 ACCEPT all -- eth2 * 0.0.0.0/0 0.0.0.0/0
189 9468 ACCEPT all -- eth1 * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- pptp+ * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- tun+ * 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
4473 1190K ACCEPT all -- * lo 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- * pptp+ 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- * tun+ 0.0.0.0/0 0.0.0.0/0
13828 13M ACCEPT all -- * eth1 0.0.0.0/0 0.0.0.0/0
57 1652 ACCEPT icmp -- * eth0 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT udp -- * eth0 0.0.0.0/0 0.0.0.0/0 udp spt:68 dpt:67
0 0 ACCEPT tcp -- * eth0 0.0.0.0/0 0.0.0.0/0 tcp spt:68 dpt:67
0 0 ACCEPT tcp -- * eth2 192.168.0.50 0.0.0.0/0 tcp spt:80
0 0 ACCEPT tcp -- * eth0 96.24.88.26 0.0.0.0/0 tcp spt:80
0 0 ACCEPT tcp -- * eth2 192.168.0.50 0.0.0.0/0 tcp spt:443
0 0 ACCEPT tcp -- * eth0 96.24.88.26 0.0.0.0/0 tcp spt:443
0 0 ACCEPT tcp -- * eth2 192.168.0.50 0.0.0.0/0 tcp spt:1875
0 0 ACCEPT tcp -- * eth0 96.24.88.26 0.0.0.0/0 tcp spt:1875
0 0 ACCEPT all -- * eth2 0.0.0.0/0 0.0.0.0/0
9125 2383K ACCEPT all -- * eth0 0.0.0.0/0 0.0.0.0/0
Chain drop-lan (0 references)
pkts bytes target prot opt in out source destination
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
Спасибо!
[ОБНОВЛЕНИЕ] Обновлен вывод iptable, добавлены параметры -v -n. Страницы https теперь работают, хотя только когда клиент настроен на использование веб-прокси, это переустановка, и я озадачен тем, как веб-клиенты могут получить доступ к Интернету без прокси перед переустановкой. Хотя такая маршрутизация через прокси-сервер может иметь смысл в рабочей среде, я чувствую, что это может быть излишним для моей домашней сети, где самая большая угроза - моя собака, резвящаяся по кабелям.
1 ответ
Основываясь на том факте, что при использовании прокси-сервера работают только HTTP и HTTPS-доступ, создается впечатление, что clearOS фактически не маршрутизирует какие-либо пакеты для клиентов. Это обычно вызывается FORWARD
цепочка отбрасывания пакетов (что хорошо выглядит из вышеприведенного вывода) или отключение переадресации IP (cat /proc/sys/net/ipv4/ip_forward
должен выводить 1
) или NAT не применяется (т.е. MASQUERADE
правила в POSTROUTING
цепь nat
Таблица).