jueves, 8 de junio de 2017

Fail2Ban: Bloquea host que tienen múltiples errores de autentificación.

Fail2Ban es un programa escrito en Python que escanea los ficheros de log (ejemplo: /var/log/auth.log) y bloquea las direcciones IP que han realizado demasiados intentos de conexión fallidas. El proceso se realiza mediante una acualización del firewall que rechaze todos los nuevos intentos de conexión desde esa dirección IP durante un periodo de tiempo configurable. Fail2Ban viene por defecto preparado para su uso con diversas aplicaciones como por ejemplo sshd y Apache, y es configurable a otras aplicaciones.

miércoles, 7 de junio de 2017

Cómo hacer una pelicula desde imagenes sueltas en Linux

En Ubuntu suponiendo que las imagenes de entrada son *.png:
0) Se agrandan las imagenes
# mogrify -resize 1280x960 *.png
1) Se convierten en jpg con morph para suavizar:
# convert *.png -delay 10 -morph 10 %05d.jpg
2)Se transforma en pelicula:
# ffmpeg -r 25 -i %05d.jpg output.mp4

martes, 6 de junio de 2017

Quetoo BETA, otro juego de primera persona.

Quetoo es un shooter de primera persona gratis para Mac, PC y Linux. Su objetivo es traer la diversión de oldschool deathmatch a una nueva generación de jugadores.

Caracteristicas


  • Modos de juego Deathmatch, Capture, Instagib, Duel y Rocket Arena
  • Equipos de juego y juego de apoyo
  • Un remake de alta calidad del legendario deathmatch Quake II de id Software.
  • Sonidos originales y música de juego de Roland Shaw y Anthony Webb.
  • 100% gratis para descargar, jugar y modificar.

Buscar ficheros de un tamaño especifico en GNU/Linux

Una práctica común es buscar ficheros de un tamaño especifico en disco y para esto nunca tenemos la/s instrucciones a mano.


Para esto hay un comando que viene muy bien:
find . -type f -size +100000k -exec ls -lh {} \;

Este comando lo que hace es buscar ficheros mas grandes de 100MB a partir del directorio actual y los muestra por pantalla con el siguiente formato:
-rw-rw-r--. 1 depruebas depruebas 119M ene 25 2012 ./1/733_setup_e.exe
-rw-r--r-- 1 depruebas depruebas 694M jun 22 10:38 ./distros/ubuntu-12.04.2-desktop-i386.iso
-rw-r--r-- 1 depruebas depruebas 785M jul 2 07:33 ./distros/ubuntu-13.04-desktop-amd64.iso
-rw-r--r-- 1 depruebas depruebas 644M jun 22 12:23 ./distros/xubuntu-13.04-desktop-i386.iso
-rw-r--r-- 1 depruebas depruebas 754M jun 22 12:26 ./distros/ubuntu-12.10-desktop-i386.iso
-rw-r--r-- 1 depruebas depruebas 794M jun 22 12:28 ./distros/ubuntu-13.04-desktop-i386.iso
-rw-r--r-- 1 depruebas depruebas 928M jun 22 15:57 ./distros/linuxmint-15-cinnamon-dvd-32bit.iso
-rw-r--r-- 1 depruebas depruebas 817M jun 22 15:39 ./distros/linuxmint-13-cinnamon-dvd-32bit.iso
-rw-r--r-- 1 depruebas depruebas 966M jun 22 19:09 ./distros/linuxmint-14.1-mate-dvd-32bit.iso
-rw-r--r-- 1 depruebas depruebas 898M jun 22 19:01 ./distros/linuxmint-13-mate-dvd-32bit.iso
-rw-r--r-- 1 depruebas depruebas 879M jun 22 15:54 ./distros/linuxmint-14.1-cinnamon-dvd-32bit.iso
-rw-r--r-- 1 depruebas depruebas 690M jun 22 12:23 ./distros/xubuntu-12.04.2-desktop-i386.iso

