Não é bem assim.
O jeito que o iptables pensa é o seguinte:
1 - Você lança todas as regras que quer;
2 - A partir de então, o iptables começa a analisar os pacotes que entram no kernel;
3 - Quando uma regra do iptables casa com o tipo do pacote (origem, destino, blablabla), ele aplica a regra e ignora todas abaixo dele, se bem me lembro, da mesma forma que o Squid faz.
Se tu quiser bloquear tudo e ir liberando somente o necessário, utilize política DROP e vá jogando as regras de ACCEPT. Se tu quiser liberar o quê tu quer e depois bloquear tudo, você pode jogar uma regra do tipo "iptables -t filter -A FORWARD -j DROP" no final das regras daquela chain no seu script de firewall.
Abraços!