public:recetas:gnulinux:fail2ban
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| public:recetas:gnulinux:fail2ban [2018/02/04 18:02] – [Bloquear el ping] mperez | public:recetas:gnulinux:fail2ban [2024/02/20 08:46] (actual) – [Instalación de fail2ban para evitar ataques de fuerza bruta] mperez | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| + | ====== Instalación de fail2ban para evitar ataques de fuerza bruta ====== | ||
| + | Algunos enlaces: | ||
| + | |||
| + | https:// | ||
| + | |||
| + | https:// | ||
| + | |||
| + | https:// | ||
| + | |||
| + | http:// | ||
| + | |||
| + | Instalación: | ||
| + | |||
| + | <code bash> | ||
| + | apt install fail2ban | ||
| + | </ | ||
| + | |||
| + | <note important> | ||
| + | |||
| + | cp / | ||
| + | </ | ||
| + | |||
| + | En Debian 12 da un problema | ||
| + | |||
| + | < | ||
| + | #mpf begin | ||
| + | #backend = %(sshd_backend)s | ||
| + | backend=systemd | ||
| + | enabled = true | ||
| + | #mpf end | ||
| + | </ | ||
| + | |||
| + | |||
| + | El fichero ''/ | ||
| + | |||
| + | |||
| + | |||
| + | <code bash> | ||
| + | bantime | ||
| + | </ | ||
| + | |||
| + | Después de modificar el fichero hay que reiniciar el servicio | ||
| + | |||
| + | <code bash> | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | Se pueden consultar las IPs bloqueadas con | ||
| + | |||
| + | <code bash> | ||
| + | fail2ban-client status sshd | ||
| + | |||
| + | Status for the jail: sshd | ||
| + | |- Filter | ||
| + | | |- Currently failed: 2 | ||
| + | | |- Total failed: | ||
| + | | `- File list: / | ||
| + | `- Actions | ||
| + | |- Currently banned: 1 | ||
| + | |- Total banned: | ||
| + | `- Banned IP list: | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== REJECT vs. DROP ===== | ||
| + | |||
| + | Por defecto, las IPs bloqueadas reciben un '' | ||
| + | |||
| + | blocktype = REJECT --reject-with icmp-port-unreachable | ||
| + | |||
| + | por | ||
| + | |||
| + | blocktype = DROP | ||
| + | |||
| + | https:// | ||
| + | |||
| + | No está muy claro si es mejor '' | ||
| + | |||
| + | ===== Bloquear todos los puertos ===== | ||
| + | |||
| + | Por defecto solo hace DROP del puerto ssh. Para bloquear todos los puertos hay que editar el fichero ''/ | ||
| + | |||
| + | <code bash> | ||
| + | action = iptables[name=SSH, | ||
| + | </ | ||
| + | |||
| + | http:// | ||
| + | |||
| + | ===== Bloquear el ping ===== | ||
| + | |||
| + | Editar el fichero ''/ | ||
| + | <code bash> | ||
| + | actionstart = < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | |||
| + | # Option: | ||
| + | # Notes.: | ||
| + | # Values: | ||
| + | # | ||
| + | actionstop = < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | https:// | ||
| + | |||
| + | ===== Bloquear y desbloquear IPs ===== | ||
| + | |||
| + | Para desbloquear una IP | ||
| + | <code bash> | ||
| + | fail2ban-client set sshd unbanip 152.138.27.33 | ||
| + | </ | ||
| + | |||
| + | |||
| + | Para bloquear una IP | ||
| + | <code bash> | ||
| + | fail2ban-client set sshd banip 152.138.27.33 | ||
| + | </ | ||
| + | |||
| + | ===== openvpn ===== | ||
| + | Este parece que funciona: | ||
| + | |||
| + | https:// | ||
| + | |||
| + | Este de la web oficial es similar pero no «banea» (puede que sea tema de versiones): | ||
| + | |||
| + | https:// | ||
| + | |||
| + | Otros que no he probado: | ||
| + | |||
| + | https:// | ||
| + | https:// | ||