Si queremos buscar desde la raiz del disco cambiaremos el '.' por '/' asi:
find / -type f -size +100000k -exec ls -lh {} \;

Si queremos guardar el resultado de la busqueda en un fichero usaremos el comando tee de la siguiente forma:
find . -type f -size +100000k -exec ls -lh {} \; | tee ficheros.txt

Poner programas en background en GNU/Linux

Tres métodos simples para poner programas en background:


Usando "&"
programa.exe&
y se pone en frente con "fg"

Con "nohup ...&"
nohup programa.exe&
permite que siga calculando tras cerrar la ventana.

Y con "CTRL-Z"

Una vez el programa esta en marcha se puede poner en el fondo con "CTRL-Z" para pararlo y "bg" para ponerlo de fondo y "fg" para continuar con el programa en pantalla.

lunes, 5 de junio de 2017

Visualización del progreso de operaciones con ficheros con "Pipe Viewer"

Comprimir ficheros grandes desde la líea de comandos puede ser pesado y a menos que uses un "file manager" como Midnigth Comander (que desde aquí recomiendo para facilitar la vida en el manejo de la línea de comandos), no tenemos por defecto forma de conocer cómo avanza la operacion o cuanto se supone que hay que esperar para que el proceso concluya.
Aquí es donde tenemos el comando "pv" (Pipe Viewer), un interesante comando que permite visualizar una barra de progreso e incluso el tiempo estimado de finalización.
A continuación algunos ejemplos de su uso :

Comprimir un archivo usando gzip :

pv access.log | gzip > access.log.gz
482MB 0:00:26 [18.3MB/s] [==================================>] 100%

Comprimir un archivo usando bzip2 :

pv access.log | bzip2 > access.log.bz2
482MB 0:04:45 [1.69MB/s] [==================================>] 100%

Descomprimir un archivo usando gzip :

pv access.log.gz | gunzip > access.log
48.5MB 0:00:08 [5.85MB/s] [==================================>] 100%

Descomprimir un archivo usando bzip2:

pv access.log.bz2 | bunzip2 > access.log
25.2MB 0:00:42 [ 607kB/s] [==================================>] 100%

Comprimir el directorio actual con una sola línea de comando :

tar cpf - . | pv -s $(du -sb . | cut -f1) | gzip > archive.tar.gz
1.48GB 0:01:33 [16.3MB/s] [==================================>] 100%

Este es un poco más complicado y requiere algo de explicación: dado que "pv" no puede conocer a priori la cantidad de datos que se transferirán, tenemos que incluir de antemano la información mediante el comando "du"

Hay mucho más que el comando "pv" puede hacer por nosotros, por ejemplo, limitando el flujo de datos de un "pipe" (usando el modificador de salida "-L"). Junto con el modificador de salida "-q" (que desactiva la barra de progreso), es posible su uso para la proyección de animaciones de texto.

Ejecutar una animación  VT100 a 9600 bytes por segundo (un globo que gira):

curl -s http://artscene.textfiles.com/vt100/movglobe.vt | pv -q -L 9600

Y finalmente un grupo de ejemplos más vistosos (que usan el comando "dialog" que es igualmente interesante):

(pv -n backup.tar.gz | tar xzf - -C path/to/data ) 2>&1 | dialog --gauge "Running tar, please wait..." 10 70 0

tar -czf - ./Documents/ | (pv -n > backup.tgz) 2>&1 | dialog --gauge "Progress" 10 70

tar -cf - . | pv -s $(du -sb . | awk '{print $1}') | gzip > out.tgz
pv linux-source.tar.bz2 | tar -jxf -


jueves, 1 de junio de 2017

OpenTomb, el nuevo intento de recrear Tomb Raider.


@opentomb

OpenTomb es una nueva recreación del clásico Tomb Raider open source cuyo código se halla en github.
En esta ocasión se trata de recrear los primeros cinco juegos de la saga. Para lo que se necesitan los datos de los juegos originales y algunos trucos, pues el formato es un tanto obscuro.