1 de junio de 2013

Arrancar un live USB desde VirtualBox

Tengo varios LiveUSB con distribuciones linux de uso frecuentemente.
Uno de ellos es BackTrack, la octava maravilla en Penetration Testing Debian Distribution.
Pero para ejecutarlo tengo que reiniciar el ordenador, rediriigir la BIOS para que arranque desde el USB, ...
¿Y si creara una maquina virtual con VirtualBox que arranca el LiveUSB?

Pero la última version que tengo de VirtualBox, NO permite arrancar las maquinas virtuales desde dispositivos USB, de modo que hay que buscar una alternativa.

Vamos a ello.

Protocolo:

1) Descargamos la herramienta: Plop Boot Manager
http://www.plop.at/en/bootmanager/download.html

Extraemos y decomprimimos de plpbt-5.0.14.zip el fichero plpbt.iso
y lo dejamos accesible para usarlo como CD en nuestra maquina virtual VirtualBox.

Vamos ahora con VitualBox,
... abrimos VirtualBox Manager.

2) Crear una maquina virtual en VirtualBox
- Linux Debian.
- Parámetros por defecto.
- Sin disco duro.

3) Pinchamos el LiveUSB
- Agregamos Filtro dese Dispositivo USB.
- Desactivamos "Habilitar Controlador 2.0 (EHCI)".

4) Crear un CD virtual con el fichero plpbt.iso

5) Establecer que la maquina virtual arranque del CD.



6) Arrancar la máquina virtual.

7) Seleccionamos del menu de Plop Boot Manager la opción USB.




8) y... aqui tenemos nuesto USB arrancado:



Esto me ha funcionado con un LiveUSB de BackTrack5.

Lo que ya hubiera sido una pasada es que estuvieran las tarjetas wifi dispuestas para ponerlas en modo monitor y ... bueno ya me entendeis.


... aunque no ha habido suerte.

Ref.:
http://bicimatica.blogspot.com.es/2013/01/arranque-desde-una-unidad-usb-en-vmware.html
http://www.plop.at/


18 de mayo de 2013

Monitorizando el disco duro en Linux Debian

En mi microservidor debeian uno de los muchos cuellos de botella que tiene, es el bus de acceso al disco duro.

Una herramienta similar a top pero para monitorizar la lectura y escritura del disco duro es iotop.

1) Instalarlo:
En debian es muy sencillo:

# aptitude install iotop

2) Uso:

# iotop

Screenshot - Click here to close

Una opción interesante es -o que solo muestra los procesos que están accediendo al disco duro, reduciendo la información de salida.

# iotop -o

Ref.:
http://www.linuxhispano.net/2011/02/04/monitorizar-disco-duro-en-linux/
http://packages.debian.org/search?keywords=iotop
http://screenshots.debian.net/package/iotop

17 de mayo de 2013

Actualizando Debian6 a Debian7


He actualizado mi servidor micra de Debian6 a Debian7.
Estos cambios siempre son algo peligrosillos ya que algún servicio deja de funcionar o algún programa se desconfigura.

Para asegurar el tiro: primer realicá una copia del disco duro con Clonezilla.

Y después a actualizar el sistema:

Protocolo:

1) Actualaizr el fichero /etc/apt/sources.list
Cambiar squeeze por wheezy, y el resto igual.

2) # aptitude update

3) #aptitude dist-upgrade

.. es el momento de tomas un cafecito o dos si el ordenata es lento.

Ojo con actualizar los ficheros de configuración, si has realizado cambios importantes en ellos lo ideal es que conserves los actuales.

Resultado:

De momento todo parece funcionar bién: el servidor smba, apache2, MySQL, PHP5, ...
El cambio ha sido bastante poco traumático y muy estable.

