¿Por qué esta guía?
Esta guía nace de una experiencia real. En un entorno donde la privacidad y la seguridad se han vuelto imprescindibles, muchos usuarios de Linux Mint se preguntan si están verdaderamente protegidos frente a amenazas externas.
No se trata de paranoia: hoy en día, una configuración deficiente o la exposición accidental de una dirección IP o un puerto abierto puede suponer una puerta de entrada para intrusiones, escaneos maliciosos o accesos no autorizados.
A través de esta guía, voy a documentar el proceso de revisión, auditoría y blindaje de un sistema Linux Mint, con explicaciones claras y herramientas al alcance de cualquier usuario.
Porque dormir tranquilo también es una cuestión de seguridad digital.
Datos personales que comprometen tu equipo en la Red, ¿qué podemos hacer?
- Primer indicio: posibilidad de fuga de credenciales e información privada.
Ante la posible filtración de datos que pueden identificar tu equipo, como por ejemplo tu IP Pública al descubierto, debemos analizar y proteger la red.
Al margen de que necesites mantener ciertos puertos abiertos, por el momento, es necesario cerrar toda conexión entrante.
Si tenemos reglas configuradas con Ufw (Gufw, en entorno gráfico), u otro cortafuegos, que permiten puertos entrantes, debemos anularlas de inmediato. Entendiendo que usamos Ufw:
En caso de no tenerlo activado, urge hacerlo:
$ sudo ufw enable
Configuraremos el cortafuegos con reglas de fábrica:
Accesos entrantes: denegado.
$ sudo ufw default deny incoming
Accesos salientes: permitido.
$ sudo ufw default allow outgoing
Eliminamos todas las reglas preconfiguradas (si las hubiere).
$ sudo ufw reset
Confirmamos que Ufw está activo con las reglas de fábrica.
$ sudo ufw status verbose
1973sobreruedas@manual_de_supervivencia_linux /Linux Mint 22.1\ - Manual de supervivencia linux - /xia 22.1\ ~ -> $ sudo ufw status verbose [sudo] contraseña para sobreruedas: Estado: activo Acceso: on (low) Predeterminado: deny (entrantes), allow (salientes), disable (enrutados) Perfiles nuevos: skip
En este punto acoto las posibles intrusiones por puertos abiertos olvidados.
- Revisión de servicios en escucha
Comprobación de puertos abiertos por servicios activos:
$ sudo ss -tulnp
ss muestra conexiones de red activas con su IP de origen/destino.

