Archivo de la etiqueta: hardening

VirtualBox en slackware 14

Lo prometido es deuda dirían, así que aquí está.

Primero que nada necesitamos descargar los archivos para compilar (ademas en slackware deberas tener los paquetes de compilación mínimos necesarios, glib, libc, gcc y el resto (creo que haré otro post referente a lo mínimo necesario para compilar paquetes)).
http://slackbuilds.org/repository/14.0/system/virtualbox/

1-virtualbox-pagina-inicial

Hay varias informaciones en la página, pero entre otras abajo podemos notar que nos pide que antes tengamos instalados acpia y virtualbox-kernel.

2-virtualbox-requerimientos

 

Por lo que vamos a descargar primero acpica y luego por virtualbox-kernel.

4-virtualbox-requerimientos-consola-instalacion-paquete-acpia

Descargamos el source comprimido y el paquete de slackbuilds.org para acpica.
y vamos a la consola
accedemos a donde descargamos los archivos:

bash-4.2$tar -xzpf acpica.tar.gz
bash-4.2$mv acpica-unix2-20130214.tar.gz acpica
bash-4.2$cd acpica

pasamos a modo superusuario

bash-4.2$su
Password:

Opcionalmente yo ultimamente ejecuto el comando

export MAKEFLAGS="j5"

donde el 5 indica el número de hilos que deseo tener corriendo durante la compilación.

Para ejecutar el comando de compilación ejecutamos como super usuario:

bash-4.2# ./acpica.Slackbuild

4-virtualbox-requerimientos-consola-instalacion-paquete

cuando haya terminado la compilación mostrará algo como esto:
4-virtualbox-requerimientos-consola-instalacion-paquete-acpia-1

el archivo instalador por lo general siempre se genera y queda en /tmp
Entonces lo movemos a la carpeta actual:

bash-4.2#mv /tmp/acpica-20130214-i486-1_SBo.tgz ./

Luego ejecutamos el comando que instala el paquete en el sistema, el instalador es installkpkg:

bash-4.2#installpkg acpica-20130214-i486-1_SBo.tgz

Nos mostrará un texto descriptivo del paquete mientras lo instala.
Luego finalmente nos dice que ha instalado el paquete.

 

Esto es el proceso normal durante la instalación de un slackbuild.
Ahora procederemos a instalar el paquete virtualbox-kernel

Primero descargar el paquete

3-virtualbox-requerimientos-virtualbox-kernel

 

Realizamos los mismos pasos:
– Vamos con la consola a donde descargamos los paquetes y ejecutamos el comando de descompresion al archivo slackbuild:

bash-4.2$tar -xzpf virtualbox-kernel.tar.gz

movemos el source comprimido a la carpeta que acabamos de descomprimir

bash-4.2$mv virtualbox-kernel-4.2.10.tar.xz  virtualbox-kernel
bash-4.2$cd virtualbox-kernel

Cambiamos a modo de superusuario

bash-4.2$su
Password:
bash-4.2#

y ahora ejecutamos el comando para compilar:

bash-4.2#./virtualbox-kernel.Slackbuild

3-virtualbox-requerimientos-consola-1

 

3-virtualbox-requerimientos-consola-2

Una vez que se ha creado el paquete lo movemos de la carpeta tmp a la carpeta actual:

bash-4.2#mv /tmp/virtualbox-kernel-4.2.10_3.2.23_smp-i486-1_SBo.tgz ./

Observación: tener en cuenta que 3.2.23_smp es la versión de mi kernel, uds van a ver algo similar si tienen el mismo kernel u otra versión.

Luego finalmente se procede a la instalacion con installpkg

bash-4.2# installpkg virtualbox-kernel-4.2.10_3.2.23_smp-i486-1_SBo.tgz

3-virtualbox-requerimientos-consola-instalacion-paquete

Listo ya tenemos dos de los requerimientos
Ahora ya podemos compilar e instalar virtualbox.

Descomprimos el paquete de slackbuilds.org

bash-4.2$tar -xzpf virtualbox.tar.gz

movemos el source comprimido a la carpeta virtualbox que acabamos de descomprimir

bash-4.2$mv VirtualBox-4.2.10.tar.bz2 virtualbox
bash-4.2$cd virtualbox

Pasamos a modo superusuario:

bash-4.2$su
Password:

y antes de correr el comando de compilacion del slackbuild, agregamos el grupo virtualbox al sistema
sino tendriamos un mensaje como este:
6-virtualbox-requerimientos-consola-instalacion-virtualbox-alerta-vboxgroup

asi que agregamos con el comando que allí mismo sugiere:

bash-4.2#groupadd -g 215 vboxusers

Luego antes de continuar, hay algo más. Se pueden pasar algunos parámetros al slackbuild a  la hora de compilar. Uno de ellos es el Hardening (realmente no estaba muy seguro de que erá, así que hice una búsqueda y me encontré con esta respuesta en este foro: https://forums.virtualbox.org/viewtopic.php?f=7&t=53293

Donde cito lo que dice el usuario noteirak

Typically, hardening means that a bunch of security checks will occur, and a very strict set of rules will apply for files location, security permissions, etc. Simply so the application doesn’t break, and also to make sure no tempering is attempted.

If you are a USER, keep hardening enabled.If you are a DEVELOPPER, you can turn off hardening to make your life much easier while coding.

De lo que extraigo:

si eres un usuario manten activado el hardening, sino (si eres desarrollador) mantenlo desactivado para hacer tu vida mucho más sencilla.

Como yo soy desarrollador (lo que no significa que vaya a desarrollar con virtualbox) lo mantengo desactivado.
Además en un comienzo pensé en tener activado los enlaces con java, pero me salió un error, así que decidí dejarlo a un lado, pero si decides hacerlo basta con poner «JAVA=yes» antes de la llamada al script slackbuild.

Finalmente la llamada al script quedaría algo así

bash-4.2#HARDENING=no ./virtualbox.Slackbuild

7-virtualbox-requerimientos-consola-instalacion-virtualbox-alerta-error-compilar-java_no

luego de terminar muestra que el paquete se ha creado:
8-finalizacion-instalacion

movemos el paquete creado  a la carpeta actual e instalamos con installpkg

bash-4.2#mv /tmp/virtualbox-4.2.10-i486-1_SBo.tgz ./
bash-4.2#installpkg virtualbox-4.2.10-i486-1_SBo.tgz

Y listo
luego deberiamos de poder entrar en nuestro sistema y buscar virtualbox

9-ventana-instalacion-resultado

Como nota final, quiero mencionar que el compilar los paquetes lleva cierto tiempo, usar el MAKEFLAGS=»j5″  (donde 5 es el numero de threads que puede soportar el procesador  +1) ayuda a reducir el tiempo (gracias a la compilación en paralelo) pero no siempre funciona como se espera y puede producir algunos errores en la compilación según lo que he leído en la red, pero este no fue el caso, mi netbook con procesador atom de 1.6GHz que tiene 2 núcleos  pero soporta hiperthreading se portó y aquí una muestra del gráfico del htop:

adelanto

Llevo su tiempo hacer el post, espero pueda servirles de guía, recordar que puede variar en su instalación según las librerías que tengan, la versión del kernel y otros factores.

los datos del uname -a de mi máquina:

bash-4.2# uname -a
Linux netbook 3.2.23-smp #2 SMP Thu Jul 12 21:12:14 CDT 2012 i686 Intel(R) Atom(TM) CPU N570 @ 1.66GHz GenuineIntel GNU/Linux