User Tools

Site Tools


jtr:instalacion_configuracion

Instalación y configuración de John The Ripper

Control de versiones

Fecha Actividad Autor
19/03/2011 Publicación inicial Jorge Iván Meza Martínez.
09/06/2011 Modificación de la instalación del Cluster al Nodo Grid. Jorge Iván Meza Martínez.
13/06/2011 Se actualizó el script de instalación con la ruta de instalación (make). Jorge Iván Meza Martínez.

Introducción

En este capítulo se realiza la instalación del software John The Ripper en el Nodo Grid para futuras pruebas de ejecución.

Este procedimiento se ejecutará desde un Nodo Cliente a través de las herramientas que el Nodo Grid provee para la ejecución de trabajos utilizándolas para obtener, construír e instalar el software en la ubicación apropiada para que este pueda ser accedido por los demás componentes del Nodo.

El procedimiento consta de los siguientes pasos generales.

  1. Creación del script de instalación.
  2. Creación del script de envío del trabajo de instalación al Nodo Grid.
  3. Envío del trabajo de instalación y verificación de los resultados.

Requerimientos

  1. El Compute Element deberá estar correctamente instalado y funcionando.
  2. El Cliente OSG deberá estar correctamente instalado.
  3. El certificado de usuario deberá estar correctamente instalado en el Cliente.

Precondición

Crear el script de instalación

En este paso se crea un script de shell que realiza la instalación del software en el Nodo a través de las siguientes etapas.

  1. Obtener el paquete de fuentes de la aplicación.
  2. Desempaquetar el paquete de fuentes.
  3. Construír la distribución binaria.
  4. Probar la distribución binaria.
  5. Transladar la distribución binaria a su ubicación final.
  6. Limpiar los archivos temporales.

Para mas información respecto a estas etapas consultar los comentarios inmersos en el script.

$ vi jtr_install_script.sh

Actualice el valor de la variable APP_VERSION según la última versión disponible en la página web de John The Ripper o la versión explícita que se desee instalar.

jtr_install_script.sh
#!/bin/sh
 
#################################################################
 
## Project Name: names the outer directory of the 
## installation.
 
PRJ_NAME=jtr
 
## Application's version: version of distribution to be 
## downloaded and installed.
 
APP_VERSION=1.7.7
 
## Application's name: name of the installed application.
 
APP_NAME=john-${APP_VERSION}
 
## Application's URL: location from where the original 
## package can be downloaded.
 
APP_URL=http://www.openwall.com/john/g/${APP_NAME}
 
## Application's platform: target platform for the installation.
## (For 64bits use linux-x86-64, for 32 bits use linux-x86-sse2)
 
APP_PLATFORM=linux-x86-64
 
## OSG Application's directory: place where the applications
## will be installed in the node.
 
OSG_APP_DIR=/nfs/osg/app
 
#################################################################
 
## Create the directory where the software will be installed.
 
mkdir -p ${OSG_APP_DIR}/${PRJ_NAME}/
 
## Go there.
 
cd ${OSG_APP_DIR}/${PRJ_NAME}/
 
## Download the source package of the software.
 
wget ${APP_URL}.tar.gz
 
## Unpack the source package of the software.
 
tar zxvf ${APP_NAME}.tar.gz
 
## Go to the sources directory.
 
cd ${APP_NAME}/src/
 
## Create installation's directory.
 
mkdir -p ${OSG_APP_DIR}/${PRJ_NAME}/${APP_VERSION}
 
## Build the package.
 
make clean ${APP_PLATFORM} "OMPFLAGS=-DJOHN_SYSTEMWIDE=1 -DJOHN_SYSTEMWIDE_HOME=\\\"\\\\\"\\\"${OSG_APP_DIR}/${PRJ_NAME}/${APP_VERSION}\\\"\\\\\"\\\" "
 
## Go to binaries directory.
 
cd ../run/
 
## Check the build.
 
ls -l john
 
./john --test
 
## Copy all binary files to the installation directory.
 
cp -rf * ${OSG_APP_DIR}/${PRJ_NAME}/${APP_VERSION}
 
## Set a shortcut to the current version of the software.
 
rm ${OSG_APP_DIR}/${PRJ_NAME}/current
 
ln -s ${OSG_APP_DIR}/${PRJ_NAME}/${APP_VERSION} ${OSG_APP_DIR}/${PRJ_NAME}/current
 
## Go there.
 
cd ${OSG_APP_DIR}/${PRJ_NAME}/${APP_VERSION}
 
## Check the final contents of the installation directory.
 
pwd & ls -l
 
