Назад | Перейти на главную страницу

Разрешить диапазон IP-адресов с IPTABLES из файла

Я хотел бы разрешить только определенные диапазоны IP-адресов (CIDR) и заблокировать все остальное, однако у меня есть те IP-адреса, которые я хочу разрешить в текстовом файле. Как я мог загрузить их из allow.file к интерфейсу IPTABLES eth0?

С верхней части моей головы:

while read range; do
    iptables -A INPUT -i eth0 -s $range -j ACCEPT
done < allow.file

Приложение: Комментарий в чате спрашивал, используется ли -I INPUT может быть лучше чем -A INPUT - то есть вставка правила в начале цепочки, а не в конце цепочки. На самом деле это локальная проблема - я видел наборы правил брандмауэра, в которых вставка нарушала бы что-то, и наборы правил, в которых добавление могло бы нарушить работу. Вы должны сделать этот выбор для себя и своей ситуации. Если вы не знаете, какие правила, то вам не следует писать правила iptables вручную, а следует использовать программу управления, такую ​​как shorewall или ufw.