Olá, pessoal!
Atualmente, ter um local onde se possa armazenar seus dados na nuvem é mais do que necessário. A cada dia, crescem nossas demandas de compartilhamento de dados e o acesso a elas deve ser feito de forma fácil e rápida. Porém sabemos que “armazenar nossos dados na nuvem” é algo complicado se olharmos do ponto de vista da nossa privacidade na Rede Mundial de Computadores.
Mas o que fazer para ter seus dados em um local de fácil acesso, estando disponíveis quando e onde você precisar, e que também seja seguro?
Simples: vamos criar a nossa própria cloud!
Neste artigo, vamos abordar a criação de uma cloud pessoal (que também vai funcionar como NAS pra sua rede interna), usando um Raspberry Pi, um HD externo e o OwnCloud – uma aplicação open source que lhe permite criar uma nuvem pessoal de forma prática e simples.
Vamos lá?
Raspberry Pi
Se você não conhece o projeto, dá uma conferida aqui. Basicamente, ele é um minicomputador desenvolvido sob licenças de Open Hardware que roda, além de outras, algumas distribuições Linux especificamente customizadas pra ele.
Para adquirir um Rasp, como é carinhosamente chamado, é simples: existem várias lojas na internet (inclusive no Brasil) que o vendem, em média, por R$ 200. Faça uma busca simples no Google que vão aparecer vários links de lojas que comercializam o Raspberry Pi 😉
Neste artigo, vamos abordar a configuração feita em um Raspbian (Debian para Raspberry), que pode ser baixado aqui: http://www.raspbian.org/

Passo 1: Configurando a rede e baixando os pacotes necessários
Para que o nosso Rasp funcione bem como uma cloud, ele precisa de um IP fixo. Vamos configurá-lo usando o comando abaixo.
$ sudo nano /etc/network/interfaces
Dependendo das configurações da sua rede, os IPs do exemplo abaixo podem ser diferentes, mas tente deixar parecido com o que mostraremos a seguir:
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
Pressione CTRL + O pra salvar e CTRL + X pra sair do editor de texto, e use o comando abaixo pra restartar suas configurações de rede.
$ sudo /etc/init.d/networking restart
Agora vamos atualizar as listas de pacote do nosso sistema:
$ sudo apt-get update
Feito isso, podemos instalar os pacotes que precisamos:
$ sudo 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
Passo 2: Configurando o PHP e o Apache
Feitos o download e a instalação dos pacotes necessários, vamos começar as configurações. Porém antes vamos instalar e configurar a extensão APC do PHP:
$ sudo pecl install apc
Após a instalação, abra o arquivo de configuração do APC e deixe conforme o exemplo abaixo:
$ sudo nano /etc/php5/cgi/conf.d/apc.ini extension=apc.so apc.enabled=1 apc.shm_size=30
Salve e saia do arquivo. Agora nós vamos alterar o tamanho máximo de upload no php.ini e adicionar a extensão APC ao PHP:
$ sudo nano /etc/php5/apache2/php.ini
Dentro do php.ini, procure a linha upload_max_filesize, e altere o valor para 1024M, e a linha post_max_size, alterando o valor para 1200m, pois assim poderemos fazer uploads de até 1GB.
Agora ache a linha externsion= e adicione o APC, deixando assim: extension=apc.so.
Salve e saia do arquivo.
Agora vamos configurar o nosso Apache e habilitar o SSL. Abra o arquivo abaixo:
$ sudo nano /etc/apache2/sites-enabled/000-default
Dentro do arquivo, altere AllowOverride para None e execute os comandos abaixo:
$ sudo a2enmod ssl $ sudo a2ensite default-ssl $ sudo service apache2 reload
Agora execute os comandos abaixo para configurar o SSL:
sudo 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
Em seguida, é só restartar o Apache com o comando abaixo:
$ sudo service apache2 restart
Passo 3: Download e instalação do OwnCloud
Depois do Apache e do PHP devidamente configurados, vamos instalar o OwnCloud:
$ wget https://download.owncloud.org/community/owncloud-7.0.2.tar.bz2
Vamos extrair os arquivos:
$ sudo tar -xjf owncloud-7.0.2.tar.bz2
E copiar o Own Cloud para o nosso Document Root:
$ sudo cp -r owncloud /var/www
Depois da cópia, vamos dar as permissões para o Apache acessar os arquivos do OwnCloud:
$ sudo chown -R www-data:www-data /var/www/owncloud/
Não se esqueça de editar o .htaccess, colocando os mesmos valores de tamanho máximo de upload que configuramos no php.ini.
$ sudo nano /var/www/owncloud/.htaccess
Passo 4: Formatando o HD externo e automontando
O sistema operacional do Raspberry Pi é instalado no disco SD, e não no HD externo. Logo, precisaremos configurar o nosso HD para ser montado automaticamente. O primeiro passo é formatá-lo em NTFS, pois é um bom sistema de arquivos e suporta leitura/escrita de arquivos grandes.
Para formatá-lo em NTFS, você pode usar o gparted dentro do próprio Raspberry Pi. Rode o comando abaixo pra entrar no ambiente gráfico do Rasp, abra o Gparted, selecione o seu HD e formate-o em NTFS:
$ startx $ sudo gprarted
Feito isso, vamos usar o comando abaixo para achar o UUID do nosso disco:
$ sudo blkid /dev/sda1
A saída desse comando deve ser algo como isto:
/dev/sda2: LABEL=”pidsk” UUID=”1AA26276A2625673” TYPE=”ntfs”
Guarde esse número do UUID!
Vamos criar o ponto de montagem do nosso HD e dar as permissões para o Apache:
$ sudo mkdir /media/owncloud $ sudo chown -R www-data:www-data /media/owncloud
Agora vamos criar uma entrada no nosso FSTAB para montar automaticamente nosso HD no início do sistema:
$ sudo nano /etc/fstab
Adicione a linha abaixo (lembra do UUID que guardamos? Então, substitua-o na linha abaixo):
UUID=1AA26276A2625673 /media/owncloud ntfs-3g default 0
Agora seu HD externo será montado em todo início do sistema.
Passo 5: Configurando o OwnCloud
Agora sim, está tudo pronto para configurarmos o OwnCloud. Acesse via browser o endereço abaixo e siga o passo a passo:
https://IPADDRESS/owncloud
Lembre-se de trocar o IPADDRESS pelo IP que configuramos no passo 1.
Na guia “Avançado”, você poderá trocar o local de armazenamento dos dados e setar o seu HD externo, que está em /media/owncloud
Passo 6: Acessando o OwnCloud remotamente
O OwnCloud já possui aplicativos para Android, iOS e Windows para facilitar a sua vida. Entretanto, nós configuramos o nosso Rasp em rede interna, ou seja, o IP que atribuímos a ele não poderá ser roteado pela Internet.
Para resolver isso, você tem duas saídas:
- Contratar um serviço de IP fixo na sua provedora de Internet.
- Configurar um serviço de DNS dinâmico, como o DynDNS. Alguns desses serviços são pagos, mas neste link tem um tutorial bem explicado para configuração do Free DNS.
Nota: O OwnCloud é uma ferramenta que eventualmente recebe atualizações e, em alguns casos, a forma de configuração e as aplicações necessárias podem mudar. Para isso, visite sempre o manual de administrador do OwnCloud.