Resumen de Linux
Linux es un sistema operativo de escritorio alternativo, de código abierto y centrado en la privacidad. Frente a la telemetría omnipresente y otras tecnologías que atentan contra la privacidad en los principales sistemas operativos, Linux de escritorio ha seguido siendo la opción clara para quienes buscan un control total sobre sus ordenadores desde la base.
En general, nuestro sitio web utiliza el término "Linux" para describir las distribuciones Linux de escritorio. En esta página no se tratan otros sistemas operativos que también utilizan el núcleo Linux, como ChromeOS, Android y Qubes OS.
Nuestras recomendaciones de Linux:
Notas de Privacidad
Linux plantea algunos problemas de privacidad importantes que debes tener en cuenta. A pesar de estos inconvenientes, las distribuciones Linux de escritorio siguen siendo estupendas para la mayoría de la gente que desea:
- Evitar la telemetría que, regularmente, viene con los sistemas operativos propietarios
- Mantener la libertad de software
- Utiliza sistemas centrados en la privacidad como Whonix o Tails
Seguridad de Código Abierto
Es un error común pensar que Linux y otros programas de código abierto son intrínsecamente seguros simplemente porque el código fuente está disponible. Se espera que la verificación comunitaria se realice con regularidad, pero este no siempre es el caso.
En realidad, la seguridad de las distribuciones depende de varios factores, como la actividad del proyecto, la experiencia de los desarrolladores, el nivel de rigor aplicado a las revisiones del código y la frecuencia con la que se presta atención a partes concretas del código base, que pueden permanecer intactas durante años.
Elementos de Seguridad Ausentes
Por el momento, Linux de escritorio está por detrás de alternativas como macOS o Android cuando se trata de ciertas características de seguridad. Esperamos ver mejoras en estos ámbitos en el futuro.
-
El **arranque verificado ** en Linux no es tan robusto como alternativas como el Arranque Seguro de Apple o el Arranque Verificado de Android. El arranque verificado evita la manipulación persistente por parte de malware y los ataques evil maid, pero sigue sin estar disponible en gran medida incluso en las distribuciones más avanzadas.
-
Un aislamiento fuerte para aplicaciones en Linux que es muy deficiente, incluso con aplicaciones en contenedores como Flatpaks o soluciones de aislamiento como Firejail. Flatpak es la utilidad de aislamiento de procesos más prometedora para Linux hasta el momento, pero sigue siendo deficiente en muchas áreas y permite defaults inseguros que permiten a la mayoría de las aplicaciones eludir trivialmente su aislamiento de procesos.
Además, Linux se queda atrás en la implementación de mitigaciones de exploits que ahora son estándar en otros sistemas operativos, como Protección de Código Arbitrario en Windows o Tiempo de Ejecución Reforzado en macOS. Además, la mayoría de los programas Linux y el propio Linux están codificados en lenguajes poco seguros para la memoria. Los fallos de corrupción de memoria son responsables de la mayoría de las vulnerabilidades corregidas y a las que se asigna un CVE. Aunque esto también es cierto para Windows y macOS, estos están avanzando rápidamente en la adopción de lenguajes seguros para la memoria -como Rust y Swift, respectivamente-, mientras que no existe un esfuerzo similar para reescribir Linux en un lenguaje seguro para la memoria como Rust.
Elegir tu distribución
No todas las distribuciones Linux son iguales. Nuestra página de recomendaciones de Linux no pretende ser una fuente autoritaria sobre qué distribución debes utilizar, pero nuestras recomendaciones están alineadas con las siguientes directrices. Estas son algunas cosas que debes tener en cuenta a la hora de elegir una distribución:
Ciclo de lanzamiento
Recomendamos encarecidamente que elijas distribuciones que permanezcan cerca de los lanzamientos estables del software de origen, comúnmente denominadas como distribuciones de lanzamiento continuo. Esto se debe a que las distribuciones de lanzamiento de ciclo congelado, normalmente no actualizan las versiones de sus paquetes y se encuentran detrás en actualizaciones de seguridad.
Para las distribuciones congeladas como Debian, se espera que los encargados de mantener los paquetes adapten los parches para corregir vulnerabilidades, en lugar de actualizar el software a la "siguiente versión" lanzada por el desarrollador original. Algunas correcciones de seguridad (en particular para el software menos popular) no reciben un CVE ID en absoluto y por lo tanto no llegan a la distribución con este modelo de parches. Como resultado, las correcciones de seguridad menores a veces se retrasan hasta la siguiente versión principal.
No creemos que retener paquetes y aplicar parches provisionales sea una buena idea, ya que se aparta de la forma en que el desarrollador podría haber previsto que funcionara el software. Richard Brown tiene una presentación sobre esto:
Actualizaciones Tradicionales vs. Atómicas
Tradicionalmente, las distribuciones Linux se actualizan mediante la actualización secuencial de los paquetes deseados. Las actualizaciones tradicionales, como las utilizadas en las distribuciones basadas en Fedora, Arch Linux y Debian, pueden ser menos fiables si se produce un error durante la actualización.
En cambio, las distribuciones de actualización atómica aplican las actualizaciones en su totalidad o no las aplican en absoluto. En una distribución atómica, si se produce un error durante la actualización (tal vez debido a un fallo de alimentación), no se modifica nada en el sistema.
El método de actualización atómica puede lograr la fiabilidad con este modelo y se utiliza para distribuciones como Silverblue y NixOS. Adam Šamalik brinda una presentación sobre cómo rpm-ostree
funciona con Silverblue:
Distribuciones "enfocadas en la seguridad"
A menudo existe cierta confusión entre las distribuciones "enfocadas en la seguridad" y las distribuciones "pentesting". Una búsqueda rápida de "la distribución de Linux más segura" suele arrojar resultados como Kali Linux, Black Arch o Parrot OS. Estas distribuciones son distribuciones de pruebas de penetración ofensivas que incluyen herramientas para probar otros sistemas. Estas no incluyen ninguna "seguridad adicional" o mitigaciones defensivas destinadas a un uso regular.
Distribuciones basadas en Arch Linux
Arch y las distribuciones basadas en Arch no son recomendables para quienes se inician en Linux (independientemente de la distribución), ya que requieren un mantenimiento del sistema regular. Arch no dispone de un mecanismo de actualización de la distribución para las opciones de software subyacentes. En consecuencia, hay que estar al tanto de las tendencias actuales y adoptar las tecnologías por cuenta propia a medida que van sustituyendo a las prácticas más antiguas.
Para un sistema seguro, también se espera que tengas suficientes conocimientos de Linux para configurar correctamente la seguridad de su sistema, como adoptar un sistema de control de acceso obligatorio, configurar listas negras de módulos del núcleo, endurecer los parámetros de arranque, manipular los parámetros de sysctl y saber qué componentes necesitan, como Polkit.
Cualquiera que utilice el Repositorio de Usuario de Arch (AUR) debe sentirse cómodo auditando los PKGBUILDs que descargue de ese servicio. Los paquetes AUR son contenidos producidos por la comunidad y no son examinados de ninguna manera, y por lo tanto son vulnerables a software Ataques a la Cadena de Suministro, lo que de hecho ha ocurrido en el pasado.
El AUR debe utilizarse siempre con moderación, y a menudo hay muchos malos consejos en diversas páginas que dirigen a la gente a utilizar ciegamente AUR helpers sin suficiente advertencia. Se aplican advertencias similares al uso de Archivos de Paquetes Personales (PPA) de terceros en distribuciones basadas en Debian o Proyectos Comunitarios (COPR) en Fedora.
Si tienes experiencia con Linux y deseas utilizar una distribución basada en Arch, generalmente recomendamos Arch Linux de línea principal sobre cualquiera de sus derivados.
Además, estamos en contra de usar estos dos derivados de Arch específicamente:
- Manjaro: Esta distribución retiene los paquetes durante 2 semanas para asegurarse de que sus propios cambios no se rompan, no para asegurarse de que el flujo ascendente sea estable. Cuando se utilizan paquetes AUR, suelen compilarse con las últimas bibliotecas de los repositorios de Arch.
- Garuda: Utilizan Chaotic-AUR que compila automáticamente y a ciegas paquetes del AUR. No existe ningún proceso de verificación que garantice que los paquetes AUR no sufran ataques en la cadena de suministro.
Núcleo Linux-libre y distribuciones "Libre"
Recomendamos no utilizar el kernel Linux-libre, ya que elimina las mitigaciones de seguridad y suprime las advertencias del kernel sobre microcódigo vulnerable.
Control de acceso obligatorio
El control de acceso obligatorio es un conjunto de controles de seguridad adicionales que ayudan a confinar partes del sistema como aplicaciones y servicios del sistema. Las dos formas comunes de control de acceso obligatorio que se encuentran en las distribuciones de Linux son SELinux y AppArmor. Mientras que Fedora utiliza SELinux por defecto, Tumbleweed utiliza AppArmor por defecto en el instalador, con una opción para elegir SELinux en su lugar.
SELinux en Fedora limita los contenedores Linux, las máquinas virtuales y los demonios de servicio de forma predeterminada. AppArmor es utilizado por el demonio snap para los snaps deaislamiento que tienen confinamiento estricto como Firefox. Existe un esfuerzo de la comunidad para confinar más partes del sistema en Fedora con el grupo de interés especial ConfinedUsers.
Recomendaciones Generales
Cifrado de Unidad
La mayoría de las distribuciones de Linux tienen una opción dentro de su instalador para habilitar LUKS FDE. Si esta opción no se configura en el momento de la instalación, tendrás que hacer una copia de seguridad de tus datos y volver a instalarla, ya que el cifrado se aplica después de particionar el disco, pero antes de formatear el sistema de archivos. También te sugerimos que borres de forma segura tu dispositivo de almacenamiento:
Swap
Considera utilizar ZRAM en lugar de un archivo o partición de swap tradicional para evitar la escritura de datos de memoria potencialmente sensibles en el almacenamiento persistente (y mejorar el rendimiento). Las distribuciones basadas en Fedora utilizan ZRAM por defecto.
Si necesitas la función de suspensión en disco (hibernación), tendrás que utilizar un archivo o partición de swap tradicional. Asegúrate de que cualquier espacio de swap que tengas en un dispositivo de almacenamiento persistente esté cifrado como mínimo para mitigar algunas de estas amenazas.
Firmware de Propietario (Actualizaciones de Microcódigo)
Algunas distribuciones de Linux (como las basadas en Linux-libreo las DIY) no incluyen las actualizaciones de microcódigo de propietario que parchean vulnerabilidades de seguridad críticas. Algunos ejemplos notables de estas vulnerabilidades son Spectre, Meltdown, SSB, Foreshadow, MDS, SWAPGS y otras vulnerabilidades de hardware.
Nosotros recomendamos encarecidamente que instales las actualizaciones de microcódigo, ya que contienen importantes parches de seguridad para la CPU que no pueden mitigarse totalmente sólo con software. Tanto Fedora como openSUSE aplican actualizaciones de microcódigo por defecto.
Actualizaciones
La mayoría de las distribuciones de Linux instalan automáticamente las actualizaciones o te recuerdan que debes hacerlo. Es importante mantener el sistema operativo actualizado para que el software esté parcheado cuando se detecte una vulnerabilidad.
Algunas distribuciones (especialmente las dirigidas a usuarios avanzados) son más básicas y esperan que hagas las cosas tú mismo (por ejemplo, Arch o Debian). Con estas distribuciones será necesario ejecutar manualmente el "gestor de paquetes" (apt
, pacman
, dnf
, etc.) para recibir actualizaciones de seguridad importantes.
Además, algunas distribuciones no descargan automáticamente las actualizaciones de firmware. Para ello, deberás instalar fwupd
.
Controles de Permisos
Los entornos de escritorio (DEs) que admiten el protocolo de visualización Wayland son más seguros que los que solo admiten X11. Sin embargo, no todos los DEs aprovechan al máximo las mejoras de seguridad de la arquitectura de Wayland.
Por ejemplo, GNOME tiene una notable ventaja en seguridad comparado con otras DEs al implementar controles de permisos para software de terceros que intenta capturar tu pantalla. Es decir, cuando una aplicación de terceros intenta capturar tu pantalla, se te pide permiso para compartir tu pantalla con la aplicación.
Muchas alternativas aún no ofrecen estos mismos controles de permisos,1 mientras que otras están esperando a que Wayland implemente estos controles.2
Ajustes de privacidad
Aleatorización de direcciones Mac
Muchas distribuciones Linux de escritorio (Fedora, openSUSE, etc.) vienen con NetworkManager para configurar los ajustes de Ethernet y Wi-Fi.
Es posible aleatorizar la dirección MAC cuando se utiliza NetworkManager. Esto proporciona un poco más de privacidad en las redes Wi-Fi, ya que hace más difícil rastrear dispositivos específicos en la red a la que estás conectado. No te hace anónimo.
Recomendamos cambiar la configuración a aleatoria en lugar de estable, como se sugiere en el artículo.
Si estás utilizando systemd-networkd, necesitarás configurar MACAddressPolicy=aleatorio
que activará RFC 7844 (Perfiles de Anonimato para Clientes DHCP).
La aleatorización de direcciones MAC es beneficiosa sobre todo para las conexiones Wi-Fi. En el caso de las conexiones Ethernet, aleatorizar la dirección MAC aporta pocas ventajas (si es que aporta alguna), ya que un administrador de red puede identificar trivialmente tu dispositivo por otros medios (como inspeccionar el puerto al que está conectado en el conmutador de red). La aleatorización de las direcciones MAC Wi-Fi depende del soporte del firmware de la Wi-Fi.
Otros identificadores
Hay otros identificadores del sistema con los que conviene tener cuidado. Deberías pensar en esto para ver si se aplica a tu modelo de amenaza:
- Nombres de host: El nombre de host de tu sistema se comparte con las redes a las que te conectas. Debes evitar incluir términos identificativos como tu nombre o tu sistema operativo en tu nombre de host, en su lugar, cíñete a términos genéricos o cadenas de caracteres aleatorias.
- Nombres de usuario: Del mismo modo, tu nombre de usuario se utiliza de diversas maneras en todo el sistema. Considera la posibilidad de utilizar términos genéricos como "usuario" en lugar de tu nombre real.
- ID de Máquina: Durante la instalación, se genera un ID de máquina único que se almacena en tu dispositivo. Considera configurarlo en un ID genérico.
Contador de sistema
El Proyecto Fedora cuenta cuántos sistemas únicos acceden a sus réplicas utilizando una variable countme
en lugar de un ID único. Fedora hace esto para determinar la carga y aprovisionar mejores servidores para las actualizaciones cuando sea necesario.
Esta opción está actualmente desactivada por defecto. Recomendamos añadir countme=false
en /etc/dnf/dnf.conf
por si se habilita en el futuro. En sistemas que utilizan rpm-ostree
, como Silverblue, la opción countme se desactiva enmascarando el temporizador rpm-ostree-countme.
openSUSE también utiliza un ID único para contar los sistemas, que puede desactivarse vaciando el archivo /var/lib/zypp/AnonymousUniqueId
.
-
KDE tiene actualmente una propuesta abierta para añadir controles para capturas de pantalla: https://invent.kde.org/plasma/xdg-desktop-portal-kde/-/issues/7 ↩
-
Sway está esperando a añadir controles de seguridad específicos hasta que "sepa cómo va a funcionar la seguridad en su conjunto" en Wayland: https://github.com/swaywm/sway/issues/5118#issuecomment-600054496 ↩
Estás visitando la copia en Español de Privacy Guides, traducida por nuestro fantástico equipo traductor en Crowdin. ¡Si encuentras un error o ves algunas secciones sin traducir en esta página, por favor considera ayudar! Visita Crowdin
You're viewing the Spanish copy of Privacy Guides, translated by our fantastic language team on Crowdin. If you notice an error, or see any untranslated sections on this page, please consider helping out!