> начал с простого... скажите правильно ли?1) излагаешь, а значит мыслишь, мутно, правила группируются по цепочке. когда у тебя будет правил пара сотен то -A INPUT -j REJECT через сотню правил "в канце", мягко говоря, будет незаметен.
> iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
> iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport
> 22 -j ACCEPT
> iptables -A INPUT -j REJECT --reject-with icmp-host-prohibited
забыл интерфейс lo
>[оверквотинг удален]
> 80 -j ACCEPT
> iptables -A FORWARD -p tcp -m state --state NEW -m tcp --dport
> 22 -j ACCEPT
> iptables -A FORWARD -p tcp -m state --state NEW -m tcp --dport
> 21 -j ACCEPT
> iptables -A FORWARD -p tcp -m state --state NEW -m tcp --dport
> 2020 -j ACCEPT
> iptables -A FORWARD -p tcp -m state --state NEW -m tcp --dport
> 110 -j ACCEPT
> iptables -A FORWARD -j REJECT --reject-with icmp-host-prohibited
не учитывается направление пакета, из локалки в мир или из мира в локалку
(не, я понимаю что тобой _предполагалось_ разрешить днат-нутные пакеты из мира, но предположение не верно)
> iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j
> DNAT --to-destination 192.168.20.4
> iptables -t nat -A PREROUTING -p tcp -m tcp --dport 21 -j
> DNAT --to-destination 192.168.20.4
> iptables -t nat -A PREROUTING -p tcp -m tcp --dport 20 -j
> DNAT --to-destination 192.168.20.4
> iptables -t nat -A PREROUTING -p tcp -m tcp --dport 2020 -j
> DNAT --to-destination 192.168.20.4
> iptables -t nat -A PREROUTING -p tcp -m tcp --dport 110 -j
> DNAT --to-destination 192.168.20.5
ну тут - чисто твоя реальность, оценить правильность невозможно.
Хотя, я предполагаю, что если 20 порт ты пробрасываешь как ftp-data, тогда это неправильное правило.