
Tengo un servidor dedicado alquilado en el que alojo ciertos servicios.
Por razones de seguridad, creé una cadena de reglas que comparará las direcciones DDNS enumeradas y solo se conectará a las conexiones que coincidan. Parecía mejor que bloquear o aceptar por país.
Ex.
-A ACEPTAR_PERSONAL -s xxx.dns.com -j ACEPTAR
-A ACEPTAR_PERSONAL -s yyy.dns.com -j ACEPTAR
Funcionó bien por un tiempo, pero después de unos días, de repente no pude acceder a mi servidor. Después de un poco de apoyo por parte del hosting, pude acceder a través de webmin y descubrí que mis direcciones DDNS en iptable han sido reemplazadas por IP reales y, desde entonces, han cambiado por cualquier motivo.
¿Alguna idea sobre lo que ha sucedido? He revisado las tareas cron, especialmente semanalmente, pero no encuentro nada sospechoso.
También estoy usando Webmin para establecer los valores.
Respuesta1
La resolución de DNS ocurre antes de que la regla de firewall se cargue en el kernel, por lo que no puede hacer lo que quiere usando iptables.
Respuesta2
Ha mencionado que está verificando las direcciones DDNS enumeradas. Muchas veces he visto que estas listas no son fiables al 100%. Mi propia IP estática en algunas listas está categorizada como dinámica. Por lo tanto, es posible que la IP pública desde donde intentó acceder a su máquina también esté en la lista DDNS. Si está intentando proteger su sistema de ataques SSH, le sugeriría que piense comoDenegar hosts
Respuesta3
Como dijo womble, iptables resuelve su nombre cuando se cargan las reglas. Es posible que desee gestionar el acceso utilizando hosts.allow
, por ejemplo
sshd: xxx.dns.com
sshd: yyy.dns.com
También puedes gestionar el acceso usando "AllowUsers" en sshd_config
. Cualquiera de los métodos buscará su dirección en el momento de la conexión.
Respuesta4
falla2banMe ha funcionado muy bien en mi servidor virtual. Se puede configurar para que funcione con múltiples servicios, ssh, ftp, etc. Actualmente lo uso para bloquear intentos de fuerza bruta en SSH y FTPS. Prohibirá automáticamente la IP durante un período de tiempo usando iptables después de X intentos fallidos de iniciar sesión en su servidor.