у меня есть это правила iptables ограничить соединение на IP, и я должен отредактировать, это управляет для покрытия всех tcp/udp портов
sudo iptables -N tcpsyn
sudo iptables -A INPUT -i eth0 -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j tcpsyn
sudo iptables -A tcpsyn -p tcp --dport 80 -m limit --limit 5/second --limit-burst 40 -j RETURN
sudo iptables -A tcpsyn -p tcp --dport 80 -j DROP
iptables -I INPUT -p tcp --dport 80 \
-m connlimit --connlimit-above 40 --connlimit-mask 40 -j DROP
Простой удаляют --dport
из Примера команды
sudo iptables -D tcpsyn -p tcp --dport 80 -m limit --limit 5/second --limit-burst 40 -j RETURN
, затем добавляют, что правила
sudo iptables -N tcpsyn
sudo iptables -A INPUT -i eth0 -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j tcpsyn
sudo iptables -A tcpsyn -p tcp -m limit --limit 5/second --limit-burst 40 -j RETURN
sudo iptables -A tcpsyn -p tcp -j DROP
iptables -I INPUT -m connlimit --connlimit-above 40 --connlimit-mask 40 -j DROP
UDP
не имеют tcpsyn
Простой, добавляет количество одновременного соединения. Можно создать новую цепочку
sudo iptables -N udp
, затем добавляют, что правила к цепочке
sudo iptables -A udp -p udp -m limit --limit 5/second --limit-burst 40 -j RETURN
sudo iptables -A udp -p udp -j DROP
Должны быть работой.
РЕДАКТИРОВАНИЕ 1
Правило позволить определенному Правилу ip
iptables -I INPUT 1 -s xxx.xxx.xxx.xxx -j ACCEPT
позволить определенный IP доступу к определенному порту
iptables -A INPUT -s XXX.XXX.XXX.XXX -m state --state NEW -m tcp -p tcp --dport 33332 -j ACCEPT
Правило предоставить доступ к определенному порту
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 33332 -j ACCEPT
Одно правило для большего количества портов
iptables -A INPUT -i eth0 -p tcp -m multiport --dports 22,80,443 -m state --state NEW,ESTABLISHED -j ACCEPT
-A
средний добавляет или добавляет как последнее правило. IPtables идут от вершины в конец и останавливаются на первом соответствии правила. Можно использовать iptables -I INPUT XX
XX
, число для размещения правила в цепочку.