Fora do topo da minha cabeça:
while read range; do
iptables -A INPUT -i eth0 -s $range -j ACCEPT
done < allow.file
Adendo: um comentário no bate-papo perguntou se usar -I INPUT
poderia ser melhor que -A INPUT
, ou seja, inserir a regra no início da cadeia, em vez de no final da cadeia. Este é, na verdade, um problema local - vi conjuntos de regras de firewall em que a inserção quebraria as coisas e conjuntos de regras onde o acréscimo quebraria as coisas. Você tem que fazer essa escolha para você e sua situação. Se você não sabe qual, então você não deveria estar escrevendo as regras do iptables manualmente, e deveria estar usando um programa de gerenciamento como o shorewall ou o ufw.