Вот мои iptables, как я могу сделать так, чтобы я мог разрешить диапазон ip на ETH1 (10.51.x.x)
# Generated by iptables-save v1.4.4 on Thu Jul 8 13:00:14 2010
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:fail2ban-ssh - [0:0]
-A INPUT -p tcp -m multiport --dports 22 -j fail2ban-ssh
-A INPUT -i lo -j ACCEPT
-A INPUT -d 127.0.0.0/8 ! -i lo -j REJECT --reject-with icmp-port-unreachable
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 143 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 110 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 25 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7
-A INPUT -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -j REJECT --reject-with icmp-port-unreachable
-A OUTPUT -j ACCEPT
-A fail2ban-ssh -j RETURN
COMMIT
Если вы хотите разрешить только определенный диапазон IP-адресов внутри 10.50.0.0 (например, с 10.50.10.20 по 10.50.10.80), вы можете использовать следующую команду:
iptables -A INPUT -i eth1 -m iprange --src-range 10.50.10.20-10.50.10.80 -j ACCEPT
Если вы хотите разрешить весь диапазон, вы можете использовать это вместо этого:
iptables -A INPUT -i eth1 -s 10.50.0.0/16 -j ACCEPT
Видеть страница руководства iptables и этот вопрос здесь, на ServerFault: Внесите в белый список разрешенные IP-адреса (входящие / исходящие) с помощью iptables
Для конкретного порта скажем 22:
iptables -A INPUT -p tcp -m iprange --src-range 10.50.10.20-10.50.10.80 --dport 22 -j ACCEPT
Что ж, вы видели, для чего хотите разрешить эти IP-адреса, но 10.51.x.x в CIDR преобразуется в 10.50.0.0/16
. Таким образом, это будет что-то вроде строки для интерфейса обратной связи, в которой есть 127.0.0.0/8
.
iptables -A INPUT -i eth1 -m iprange --src-range 10.50.10.20-80 -j ACCEPT
Может выдать следующую ошибку:
iptables: Applying firewall rules: xt_iprange: range 10.50.10.20-80 is reversed and will never match
Чтобы исправить это, просто поместите полный ip вместо этого:
iptables -A INPUT -i eth1 -m iprange --src-range 10.50.10.20-10.50.10.80 -j ACCEPT