Folosesc nat DNAT pentru a redirecționa traficul de pe un anumit port către un alt server Centos printr-un tunel GRE, totuși vreau să limitez o grămadă de IP-uri de centre de date pe care le am într-o listă ipset „lista neagră”. Astfel încât traficul de ieșire către tunel este limitat.
Am încercat limitarea ratei în toate listele FORWARD, INPUT și OUTPUT, dar limita de rată nu funcționează deloc în niciuna dintre ele - poate că DNAT-ul nat o ocolește?.
iptables -A INPUT -m set --match-set blacklist src -p udp --dport 30000 -m hashlimit --hashlimit 10/min --hashlimit-name ratelimithash -j DROP
iptables -A FORWARD -m set --match-set blacklist src -p udp --dport 30000 -m hashlimit --hashlimit 10/min --hashlimit-name ratelimithash -j DROP
iptables -A OUTPUT -m set --match-set blacklist src -p udp --dport 30000 -m hashlimit --hashlimit 10/min --hashlimit-name ratelimithash -j DROP
Dacă adaug lista prin „iptables -A OUTPUT -m set --match-set blacklist src -j DROP”, oprește tot traficul, așa că lista mea de ipset IP funcționează pur și simplu nu limitează rata, oricine poate ajuta ?
ieșire iptables:
ieșire iptables
Ieșire iptables NAT:
iptables nat output
regulile iptables
#!/bin/sh
iptables -F
sudo iptables -t nat -F
iptables -t nat -X
sudo iptables -t mangle -F
sudo iptables -t mangle -X
sudo iptables -t raw -F
sudo iptables -t raw -X
sudo iptables -t securitate -F
sudo iptables -t securitate -X
sudo iptables -F
sudo iptables -X
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT
iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,STABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT
iptables -A INPUT -m set --match-set blacklist src -p udp --dport 30000 -m hashlimit --hashlimit 10/min --hashlimit-name ratelimithash -j DROP
iptables -A FORWARD -m set --match-set blacklist src -p udp --dport 30000 -m hashlimit --hashlimit 10/min --hashlimit-name ratelimithash -j DROP
iptables -A OUTPUT -m set --match-set blacklist src -p udp --dport 30000 -m hashlimit --hashlimit 10/min --hashlimit-name ratelimithash -j DROP
iptables -t nat -A POSTROUTING -s 192.168.168.0/30 ! -o gre+ -j SNAT --to-source 20&&&&&&&&&&&&
iptables -A INPUT -s 192.168.168.2/32 -j ACCEPT
iptables -I INPUT -m stare --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INTRARE -p gre -j ACCEPT
iptables -A IEȘIRE -p gre -j ACCEPT
iptables -t nat -A PREROUTING -d 20&&&&&&&&&&& -p udp --dport 30000 -j DNAT --to-destination 192.168.168.2
iptables -A OUTPUT -j DROP
iptables -P INPUT DROP