¿Es cierto que los sistemas operativos basados en Linux no necesitan software antivirus (frente a Windows), si es así, por qué?

De las respuestas que he visto hasta ahora, estoy de acuerdo y me encantaría escribir «sólo ver la respuesta de xyz», pero me han pedido que responda así que aquí va mi respuesta.

Windows necesita un paquete de software antivirus así como paquetes anti-malware y anti-spyware debido a su diseño y el razonamiento detrás de su diseño. Creo que los otros encuestados han cubierto por qué Linux no necesita software antivirus, anti-malware y anti-spyware, así que quiero explicar por qué Windows necesita todo ese software antes de detallar las diferencias.

Dejemos claro: la facilidad de uso está en una relación inversa con la seguridad. Esta es (parte de la razón) por la que Windows es tan inseguro (emocionalmente, así como en cuanto a seguridad) como lo es. Intenta ser todo para todos. Por el contrario, FreeBSD, una variante tipo Unix, derivada del Unix comercial, es extremadamente seguro – y extremadamente difícil de usar, especialmente cuando se compara con Windows.

Pero FreeBSD, al igual que sus hermanos OpenBSD, NetBSD, Dragonfly BSD, Pfsense, FreeNAS, TrueOS, Ghost BSD, y otros son extremadamente seguros. Menciono los BSD porque voy a ir a la derecha de Linux, sólo para poner a Linux en contexto, ya que es el primo ligeramente menos seguro de BSD, GNU/Linux.

Con las excepciones (posiblemente controvertidas) de macOS y Android, los sistemas operativos derivados originalmente de Unix comercial son famosos por su estabilidad, robustez y seguridad. Pero, ¿por qué?

La respuesta a esa pregunta se encuentra en la historia de Unix. Cuando se desarrolló Unix, lo hizo para funcionar en ordenadores centrales (en universidades); los ordenadores tenían como característica clave el hecho de que tenían que ser capaces de proporcionar acceso a muchos usuarios simultáneamente. Tampoco se quería que ninguno de estos usuarios pudiera acceder a las cuentas y archivos de otras personas, ni a los datos sensibles que la universidad decidiera almacenar en ese mismo ordenador. Así que la seguridad era y es primordial.

Ahora bien, tenemos ante nosotros un sistema operativo que tiene que permitir a múltiples usuarios utilizar múltiples programas y acceder a múltiples archivos pero sin comprometer la seguridad contra intrusiones no deseadas. ¿Acceso fácil? No en los años 70, cuando la mayoría de los usuarios no universitarios eran estudiantes de informática, de matemáticas y profesores e investigadores de ciencias. La facilidad de uso estaba lejos de ser una parte importante de la interfaz de usuario del sistema operativo.

Como escribió Michael W. Lucas, autor de varios libros sobre los BSD de software libre (es decir, FreeBSD, etc., las versiones de software libre y de código abierto de los Unix comerciales), «Unix no se ajusta a ti. Usted se ajusta a Unix».

Unix y todos sus sistemas operativos hijos provienen de una tradición y un entorno técnico, universitario. Se espera que los estudiantes sean lo suficientemente inteligentes y capaces de navegar por una interfaz de línea de comandos muy poco amigable con el usuario con habilidad y un nivel muy alto de sofisticación. Se supone que la ciencia de la computación no consiste en mimar a la gente; se trata de aprender sobre ordenadores y desarrollar nuevas tecnologías.

Y aunque es cierto que los distintos hijos de ‘nix han ido avanzando hacia la facilidad de uso, la seguridad sigue siendo primordial.

Windows se construyó con la facilidad de uso como línea de base y, por desgracia, la seguridad sigue siendo una prioridad para ponerse al día, un poco a posteriori. Microsoft ha estado trabajando muy duro para cambiar esa percepción, que la seguridad no es una prioridad tan grande como la facilidad de uso, pero es una batalla cuesta arriba para ellos.

