Ясно. Нужна кардинальная помощь...
Проблема номер один.
Связка
-A PREROUTING -s 192.168.4.0/22 -p tcp -m multiport --dports 80,443 -j REDIR_AUTH
-A REDIR_AUTH -p tcp -m multiport --dports 80,443 -j REDIRECT --to-ports 9443
в зависимости от того, что именно вы имели в виду, должна быть переписана до
-A PREROUTING -s 192.168.4.0/22 -j REDIR_AUTH
-A REDIR_AUTH -p tcp -m multiport --dports 80,443 -j REDIRECT --to-ports 9443
либо
-A PREROUTING -s 192.168.4.0/22 -p tcp -m multiport --dports 80,443 -j REDIR_AUTH
-A REDIR_AUTH -j REDIRECT --to-ports 9443
(Домашнее задание - объяснить, почему так и для какой ситуации подходит каждый вариант.)
Проблема номер два.
*filter
:INPUT ACCEPT [986377:162116364]
:FORWARD DROP [177144:11571350]
:OUTPUT ACCEPT [967280:182023267]
-A FORWARD -d 192.168.160.0/24 -j ACCEPT
-A FORWARD -s 192.168.160.0/24 -j ACCEPT
-A FORWARD -s 78.154.170.75/32 -d 192.168.4.0/22 -j ACCEPT
-A FORWARD -s 192.168.4.0/22 -d 78.154.170.75/32 -j ACCEPT
-A FORWARD -s 192.168.5.2/32 -d 192.168.4.0/22 -j ACCEPT
-A FORWARD -s 192.168.4.0/22 -d 192.168.5.2/32 -j ACCEPT
COMMIT
На самом деле тут куча проблем, но начнём по порядку.
*filter
:INPUT DROP [0:0] (Да, да, ибо нефиг на шлюзе отставлять двери нараспашку.)
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
# Сбросить глупости
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A FORWARD -m conntrack --ctstate INVALID -j DROP
# Пропустить уже установленные соединения.
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
# Пропустить наши соединения
-A INPUT -i lo -j ACCEPT
-A INPUT -s 192.168.4.0/22 -j ACCEPT
# Пустить народ к северу
-A FORWARD -i $IF_LAN -s 192.168.4.0/22 -d 192.168.5.2/32 -j ACCEPT
-A FORWARD -i $IF_LAN -s 192.168.4.0/22 -d 78.154.170.75/32 -j ACCEPT
# Дать этим охламонам инет
-A FORWARD -i $IF_LAN -s 192.168.4.0/22 -o $IF_INET -j ACCEPT
-A FORWARD -i ppp+ -s 192.168.160.0/24 -o $IF_INET -j ACCEPT
# Поймать всё, что забыли.
-A INPUT -j LOG --log-prefix "FORGOT-INPUT "
-A FORWARD -j LOG --log-prefix "FORGOT-FORWARD "
COMMIT
P.S.
Ставим rsyslogd и фильтруем логи нетфильтра в отдельные файлы...