La expresión -tulnp es una forma abreviada de escribir -t -u -l -n -p, donde cada letra representa una opción independiente. Esta técnica se conoce como agrupación de opciones cortas (en inglés grouped short options).
- Opciones utilizadas:
- t: TCP
- u: UDP
- l: mostrar sockets de escucha
- n: sin resolución de nombres (más rápido)
- p: nombre del proceso involucrado
🔍 Hay que buscar líneas con direcciones IP que no se reconocen, sobre todo en estado ESTABLISHED.
Esto me mostró procesos como dropbox, megasync, cupsd, systemd-resolve, y servicios internos como java (usado intencionadamente). Todos ellos estaban justificados. No había servicios sospechosos ni tampoco inesperados.
También se puede usar:
$ sudo netstat -tulnp
O combinaciones con filtros:
$ sudo ss -tulnp | grep LISTEN
- Auditoría del sistema con chkrootkit
Ejecutamos el escaneo del sistema en busca de rootkits:
$ sudo chkrootkit
Si no lo tuvieseis instalado, es tan sencillo como: $ sudo apt install chkrootkit
Mi informe arrojó un resultado positivo: no se detectaron infecciones ni rootkits activos. Algunos directorios y archivos fueron marcados como «sospechosos» por su ubicación o formato (por ejemplo, en rutas ocultas de Python o Ruby), pero tras mi revisión confirmé que eran archivos legítimos.
- Verificación de modificaciones en
/etc
Para detectar cambios recientes en configuraciones sensibles:
$ sudo find /etc -type f -mtime -5 -ls
Esto permite rastrear los archivos del sistema modificados en los últimos 5 días. Observé únicamente cambios derivados del ajuste del cortafuegos y algunas configuraciones de impresión (CUPS).
- Confirmación final: ningún servicio escuchando públicamente
La combinación de pasos anteriores permitió validar que:
- No hay puertos abiertos innecesarios.
- El cortafuegos está activo y bloquea todo lo no explícitamente permitido.
- No hay procesos desconocidos ni servicios sospechosos escuchando en red.
- No se detectan rootkits ni archivos ocultos maliciosos.
🛡️ ¿Pueden entrar a tu sistema sólo con tu IP pública?
No directamente.
Tener tu IP pública visible no equivale a estar «abierto» al mundo como una casa sin puerta. Veamos por qué:
- 🔍 Tu router está de por medio.
- Tu IP pública suele ser la del router, no la del equipo directamente. Éste actúa como muro de contención (cortafuegos natural), y no reenvía conexiones a tu PC salvo que tú lo configures (con puertos abiertos o DMZ).
- 🔒 No tienes puertos abiertos por defecto.
- En la mayoría de los routers domésticos:
- No hay puertos abiertos entrantes, y mucho menos servicios escuchando.
- Esto significa que, aunque alguien escanee tu IP, encontrará… nada útil.
- En la mayoría de los routers domésticos:
- 🐾 Un atacante necesita más piezas y tener sólo la IP no les sirve si no conocen:
- Qué sistema usas.
- Qué puertos tienes abiertos (si los tienes).
- Qué servicios están vulnerables (y expuestos públicamente).
Capa extra de seguridad
Nota avanzada para más expertos.
🔗 Firewall IPv6
Para asegurarse de que también se bloquea todo en IPv6, o como caso desconocido no se bloquease con los comandos anteriores, propongo actuar directamente:
📡 Detectar la interfaz de red
Para saber qué nombre de interfaz usar en tus reglas de firewall, ejecuta:
$ ip link show
Salida de ejemplo:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:002: <tu_interfaz>: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT qlen 1000 link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
En este ejemplo, la interfaz principal es <tu_interfaz> (sustitúyelo por la que veas en tu equipo). Cada usuario tendrá el suyo: eth0, wlan0, enp3s0, wlp2s0, etc.
$ sudo ufw allow in on tu_interfaz to any proto tcp port 22 comment 'SSH v6'
$ sudo ufw default deny incoming ipv6
¿Qué significan estos dos comandos y qué aportan?
- Visibilidad y trazabilidad documental
Aunque UFW suele heredar la configuración IPv4 a IPv6 (si está habilitado), declarar explícitamente la regla en IPv6 deja muy claro en tu auditoría y en/etc/ufw/user.rulesque «todo lo entrante IPv6 está cerrado salvo lo que se abra después». Eso ayuda al mantenimiento a largo plazo y evita sorpresas si alguien deshabilita sin querer el «v6=yes» en/etc/default/ufw.
- Defensa en profundidad
$ sudo ufw allow in on tu_interfaz to any proto tcp port 22 comment 'SSH v6'
Asegura que, en la única interfaz donde esperas SSH IPv6, permites el puerto 22 sobre TCP. Un atacante interno o un servicio mal configurado en otra zona no podrá conectarse por v6 en otra interfaz (túneles, bridges, etc.).sudo ufw default deny incoming ipv6
Bloquea todo lo demás en IPv6: una «barrera» genérica que cierra gaps de reglas específicas o de aplicaciones que abran sockets v6 sin que te des cuenta.
- Compatibilidad con entornos dual-stack y migraciones
En redes dual-stack (v4+v6) «por defecto» IPv6 puede comportarse de forma distinta —enlaces SLAAC, túneles 6to4, Teredo—. Con estas reglas te aseguras de no tener rutas o puertos abiertos v6 «por error» mientras la infraestructura se estabiliza o migras a un firewall más avanzado (nftables, cloud security groups, etc.).
- Facilidad de debugging
Si algo no funciona por SSH IPv6, buscas justamente esa regla comentada «SSH v6» en el log o en la policy.
Si más adelante quieres afinar QoS o rate-limiting en IPv6, ya tienes el punto de partida en tu UFW.
📝 Logging de UFW
Para un mayor control se revisará el Log.
Para ver intentos bloqueados:$ sudo ufw logging on
Los registros quedarán guardados en /var/log/ufw.log.
De este modo se completa el ciclo «revisar → bloquear → auditar».
⚙️ Nivel Pro: iptables / nftables
En entornos más complejos puede interesar usar $ nft directamente:$ sudo nft list ruleset
Conclusión
Este procedimiento sencillo pero riguroso permite auditar y reforzar la seguridad de red en Linux Mint, especialmente útil tras una reinstalación o para revisar configuraciones pasadas por alto. La tranquilidad digital no se improvisa: se construye paso a paso.


Deja una respuesta