Windows es para el jugador, el trabajador de oficina, la abuela que revisa su correo electrónico, el niño que aprende habilidades educativas y hace juegos educativos, así como el investigador, el ingeniero de software, y así sucesivamente. El problema es que no se puede ser todo para todo el mundo y esperar ser experto en todas estas funciones.

Siendo realistas, la mayoría de los usuarios de ordenadores tienen la filosofía de «no me importa cómo funciona, sólo quiero que funcione». No necesitan ni quieren lidiar con una interfaz de línea de comandos inescrutable e increíblemente complicada (incluso DOS era demasiado para la mayoría de la gente). Microsoft se dedica a vender software para ganar dinero. Para ganar dinero, tiene que dar a la gente lo que quiere, así que la facilidad de uso es primordial y la seguridad es menos importante… hasta que los clientes se quejen, claro.

Otras personas detallaron las razones por las que esto es así, pero creo que debo repasar rápidamente las diferencias.

  1. Windows trata de «restringir lo menos posible’ a los usuarios; Linux (y aquí voy a incluir automáticamente a los distintos SOs ‘nix, pero sin mencionarlos cada vez, para ahorrarme el dedo índice que estoy desgastando hasta un muñón sangriento en este smartphone) es muy tacaño con el acceso de los usuarios, asumiendo un alto grado de paranoia (justificable) y, por lo tanto, sólo dando acceso en función de las necesidades.
  2. En Linux, nada, y quiero decir *nada* se hace sin el conocimiento Y el permiso de Root, (también conocido como el Superusuario); en Windows, la cuenta de Administrador puede o no conocer, y puede o no dar permiso para ciertas acciones o actividades. En *teoría* se supone que la cuenta de Administrador tiene la última palabra y el conocimiento final de todas las actividades del sistema, y casi siempre lo tiene, pero en la práctica no siempre es así. Esto se debe a que hay dos cuentas POR ENCIMA de la cuenta de Administrador, el superadministrador, y una tan oculta (extrañamente, a la vista de todos) que nunca había oído hablar de ella antes de que alguien en Quora me preguntara, entre otros, sobre ella. (EDIT: esa cuenta se llama SYSTEM, y sí, está escondida a la vista, si revisas el Administrador de Tareas y miras los procesos [añadido 06:30 PST, 29-01-2019]). Por favor, superfans de Windows, no vayáis detrás de mí, protestando por lo equivocado que estoy. Con el debido respeto, ustedes nunca ganan estas discusiones, salvo que me inunden con toneladas de información mayormente irrelevante y/o equivocada. A menudo es mucho más irrelevante que inexacta, en una proporción de 80/20 o 90/10 (edición añadida a las 06:30 PST, 29-01-2019).
  3. Internet y TCP/IP: Linux mantiene los puertos abiertos en modo de escucha pasiva; en Windows, estos puertos se mantienen en modo de escucha activa, actuando efectivamente como ventanas abiertas en la planta baja de un edificio por lo demás seguro. Por lo tanto, los puertos en Linux parecen «cerrados», mientras que los puertos en Windows aparecen «abiertos».
  4. Linux no divide los procesos y los hilos en partes, tomados de una parte de un archivo, como hace Windows. En Linux, es todo o nada; no sólo es todo en Linux un archivo, pero el archivo completo se pone en la memoria RAM. Y dado que los archivos de Linux son pequeños, esto crea pocos problemas en términos de saturación de la RAM, a menos que no haya mucha RAM en primer lugar, lo cual es un problema para cualquier sistema operativo/ordenador. Cuanta más RAM mejor en cualquier sistema operativo.
  5. Mucho spyware está escrito y diseñado para buscar una unidad C:. Como Linux no tiene unidad C:, no puede ser atacado de esa manera.
  6. El kernel de Linux es monolítico, lo que significa que no está dividido en trozos y por lo tanto es más difícil de atacar. No es imposible, sólo más difícil. El núcleo de Windows no es monolítico, por cierto. Pero en su defensa, y lo digo en sentido literal y figurado, Microsoft construyó anillos defensivos alrededor del kernel, reduciendo la probabilidad de ataques. (Los anillos no son una defensa de seguridad significativa; en cuanto a la defensa, los anillos en Linux son más como señales de advertencia, por ejemplo, «Cuidado con los perros», o algo así; un elemento disuasorio, pero no una gran defensa). La conclusión es la siguiente: Windows hace hincapié en dar al usuario lo que quiere, es decir, una gran experiencia. Linux da a los usuarios lo que *necesitan*, es decir, protecciones paranoicas como prioridad principal, y «buenas experiencias» en el espacio de los usuarios como algo tardío; y dado que Linux da a los usuarios la posibilidad de elegir entre más de 25 entornos de escritorio en comparación con el único entorno de escritorio de Windows, yo diría que Linux le gana a Windows en términos de una experiencia de usuario positiva también. Descarado yo.

    Gracias por el A2A

    Edición añadida 29-01-2019 a las 06:27 PST: Jesse Pollard fue lo suficientemente bueno como para corregir algunos de mis errores más leves (fue lo suficientemente bueno como para dejar los errores doozy solo, (¡Whew!). De todos modos, aquí están algunas de sus ediciones/comentarios:

    «fue desarrollado para funcionar en ordenadores mainframe (en las universidades);»

    No – fue desarrollado por los Laboratorios Bell para funcionar en un PDP-7 sobrante, luego portado a un PDP-11 (ambos minicomputadores).

    Se diseñó en base a buenas prácticas y principios tomados del sistema más seguro de la época: Multics. Más tarde fue portado a un mainframe GE.

    En las universidades, creció en base a los ordenadores de la universidad… así los PDP-11, y luego a los VAX.

    «Los anillos no son una defensa de seguridad significativa; en cuanto a la defensa, los anillos en Linux son más bien señales de advertencia, por ejemplo, «Cuidado con los perros», o algo así; un elemento disuasorio, pero no una gran defensa»

    JP comenta, que «No. Los anillos son donde se bloquea el paso a los usuarios»; en lo que a mí respecta, sigue siendo una defensa, aunque no muy fuerte.

    Paul comenta que «En Windows, las cuentas normales de administrador, el propio Administrador, SYSTEM y TrustedInstaller tienen la posibilidad de ajustar los permisos sobre cualquier cosa del sistema sin tener realmente permisos de antemano (como el propietario de un fichero en Unix), pero siguen obedeciendo a los permisos y ACLs ya establecidos. Bueno, en realidad estos usuarios tienen un permiso de Toma de Propiedad que no puede ser anulado sin cambios reales en las propias estructuras de usuarios – se puede dar esta cosa a otros grupos o quitarlo de los preexistentes, aunque la eliminación podría ser un cambio de ruptura». Luego agregó que «Todos los usuarios administradores, cuando son elevados, tienen el mayor poder posible. La razón por la que sólo algunos usuarios administradores pueden hacer ciertas cosas se debe a la configuración, pero los otros administradores siempre pueden anularla. // El grupo de administradores de Windows … así como muchas otras cuentas privilegiadas como las mencionadas SYSTEM y TrustedInstaller tienen capacidades lo suficientemente importantes como para hacer cualquier cosa, ya sea directa o indirectamente. Como por ejemplo cargar drivers o CAMBIAR las capacidades permitidas por grupo.»

    A mi entender, eso apoya mi afirmación de que una cuenta por encima de superadministrador puede hacer cambios

    Edición, añadida el 31-01-2019 20:00 PST: Para que quede claro, aquí está el aspecto de un «minicomputador» de 1964, modelo PDP-7:

    main-qimg-ae318c1ec1e2dd4f91504e2110d4b023.webp

    Y aquí está el aspecto del «minicomputador», modelo PDP-11:

    main-qimg-8b53179463b1447fe4418424ecac6458

    Así que, realmente, llamar a estos «mini» según los estándares actuales, no es realmente tan mini; sólo para que todos estemos en el mismo nivel de comprensión sobre los comentarios de Jesse Pollard.