The Information Systems and Computer Applications examination covers material that is usually taught in an introductory college-level business information systems course.

Gentoo Hardened

 
Security Art Work by Joel Sevilleja 

En este post voy a hablar sobre una distribución, que por alguna misteriosa razón que no llego a entender, no suele ser utilizada. Hablo por supuesto, de Gentoo en su modalidad “Hardened”.

(N.d.A: Los siguientes párrafos evangelizan hacen una introducción a Gentoo, por lo que si el lector ya la conoce, puede saltar directamente a Gentoo Hardened)

Gentoo es una distribución rolling-release (lo que quiere decir que la distribución se actualiza continuamente con nuevas funcionalidades, además de para solucionar bugs). No obstante, su mayor característica es que los “paquetes” han de ser compilados por el usuario con una herramienta llamada “emerge”, que forma parte del sistema Portage.

Seguramente, el lector debe estar pensando que compilarse los propios paquetes es una pérdida de tiempo y que mejor gastar una Ubuntu / Debian / CentOS que ya te lo dan todo hecho. Pero, estamos en el año 2014 y si bien a comienzos del año 2000 la instalación de un sistema de escritorio podía durar una semana, con una máquina moderna podemos tener un sistema funcional en una noche, siempre y cuando sepamos lo que estamos haciendo. Y fíjense que estoy hablando de un sistema de escritorio, donde suele haber mayor cantidad software (y de mayor tamaño), que en un servidor.

Utilizar Gentoo tiene una serie de ventajas, de las que destacan las siguientes:

  • El sistema es mucho más flexible: se puede mezclar software de distintas ramas (Gentoo dispone de dos ramas: testing y estable) sin problemas, ya que todo se compila y se enlaza a medida, con una granularidad definida por el usuario, y no por los mantenedores de la distribución.
  • Gentoo soporta varias ramas de cada paquete, y no se centra en mantener la última versión ofrecida por el desarrollador. Por ejemplo, ahora mismo Gentoo soporta PHP en sus versiones 5.3, 5.4, 5.5 y 5.6 (este último hard-masked), y dentro de cada rama, soporta varias sub-versiones, como por ejemplo PHP 5.5.7, 5.5.9 y 5.5.10.
  • El software se compila para las características de la máquina. Basta con introducir la variable CFLAGS con el valor “-march=native -O2 -pipe” en el fichero/etc/portage/make.conf y GCC hará todo el trabajo por nosotros, optimizando incluso para la cantidad de líneas de caché de las que dispongamos.
  • El sistema portage define las “USE FLAGS”, que no son más que banderas que activan o desactivan características del software. Por ejemplo, mi sistema puede no tener un dispositivo Bluetooth. Entonces, ¿bajo qué lógica tengo que instalar dependencias de Bluetooth?
  • Si alguien desarrolla un parche para un software que añade alguna característica que necesito o veo atractiva, en la mayoría de distribuciones debo bajarme los fuentes, compilarlos e instalarlos a mano, haciendo que con el tiempo, el sistema de ficheros esté lleno de basura porque esos ficheros no están bajo el control del gestor de paquetes de turno. En Gentoo basta con dejar caer el parche en “/etc/portage/patches/
 
 

Comments are closed.