## Remove the mess.
 
rm -f ${OSG_APP_DIR}/${PRJ_NAME}/${APP_NAME}.tar.gz
 
rm -rf ${OSG_APP_DIR}/${PRJ_NAME}/${APP_NAME}
 
#################################################################
$ chmod +x jtr_install_script.sh

Crear el script de envío del trabajo

En este paso se crea un script de CondorG para el envío del trabajo de instalación al Nodo Grid de la siguiente manera. Nótese que se utiliza a fork como manejador de trabajos (jobmanager) ya que es estrictamente necesario que este trabajo se ejecute en el Compute Element (CE) del Nodo.

$ vi jtr_install.submit
jtr_install.submit
universe      = grid
grid_resource = gt2 ce.migrid.com/jobmanager-fork
executable    = jtr_install_script.sh 
notification  = Error
output        = _jtr_install.out
error         = _jtr_install.err
log           = _jtr_install.log 
queue

Enviar el trabajo al Nodo Grid y verificar los resultados

En este paso se realiza el envío del trabajo al Nodo Grid según la especificación del mismo recién creada y se verifica que el proceso de instalación del software haya sido exitoso.

$ condor_submit jtr_install.submit 

Una vez terminada la ejecución del proceso se deberán obtener contenidos similares a los siguientes en los archivos de registro.

En _jtr_install.err se deberá encontrar el registro de la descarga (con wget) del paquete con las fuentes de la aplicación.

En _jtr_install.log se deberá encontrar el registro habitual del Nodo Grid ejecutando el trabajo enviado.

En _jtr_install.out se deberá encontrar la salida estándar de todo el proceso de instalación de la aplicación. Para verificar que su ejecución fue exitosa verifique especialmente el final de este archivo en donde deberá encontrarse el resultado de las pruebas internas del softawre y el listado de los archivos finalmente instalados. Algo similar a lo mostrado a continuación.

Benchmarking: Traditional DES [128/128 BS SSE2-16]... DONE
Many salts:	1899K c/s real, 1899K c/s virtual
Only one salt:	1663K c/s real, 1663K c/s virtual
 
Benchmarking: BSDI DES (x725) [128/128 BS SSE2-16]... DONE
Many salts:	61675 c/s real, 61675 c/s virtual
Only one salt:	60218 c/s real, 60098 c/s virtual
 
Benchmarking: FreeBSD MD5 [32/64 X2]... DONE
Raw:	8717 c/s real, 8699 c/s virtual
 
Benchmarking: OpenBSD Blowfish (x32) [32/64 X2]... DONE
Raw:	404 c/s real, 404 c/s virtual
 
Benchmarking: Kerberos AFS DES [48/64 4K]... DONE
Short:	277256 c/s real, 276704 c/s virtual
Long:	839577 c/s real, 837901 c/s virtual
 
Benchmarking: LM DES [128/128 BS SSE2-16]... DONE
Raw:	12663K c/s real, 12688K c/s virtual
 
Benchmarking: generic crypt(3) [?/64]... DONE
Many salts:	209971 c/s real, 209552 c/s virtual
Only one salt:	208785 c/s real, 208785 c/s virtual
 
Benchmarking: dummy [N/A]... DONE
Raw:	68418K c/s real, 68418K c/s virtual
 
/nfs/osg/app/jtr/1.7.7
total 1252
-rw------- 1 osgedu osgedu 341064 Jun  9 21:38 all.chr
-rw------- 1 osgedu osgedu 232158 Jun  9 21:38 alnum.chr
-rw------- 1 osgedu osgedu 131549 Jun  9 21:38 alpha.chr
-rw------- 1 osgedu osgedu  40391 Jun  9 21:38 digits.chr
-rwxr-xr-x 1 osgedu osgedu 229272 Jun  9 21:38 john
-rw------- 1 osgedu osgedu  29618 Jun  9 21:38 john.conf
-rw------- 1 osgedu osgedu 215982 Jun  9 21:38 lanman.chr
-rwx------ 1 osgedu osgedu    785 Jun  9 21:38 mailer
-rw------- 1 osgedu osgedu  22965 Jun  9 21:38 password.lst
lrwxrwxrwx 1 osgedu osgedu      4 Jun  9 21:38 unafs -> john
lrwxrwxrwx 1 osgedu osgedu      4 Jun  9 21:38 unique -> john
lrwxrwxrwx 1 osgedu osgedu      4 Jun  9 21:38 unshadow -> john

Enlaces

jtr/instalacion_configuracion.txt · Last modified: 2012/02/26 22:35 (external edit)