Fallos:

  • Lo que si se ha fastidiado es la resolución de la pantalla de la consola, la había cambiado a 1024x768 siguiendo este protocolo: Cambiar resolución de la consola linux con Grub2
    que funcionaba perfectamente en Debian6 pero no en Debian7 ???
    ... a ver si lo arreglo.
  • No se han generado los módulos para VirtualBox, puede porque no tenia instaladas las cabeceras del nuevo kernel. VirtualBox en debian 6.0 Squeeze. Fácil de solucionar, a ver si tengo un rato y lo arreglo.
    ... Solucionado: tan fácil como: #dpkg-reconfigure virtualbox


1 de mayo de 2013

Instalar Joomla en VirtualBox con Lubuntu12.10


Joomla!Hoy en dia, hacer websites desde cero, programando todo el html y leguajes anexos, es algo muy trabajoso. El tiempo y esfuerzo invertido comparado con el resultado obtenido no compensa, salvo para prototipos en los que el aspecto final no se crítico y solo se pretende probar la funcionalidad.

Buscando he llegado a Joomla, un CMS: Content Management System que voy a probar a en una máquina virtual en Virtulabox sobre windows con Lubuntu12.10.

Protocolo:

1) Creamos la maquina virtual, con un disco duro de 8GB, como CD el iso de Lubuntu12.10, y para tener acceso al servidor la red como puente.

2) Configuramos la red de Lubuntu con IP fija. Para poder acceder desde la red local a la maquina virtual con su propia ip.

Todo el suguiente protcolo se realiza desde la maquina virtual Lubuntu:

3) Instalamos los paquetes en la maquina virtual Lubuntu:
     # apt-get install aptitude
     # aptitude install apache2
     # aptitude install php5
     # aptitude install mysql-server
     # aptitude install phpmyadmin

4) Instalar ser vidor ftp
     # aptitude install vsftpd

5) Configurar vsftp:
     # nano /etc/vsftpd.conf
         [modificar, descomentar o añadir para que el fichero quede:]
listen=YESanonymous_enable=NO local_enable=YESlocal_umask=022write_enable=YES connect_from_port_20=YES ftpd_banner=Welcome to Lubuntu FTP service chroot_local_user=YES chroot_list_enable=YESlocal_root=/var/www
chroot_list_file=/etc/vsftpd.chroot_list ls_recurse_enable=YES secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

Para tener acceso desde ftp a todos los ficheros y subdirectorios de /var/www/ cambiar su propietario al mismo usuario con el que se va a acceder por ftp:
     # chown -R usuario:usuario /var/www/

Crear y añadir usuarios autorizado a /etc/vsftpd.chroot_list

5) Descargamos Joomla en /var/www/.
Actualmente la última versión es la Joomla! 3.0

     # cd /var/www
     # wget  http://joomlacode.org/gf/download/frsrelease/17965/78414/Joomla_3.0.3-Stable-Full_Package.zip

6) Descomprimir el ficheros .zip descargado

     # unzip Joomla_3.0.3-Stable-Full_Package.zip

7) Creamos fichero escribible /var/www/configuration.php (1) y eliminamos index.html

     # cd /var/www
     # touch configuration.php
     # sudo chmod 777 configuration.php
     # rm index.html

(1) Esto no es necesario si tienes correctamente configurado el y activado el intercambio FTP en Joomla.

8) Creamos base de datos en MySQL para usar con Joomla
Usar phpmyadmin

9) Configuramos Joomla accediendo con el navegador a http://serverhost/administrator/

10) Eliminar o renombrar la carpeta /var/www/installation
      # rm -rf  /var/www/installation


Refs.:
http://lamaquinadiferencial.wordpress.com/2009/07/31/como-instalar-joomla-en-debianubuntu/

4 de abril de 2013

Instalar WordPress en Lubuntu12.10 virtualizado en VirtualBox

Como parte de la ronda de pruebas que voy a hacer con algunos CMS o Content Management System, voy a comenzar con WordPress.

