Mam te iptable zasady:
-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
Linie
-A INPUT -p tcp -m multiport --dports 22 -j fail2ban-ssh
i
-A fail2ban-ssh -j RETURN
wydaje się być duplikowane lub pisane dwukrotnie. Jak mogę usunąć duplikat?
Odpowiedzi:
Wyświetl listę z numerami linii i usuń według numeru.
Następnie usuń jedną regułę, używając jej numeru linii. Następnie powtórz (numery linii zmieniają się zgodnie z następującymi regułami, gdy jedna zostanie usunięta, więc ponownie wypisz listę przed usunięciem innej).
źródło
To wszystko, czego naprawdę potrzebujesz.
źródło
Jeśli chcesz usunąć tylko podwójne linie, które są bezpośrednio po sobie, możesz je wyeksportować, ujednolicić i ponownie zaimportować
Jeśli chcesz usunąć inne wiersze, użyj edytora na ~ / tmp / iptables.conf, zanim ponownie zaimportujesz go w ten sam sposób.
Sprawdź swoje nowe zasady za pomocą
źródło
/tmp
.~/tmp
Komentarz do fail2ban: fail2ban wydaje się dodawać swoje własne reguły iptables. Dlatego nie powinieneś przechowywać tych reguł z np. Iptables-save. Następnie po ponownym uruchomieniu reguły zostaną podwojone (zapisana reguła + reguła dodana przez fail2ban).
źródło
Usuń wszystkie zduplikowane linie oprócz COMMIT
źródło
Używam tak małego skryptu bash, który działa przez cron.
źródło