Puertos no accesibles después del reinicio

Puertos no accesibles después del reinicio

Después de reiniciar mi servidor, ya no puedo acceder a él mediante ssh. Estoy ejecutando Ubuntu 20.04.5 sin cabeza. Después de investigar el problema, noté que todos los puertos de mi servidor parecen estar cerrados (usando un verificador de puertos abiertos como yougetsignal). Lo probé con todos los puertos previamente abiertos.
Sin embargo, sudo netstat -tulpn | grep LISTENme devuelve que mis puertos están abiertos. Ejemplo para el puerto 22:

tcp6       0      0 :::22                   :::*                    LISTEN      362/sshd: /usr/sbin

telnet localhost 22también resulta en un tiempo de espera.

Mi siguiente suposición fue que de alguna manera las reglas de iptables se sobrescribieron, así que ejecuté iptables -S | grep '22', todavía usando el puerto 22 como ejemplo. Resultó en:

-A INPUT -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT 

Además, ufw no está instalado, ni ningún otro servicio de firewall que yo sepa.

Estoy algo perdido ahora mismo, ya que no logro localizar el problema y mucho menos solucionarlo.
Cualquier ayuda es muy apreciada.

Actualizar:
nnmap localhosttiene la siguiente salida:

Nmap scan report for localhost (127.0.0.1)
Host is up (0.000012s latency).
Other addresses for localhost (not scanned): ::1
Not shown: 985 closed ports
PORT     STATE SERVICE
21/tcp   open  ftp
22/tcp   open  ssh
25/tcp   open  smtp
53/tcp   open  domain
80/tcp   open  http
110/tcp  open  pop3
143/tcp  open  imap
443/tcp  open  https
465/tcp  open  smtps
587/tcp  open  submission
993/tcp  open  imaps
995/tcp  open  pop3s
3000/tcp open  ppp
3306/tcp open  mysql
8090/tcp open  opsmessaging

Sin embargo, al usar nmap para escanear desde otro sistema se devuelve:

Host is up (0.0011s latency).
Not shown: 995 filtered ports
PORT      STATE  SERVICE
53/tcp    open   domain
143/tcp   open   imap
993/tcp   open   imaps
995/tcp   open   pop3s
40193/tcp closed unknown

Entonces, si bien parece que los puertos están abiertos, no se puede acceder a ellos desde el exterior.

Respuesta1

Pude solucionar esto, dejando instrucciones por si alguien llega a este hilo con el mismo problema.
El problema es que las reglas de iptables no se guardan después del reinicio. Específicamente, la parte IN_public_allow. Debería enumerar todos los puertos abiertos en su servidor. De lo contrario, debe agregar dichas reglas manualmente iptables -A IN_public_allow -p tcp --dport [PORT]-j ACCEPTdonde [Puerto] es el puerto que debe agregarse.
Para evitar esto después de futuros reinicios, simplemente puede instalar un paquete para guardar y restaurar las reglas automáticamente con: apt-get install iptables-persistent Las reglas se pueden guardar con iptables-save > /etc/iptables/rules.v4y ip6tables-save > /etc/iptables/rules.v6para IPv6.

información relacionada