La críticas de este gestor contenidos y mis pruebas apuntan a que se trata de un CMS de fácil manejo, aunque comparado con Joomla! o Drupal sus posibilidades son algo menores.

Lo veo muy orientado a la generación de blogs.

Veamos como instalar WordPress en un sistema linux Lubuntu12.10 virtalizado en VirtualBox.


Protocolo:

0) La instalación de Lubuntu en una maquina virtual bajo VitualBox es muy sencilla, y no tiene mayor problema. Crear una maquina virtual linux en VirtualBox,un disco duro virtual extensible de 8GB y usar como CD el ISO de instalación de Lubuntu12.10. Para poder acceder a esta máquina virtual desde otros ordenadores de la redlocal configurar la red de VirtualBox como Bridge.

 http://misnotaslinux.blogspot.com.es/search/label/virtualbox

1) Instalar en Lubuntu apache2, php5, MySQL ... con aptitude es cosa facil.
Aunque primero hay que instalar aptitude!!

# apt-get install aptitude


2) Descargar wordpress en /var/www/
     # wget http://es.wordpress.org/wordpress-3.5.1-es_ES.zip

3) Descomprimir en /var/www/
     # unzip wordpress-3.5.1-es_ES.zip

4) Otorgamos permisos de escritura a todos los ficheros y directorios de nuestro servidor web, para ello hacemos:

     # chown -R www-data:www-data /var/www

5) Crear base de datos para WordPress en MySQL : Usar phpmyadmin.
     Le podeis poner el nombre que mas os guste.

6) Configurar WordPress
Accedemos con en navegador a: http://yourwebserver/wordpress/
La creación del fichero wp-config.php suele fallar, por lo que es recomendable hacerlo a mano.

Copia el fichero wp-config-sample.php a  wp-config.php y edita los campos de accceso a la base de datos.

Salva y cambia el usuario de este fichero a www-data:www-data como en el paso 5.

http://codex.wordpress.org/Editing_wp-config.php

Después de modificar wp-config.php, vuelve a acceder a  http://yourwebserver/wordpress/ para continuar con la instalación.

7) Accede a tu web
http://yourwebserver/

8) Administrar y configurar tu WordPress web:
http://yourwebserver/wordpress/wp-admin/
... y completa la configuración.

Ya teneis WordPress funcionando en tu maquina linux virtualizada y lista para probar.

Refs.:
http://alopezaberasturi.blogspot.com.es/2012/11/instalar-wordpress-en-un-servidor.html
http://www.mkeficaz.com/joomla-vs-drupal-que-cms-es-mejor-para-web/

15 de marzo de 2013

Operaciones Aritméticas en Bash Script

From:
http://universo.emergya.es/snippets/operaciones-aritmeticas-en-bash



# Forma tradicional con let
CONTADOR=0
while [ $CONTADOR -lt 10 ]; do
    echo "Contador vale: $CONTADOR"
    let "CONTADOR += 1"
done
 
# Con expr
CONTADOR=0
while [ $CONTADOR -lt 10 ]; do
   echo "$CONTADOR"
   CONTADOR=$(expr $CONTADOR + 1)
done
 
# Forma alternativa
CONTADOR=0
while [ $CONTADOR -lt 10 ]; do
   echo "$CONTADOR"
   CONTADOR=$((CONTADOR + 1))
done
 
# Esta última forma, permite usar o no usar dentro de la expresión '$' para la variable, 
# También se puede poner sin espacios, es decir, esto también lo ejecutará
 
...
CONTADOR=$(($CONTADOR+1))
...
 
# Por último señalar que también permite el uso de otros operadores como son división,
# módulo y potencia:
 
CONTADOR=4
echo "Contador= $CONTADOR"
 
CONTADOR=$((4**5))
echo "Contador= $CONTADOR"
 
CONTADOR=$((CONTADOR%5))
echo "Contador= $CONTADOR"
 
