Crea tu propia nube con Raspberry Pi y OwnCloud

Crea tu propia nube con Raspberry Pi y OwnCloud

Hoy vamos a ver otra de las múltiples aplicaciones para, el ya comentado muchas veces, minicomputador Raspberry Pi. Por solo 35 dólares tenemos ante nosotros un increíble abánico de posibildades y proyectos que harán las delicias de los más manitas y amantes del DIY, Do It Yourself! o ¡Hazlo tu mismo!.

raspberry pi

En este caso específico vamos a ver como usar nuestra Raspberry Pi para crear nuestra propia plataforma en la nube. Vamos a utilizar para ello el apodado la comunidad Dropbox Open Source, estamos hablando de Owncloud.

Para quien no lo sepa Owncloud es una increíble plataforma que nos permite por medio de nuestro propio servidor almacenar archivos en línea, además de funcionalidades muy interesantes como son el streaming de música directamente desde el servidor, un editor de textos online, un visor de documentos o una galería de imágenes en línea. Una plataforma que nos dará un control total sobre nuestros archivos desde cualquier dispositivo que usemos.

Para el desarrollo de este proyecto necesitarás a parte de tu Raspberry Pi, un disco duro externo o llave USB que usaremos para almacenar los datos, también podemos utilizar la propia tarjeta SD de nuestra Rasp.

Configurando nuestra conexión e instalando el servidor

Lo primero que haremos será editar el archivo de interfaces de red para darle a la Raspberry una IP fija, usaremos el siguiente comando para editar dicho archivo:

sudo nano /etc/network/interfaces

Una vez abierto el archivo deberás modificarlo para que quede de esta manera, puede que el campo address sea diferente en tu caso.

  auto eth0  iface eth0 inet static         address 192.168.1.118         gateway 192.168.1.1         netmask 255.255.255.0         network 192.168.1.0         broadcast 192.168.1.255

Tras editar el archivo usaremos Ctrl+O para guardar el archivo y Ctrl+X para salir del editor. Reiniciaremos entonces nuestro adaptador de red de la siguiente manera:

sudo /etc/init.d/networking restart

Procederemos entonces a actualizar los repositorios y la propia Raspberry Pi y luego instalaremos todo el software necesario para el servidor:

sudo apt-get updatesudo apt-get install apache2 php5 php5-json php5-gd php5-sqlite curl libcurl3 libcurl4-openssl-dev php5-curl php5-gd php5-cgi php-pear php5-dev build-essential libpcre3-dev php5 libapache2-mod-php5 php-apc gparted

Configurando PHP y Apache

Una vez descargado todo el software vamos a proceder a configurar paso a paso toda nuestra infraestructura, comenzaremos instalando PHP APC, hará que las paginas carguen de manera más rapida: sudo pecl install apc

Tras la instalación crearemos el archivo apc.ini:

sudo nano /etc/php5/cgi/conf.d/apc.ini

y añadiremos lo siguiente dentro del archivo:

  extension=apc.so  apc.enabled=1  apc.shm_size=30

Ahora vamos a modificar el PHP.ini para cambiar el tamaño máximo de los archivos que subamos a nuestra nube y añadiremos la extensión APC. Abrimos el archivo de la siguiente forma:

sudo nano /etc/php5/apache2/php.ini

Cambiaremos los siguientes valores, esto nos permitirá subir archivos hasta 1GB de tamaño y habilitaremos la anteriormente mencionada extensión.

  **upload_max_filesize** = 1024M  **post_max_size** = 1200m  **extension** =apc.so

Ahora activaremos SSL en Apache. que hará mas segura nuestra plataforma, primero abrimos este archivo de configuración:

sudo nano /etc/apache2/sites-enabled/000-default

y modificamos el valor Allow over ride a All ,debe estar por defecto en None.

Pasamos ahora a instalar SSL con los siguientes comandos:

sudo a2enmod rewritesudo a2enmod headerssudo openssl genrsa -des3 -out server.key 1024; sudo openssl rsa -in server.key -out server.key.insecure;sudo openssl req -new -key server.key -out server.csr;sudo openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt;sudo cp server.crt /etc/ssl/certs;sudo cp server.key /etc/ssl/private;sudo a2enmod ssl;sudo a2ensite default-ssl

Cuando hayamos hecho todo esto reiniciamos Apache para que los cambios tomen efecto:

sudo service apache2 restart

Descargando e instalando Owncloud en nuestro servidor

Si has llegado hasta aquí te has quitado ya todo el trabajo sucio, solo quedan unos cuantos comandos por ejecutar y tendremos nuestra propia nube perfecta y funcionando. Con los siguientes comandos descargaremos Owncloud, lo copiaremos en nuestro servidor y lo haremos accesible:

wget download.owncloud.org/community/owncloud-5.0.0.tar.bz2sudo tar -xjf owncloud-4.5.1.tar.bz2sudo cp -r owncloud /var/wwwsudo chown -R www-data:www-data /var/www/owncloud/

Finalmente modificaremos el archivo .htaccess para permitir que el tamaño máximo del archivo cargado sea el mismo que el que pusimos en Php.ini:

sudo nano /var/www/owncloud/.htaccess

Configurando Owncloud

Lo primero que vamos a hacer es permitir que el servidor modifique nuestro dispositivo externo modificando los permisos desde el terminal, de la siguiente manera:

sudo chown -R www-data:www-data /media/owncloud

Ya hemos llegado al final del tutorial, solo nos queda poner en nuestro navegador la dirección http://NUESTRAIP/owncloud , elegiremos un nombre de usuario y una contraseña y en el apartado Avanzado podemos modificar la localización de nuestro almacenamiento. Pulsa en Finish y ya tendrás tu nube lista, podrás subir tus archivos a tu nueva plataforma.

Para ti
Queremos saber tu opinión. ¡Comenta!