Translate

miércoles, noviembre 05, 2014

Nos creamos un servidor NAS casero con Linux



Nos interesa sacar partido a las principales herramientas de Linux para que nos baje los torrent y nos mande un mail cuando finalice la bajada de nuestros ficheros.

Correo y cron


Para instalar un servidor de correo y que envie mails a nuestra direcion de correo tenemos que tener instalado mailx y exim4


#apt-get install mailx exim4-config


Despues tenemos que configurar el servidor de correo para que envie desde nuestra maquina:


#dpkg-reconfigure exim4-config


despues de eso añades como "internet site, mail recibed and send by smtp
le das solo a la loopback interface para que escuche peticiones
entrantes y listo, aceptara cualquier smtp de tu maquina. Si quieres de
tu red interna añades por ejemplo 192.168.0.0/88 o tu rango extenso de

ip. Eso si, sin autentificacion.


Para sacar el listado de un directorio y mandarmelo por mail usamos el siguiente comando:

#ls /home/carlos/.aMule/Incoming/ | mailx -s "Listado de bajadas en emule" mimail@gmail.com

Para efectuar un test a una direccion de red que le pasemos con un ping ( ping de una sola respuesta) le damos el siguiente script:

#!/bin/bash

MALO=`ping -rc 1 $1|grep Unreachable`

if `test "$MALO" != ""`
then echo "No existe"
else echo "OK"
fi
prueba llamándolo con la IP, por ejemplo, si lo llamas prueba.sh:

$ prueba.sh 192.168.1.2
$ prueba.sh 192.168.1.5

El mismo ejercicio pero generando una pagina web con formato:

#!/bin/bash
echo "" > /root/index.html
MALO=`ping -rc 1 $1| grep Unreachable`

if `test "$MALO" != ""`
then echo "NAS-micasa Caido" >> /root/index.html

else echo "NAS-micasa OK" >> /root/index.html
fi

echo "
" >> /root/index.html

El ejercicio adaptado a mi red para vigilar un servidor:
#!/bin/bash

MALO=`ping -rc 1 192.168.2.105 | grep Unreachable`

if `test "$MALO" != ""`
then echo "Estado servidor NAS: Caido" | mail -s "Estado del Servidor NAS" rompeola@gmail.com
else echo "Nas levantado, no mando mail, no hace falta"  > /dev/null
fi


Podemos agregar una entrada cron para que automáticamente mande los mails con la frecuencia que deseemos:

-metemos el comando anterior en un script (script.sh y le damos permisos de ejecucion chmos +x script.sh)
-agregar la entrada cron:
#crontab -e ---->Entramos en modo edicion de cron

  0,10,20 * * * * /bin/script.sh     --->> se ejecuta todos los dias a todas las horas durante los minutos 0, 10 y 20


Servidor NAS, necesitaremos un cliente torrent que permita administración vía web como

 torrentflux,


192.168.2.105 --- administracion web puerto 80
192.168.2.105:9091  -->> Pagina de descargas torrent
192.168.2.105:4080  -->> Pagina de descargas emule
   


No hay comentarios: