Tengo estas reglas de iptable:
-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
Las líneas
-A INPUT -p tcp -m multiport --dports 22 -j fail2ban-ssh
y
-A fail2ban-ssh -j RETURN
parece estar duplicado o escrito dos veces. ¿Cómo puedo eliminar el duplicado?
Respuestas:
Lista con números de línea y eliminar por número.
Luego elimine una regla usando su número de línea. Luego repita (los números de línea cambian para las siguientes reglas cuando se elimina uno, así que vuelva a enumerar antes de eliminar otro).
fuente
Eso es todo lo que necesitas realmente.
fuente
Si solo desea eliminar las líneas dobles que son directamente una tras otra , puede exportarlas, unificarlas y volver a importarlas con
Si desea eliminar otras líneas, use un editor en ~ / tmp / iptables.conf antes de volver a importarlo de la misma manera.
Comprueba tus nuevas reglas con
fuente
/tmp
.~/tmp
Un comentario a fail2ban: fail2ban parece agregar sus propias reglas de iptables. Por lo tanto, no debe almacenar estas reglas con, por ejemplo, iptables-save. Luego, después de un reinicio, las reglas se duplicarán (su regla guardada + la regla agregada por fail2ban).
fuente
Eliminar todas las líneas duplicadas excepto COMMIT
fuente
Estoy usando un script bash tan pequeño que se ejecuta a través de cron.
fuente