CONTADOR=$((9/3))
echo "Contador= $CONTADOR"
 
# Esto daría los siguientes resultados.
 
Contador= 4
Contador= 1024
Contador= 4
Contador= 3

20 de febrero de 2013

Python Tutorial Básico (i)


homepageHe leído criticas realmente buenas de Python, que destacan su potencia, claridad y facilidad de programación.




(1) Escritura de código en Python:
    En Phyton los bloques se delimitan con dos puntos y con la identation que suele ser de 4 espacios.

(2) Scripts Python en Linux Debian deben comenzar por la ruta de Python:
    #!/usr/bin/python

(3) Standar Out:
    #!/usr/bin/python
    print "Hola pepe"
    raw_input( )

(4) Definir variables:
   n = 1000
   c = "cadena"
   Para comprobar el tipo de una variable:
   type(variable)

(5) Input:
    variable = raw_input("Teclea Variable: ")

(6) Imprimir decimales:
    numero = float(1.123456789)
    print "%.4f"%numero
 
(7) Concatenar variables:
si no son de tipo string hay que indicar el tipo de variable o generara error:
---------------------------------------------------------------
    #!/usr/bin/python
    num = 1
    str = "pp"
    print var+str
 
    TypeError: unsupported operand type(s) for +: 'int' and 'str'
---------------------------------------------------------------
    #!/usr/bin/python
    num = 1
    str = "pp"
    print "%.i"%num+str
 
    1pp
---------------------------------------------------------------
Tipos de Variables en Python:
  • %s      para cadenas
  • %i       para numeros enteros
  • %f       para numeros coma flotante
http://freepython.wordpress.com/2009/10/14/tutorial-python-ii-hola-mundo-y-tipos-de-variables/

(8) Ejecutando comandos Linux desde Python:
#!/usr/bin/python
import os
os.system(“uname -a”)
(9) Instalar, actualizar y desinstalar Modulos Python en Linux:
    Podemos usar la herramienta pip  http://pypi.python.org/pypi/pip

    Desde debian:
       #aptitude install python-pip

    Tiene que estar instalado tabien gcc y python-dev
    y sus dependencias.

       $ pip install ModuleName
       $ pip install --upgrade ModuleName
       $ pip uninstall ModuleName

       Automaticamente descarga,descomprime e instala el modulo.

        #pip install coords
        #pip install http://stsdas.stsci.edu/astrolib/coords-0.37.tar.gz


       Buscar paquetes:
       $pip search ModuleName
Tutorial de Python 'Python para todos'

 ...Continuará ...


8 de enero de 2013

Comando para ver la IP externa en Linux

File:Internet map 1024.jpgDebido al NAT de los router no es posible ver la IP externa de forma directa.

Para ver nustra IP externa se puede hacer del siguiente modo desde una consola linux con lynx instalado:

lynx -dump http://checkip.dyndns.com

Si quereis usar este truco de forma continua, podéis añadir la siguiente línea en el fichero .bashrc

alias myip='lynx -dump http://checkip.dyndns.com'

Y teclear directamente desde la línea de comando:

myip

... y aparecerá vuestra IP externa para el resto del mundo mundial.

    Current IP Address: XXX.XXX.XXX.XXX


13 de octubre de 2012

Screen, comados básicos.

Comandos básicos para screen:
  • $screen -ls  ....................... List sessions.
  • $ screen -x  ...................... Attach session.
  • CONTROL a d .....................Detach screen.
  • CONTROL a S ................. Dividir pantalla horizontal.
  • CONTROL a | .....................Dividir pantalla vertical.
  • CONTROL a TAB ............Cambiar de semipantalla.
  • CONTROL a K .....................Cierra consola actual.
  • CONTROL a X ....................Elimina división de pantalla actual.
  • CONTROL a Q ..............Elimina todas divisiones menos la actual.
  • CONTROL a \  ............. Cierra todas las consolas y sale de screen.