Los puertos cerrados de firewalld SSH siguen registrando intentos fallidos de inicio de sesión

Los puertos cerrados de firewalld SSH siguen registrando intentos fallidos de inicio de sesión

Configurando un nuevo VPS con almalinux.

He configurado firewalld con la siguiente configuración

  target: default
  icmp-block-inversion: no
  interfaces:
  sources:
  services: dhcpv6-client http https
  ports: 80/tcp 443/tcp 7822/tcp
  protocols:
  forward: no
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

¿Por qué todavía hay intentos fallidos de inicio de sesión en /var/log/secure cuando los puertos a los que se están conectando están cerrados?

Apr 15 14:11:57 server sshd[46737]: Failed password for root from 148.113.133.177 port 43582 ssh2
Apr 15 14:11:57 server sshd[46737]: Received disconnect from 148.113.133.177 port 43582:11: Bye Bye [preauth]

Apr 15 14:12:15 server sshd[46743]: Invalid user chenyoumin from 27.254.149.199 port 60384
Apr 15 14:12:15 server sshd[46743]: pam_unix(sshd:auth): check pass; user unknown
Apr 15 14:12:15 server sshd[46743]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=27.254.149.199 

Cuando intento ingresar por ssh al servidor con un puerto aleatorio: ssh -p 50645 [email protected]

vuelve: ssh: connect to host server.com port 50645: No route to host

Y no se registra nada en /var/log/secure.


Actualizar

He deshabilitado firewalld y habilitado nftables. Estoy cargando el siguiente conjunto de reglas.

table inet firewall {
        chain inbound_ipv4 {
        }

        chain inbound_ipv6 {
                icmpv6 type { nd-router-advert, nd-neighbor-solicit, nd-neighbor-advert } accept
        }

        chain inbound {
                type filter hook input priority filter; policy drop;
                ct state vmap { invalid : drop, established : accept, related : accept }
                iifname "lo" accept
                meta protocol vmap { ip : jump inbound_ipv4, ip6 : jump inbound_ipv6 }
                tcp dport { 80, 443, 7822 } accept
        }

        chain forward {
                type filter hook forward priority filter; policy drop;
        }
}
table inet f2b-table {
        set addr-set-sshd {
                type ipv4_addr
                elements = { 45.89.110.110 }
        }

        chain f2b-chain {
                type filter hook input priority filter - 1; policy accept;
                meta l4proto { tcp } ip saddr @addr-set-sshd reject
        }
}

Ahora esto parece funcionar bien. cualquier intento de ssh a un puerto que no sea 7822 simplemente se cuelga y no hay entradas en los registros.

Pero sigo viendo intentos de fuerza bruta por parte de bots en los registros. ¿Cómo están haciendo esto y cómo lo paro? ¿Tienen de alguna manera estas conexiones abiertas antes de que se aplicaran las reglas? ¿Cómo puedo desconectar estas conexiones sin reiniciar el VPS?

Apr 16 14:30:39 server sshd[61577]: pam_unix(sshd:auth): check pass; user unknown
Apr 16 14:30:39 server sshd[61577]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=103.39.133.250
Apr 16 14:30:41 server sshd[61577]: Failed password for invalid user user from 103.39.133.250 port 48096 ssh2
Apr 16 14:30:46 server sshd[61580]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=43.156.239.10  user=root
Apr 16 14:30:49 server sshd[61580]: Failed password for root from 43.156.239.10 port 40702 ssh2
Apr 16 14:30:58 server sshd[61583]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=165.22.96.129  user=root
Apr 16 14:31:00 server sshd[61583]: Failed password for root from 165.22.96.129 port 49100 ssh2
Apr 16 14:31:14 server sshd[61586]: Invalid user user from 43.156.82.82 port 36394
Apr 16 14:31:14 server sshd[61586]: pam_unix(sshd:auth): check pass; user unknown
Apr 16 14:31:14 server sshd[61586]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=43.156.82.82
Apr 16 14:31:16 server sshd[61586]: Failed password for invalid user user from 43.156.82.82 port 36394 ssh2
Apr 16 14:31:18 server sshd[61589]: Invalid user ubuntu from 213.190.4.134 port 36238
Apr 16 14:31:18 server sshd[61589]: pam_unix(sshd:auth): check pass; user unknown
Apr 16 14:31:18 server sshd[61589]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=213.190.4.134
Apr 16 14:31:20 server sshd[61589]: Failed password for invalid user ubuntu from 213.190.4.134 port 36238 ssh2

Respuesta1

No veo su política de firewalld aplicada en la salida de iptables-save.

Su cambio de ENTRADA tiene una política predeterminada de aceptar. Y solo salta a la cadena f2b-SSH que sospecho está administrada por fail2ban y prohíbe muchos hosts de origen (que sospecho que están atacando a su servidor sshd).

Si la dirección no ha sido prohibida por fail2ban, finalmente será aceptada y es por eso que ves mensajes en los registros.

¿Has iniciado firewalld? ¿Arrancó correctamente?

Por cierto, ¿qué AlmaLinux es? 8 todavía está en iptables, 9 está en nftables AFAIR. Si se trata de AlmaLinux 9, proporcione nft list rulesetel resultado.

información relacionada