У меня есть следующие правила:
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
-N fail2ban-ssh
-A INPUT -p tcp -m multiport --dports 22 -j fail2ban-ssh
-A INPUT -p tcp -m multiport --dports 22 -j fail2ban-ssh
-A INPUT -i lo -j ACCEPT
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -j DROP
-A fail2ban-ssh -s xx.xxx.xx.xx/32 -j REJECT --reject-with icmp-port-unreachable
-A fail2ban-ssh -j RETURN
-A fail2ban-ssh -j RETURN
Линии
-A INPUT -p tcp -m multiport --dports 22 -j fail2ban-ssh
и
-A fail2ban-ssh -j RETURN
кажется, дублируется или пишется дважды. Как я могу удалить дубликаты?
Ответы:
Список с номерами строк и удаление по номеру.
Затем удалите одно правило, используя его номер строки. Затем повторите (номера строк меняются для следующих правил при удалении одного из них, поэтому перед удалением другого внесите новый список).
источник
Это все, что вам нужно на самом деле.
источник
Если вы хотите удалить только двойные строки, расположенные сразу после одной, вы можете экспортировать, объединить и повторно импортировать с помощью
Если вы хотите удалить другие строки, используйте редактор в ~ / tmp / iptables.conf, прежде чем импортировать его таким же образом.
Проверьте свои новые правила с
источник
/tmp
.~/tmp
Комментарий к fail2ban: fail2ban, похоже, сам добавляет свои правила iptables. Таким образом, вы не должны хранить эти правила, например, с помощью iptables-save. Затем после перезагрузки правила будут удвоены (ваше сохраненное правило + правило, добавленное fail2ban).
источник
Удалить все дублированные строки, кроме COMMIT
источник
Я использую такой маленький скрипт bash, который запускается через cron.
источник