Introdução
Este é um artigo e guia sobre o Owncloud, um produto que pretende dar às pessoas a possibilidade de criarem, de forma privada, uma cloud pessoal, dando assim total liberdade e privacidade ao utilizador final.De referir que a palavra cloud sofre constantes abusos e nunca se sabe o que quer dizer realmente.
Neste caso, o produto tem como principal funcionalidade a criação de um repositório central de ficheiros que sejam de fácil acesso a partir de vários dispositivos.
Na prática é um competidor com o famoso serviço “Dropbox”, mas em que a parte servidor é controlada pelo próprio utilizador, tendo ele total controlo sobre limites e formas de uso.
Esta é só a principal funcionalidade, porque com um sistema de plugins, é possível ter mais funcionalidades, como vão poder ver neste artigo.
Ficam aqui as principais características deste produto:
- Solução integrada de storage.
- Fácil acesso aos ficheiros, através de uma página Web, um Cliente que pode ser instalado nos principais sistema operativos ou por WebDav.
- Página Web de fácil acesso, usando html5. É possível fazer drag and drop de ficheiros na página Web.
- Possibilidade de criação de utilizadores e com isso, partilha de ficheiros.
- Versões de ficheiros, que permitem recuperar versões antigas.
- Encriptação.
- Temas.
- Editores e visualizadores de vários ficheiros, como ficheiros de imagens, som ou texto.
- Uma api para uso com outras aplicações ou plugins.
- Migração dos dados ou utilizadores.
- Integração de calendário e tasks que podem ser acedidos por outros dispositivos.
- Uma store onde é possível instalar aplicações dentro do Owncloud.
Por fim, referir que este artigo está dividido em duas partes principais. Primeiro a instalação e segundo a utilização do Owncloud.
Instalação
Para este artigo, decidi criar duas máquinas virtuais. Uma é o servidor onde vou instalar o Owncloud 4 e o segundo é uma máquina cliente onde vou aceder e utilizar o Owncloud de várias formas.Devido à sua popularidade, vou utilizar o Windows 7 como máquina cliente, utilizando o Firefox 12 como browser.
Também devido à sua popularidade no mundo linux, no servidor vou utilizar Ubuntu Server, na sua versão mais recente a 12.04.
Para criação das máquinas virtuais, usei Virtualbox, onde coloquei as duas máquinas num ambiente de testes.
No servidor com Ubuntu, fiz a instalação base, adicionando só a funcionalidade do serviço de openssh, para poder aceder remotamente.
O Windows 7 é uma instalação base, sem adicionar nada. Apenas confirmei que estavam as duas máquinas na mesma rede.
Para efeitos de teste e para não estar sempre a passar o comando “sudo”, coloquei uma password no utilizador “root” e acedo ao servidor com este utilizador.
Para colocar uma password neste utilizador, corri o comando:
sudo passwd
A primeira coisa que se deve fazer, no servidor, é ter a máquina actualizada, com o comando:
apt-get update && apt-get dist-upgradeEm seguida é preciso instalar os requisitos para instalar o Owncloud. Para tal, devemos correr o comando:
apt-get install apache2 php5 php5-gd php5-sqlite curl libcurl3 libcurl4-openssl-dev php5-curl php5-common php-xml-parser sqlite openssl
Por sua vez, este software tem outras dependências, que são listadas. Basta apenas aceitar carregando no “y”.
Na máquina Windows, como é um teste e estou a aceder por rede local, no ficheiro “hosts” que se encontra em “C:\windows\system32\drivers\etc” coloco a seguinte entrada:
192.168.1.112 cloud.ownEste ip é o ip do servidor e esta entrada serve para poder aceder ao Owncloud com aquele nome.
Acedendo por browser a “cloud.own” podemos ver que o Webserver está a funcionar.
Devido a várias funcionalidades no Owncloud, é necessário activar vários módulos de Apache. Para isso, é necessário correr os seguintes comandos
a2enmod rewrite a2enmod headers service apache2 restartO último comando serve para reiniciar o serviço do apache e assim os módulos sejam activados de forma efectiva.
É dado uma mensagem que o apache não sabe o nome do servidor. Isto acontece porque não tenho esse parâmetro definido no ficheiro de configuração.
Num teste, isto não é problemático.
Em seguida devemos efectuar o download do Owncloud 4 com o comando:
wget -O owncloud4.tar.bz2 http://owncloud.org/owncloud-download-4-0-0
Devemos depois descomprimir o ficheiro que efectuamos o download, com o comando:
tar -jxvf owncloud4.tar.bz2
Se listarmos os ficheiros, com o comando:
lsPodemos ver que temos uma pasta com o Owncloud. Devemos por isso copiar a pasta para o local onde se encontram os ficheiros do Webserver, com o comando:
cp -r owncloud /var/www/owncloud
Podemos então aceder à pasta onde se encontram agora os ficheiros, com o comando:
cd /var/www/owncloudCorrendo o comando para listar, visualizamos o seu conteúdo.
Para o Owncloud poder manipular os ficheiros é preciso que o dono dos ficheiros seja o utilizador com que é executado o apache.
Para tal, devemos correr o comando:
chown -R www-data:www-data /var/www/owncloud
Podemos aceder ao Owncloud de duas formas. De uma forma pouco segura, por http, em que tudo o que é transmitido vai em clear text ou por https em que a ligação é encriptada.
Penso que a melhor forma é por https e para tal vão ser necessárias várias alterações na configuração.
A primeira coisa é activar o módulo ssl no apache. Para tal, devemos correr o comando:
a2enmod ssl service apache2 restart
Para usarmos https, é preciso tratar de gerar certificados. Começamos por correr.
openssl genrsa -des3 -out servidor.key 1024
Em seguida:
mv servidor.key servidor.old.keySeguido por:
openssl rsa -in servidor.old.key -out servidor.key
Devemos correr em seguida:
openssl req -new -key servidor.key -out cert.csrDurante a execução deste comando é necessário preencher os nossos dados.
Quase a finalizar, correr o comando:
openssl x509 -req -days 9000 -in cert.csr -signkey servidor.key -out cert.crt
Temosn que mover os ficheiros para a sua localização correcta, com os comandos:
mv cert.csr /etc/ssl/certs/ mv servidor.key /etc/ssl/private
Para configurar o apache, podemos criar um novo virtual host, ou podemos editar o ficheiro de configuração do site de default. Para este teste, escolhi a segunda hipótese, com o comando:
nano /etc/apache2/sites-availabe/default-ssl
Devemos alterar as seguintes linhas:
DocumentRoot /var/www/owncloud < Directory /var/www/owncloud > Options Indexes MultiViews FollowSymLinks AllowOverride all Order deny,allow Deny from all Allow from all < /Directory >
Também devemos alterar as seguintes linhas:
SSLEngine on SSLCertificateFile /etc/ssl/certs/cert.csr SSLCertificateKeyFile /etc/ssl/private/servidor.key
Finalmente, devemos activar o site, com o comando:
a2ensiteE efectuar um restart ao servidor apache, para tornarmos todas as alterações efectivas, com o comando:
service apache2 restart
Para verificarmos que temos acesso ao Owncloud e para acabar a instalação, devemos aceder ao site por:
https://cloud.ownVamos verificar que em qualquer browser, temos um alerta de certificado, que é assinado por ele próprio e não tem ninguém que possa validar a sua autenticidade.
Isto é normal, pois é verdade que temos um certificado que passamos a nós mesmos.
Temos portanto que adicionar uma excepção para não nos dar novamente este alerta. Para tal, basta carregar no botão:
Add Exception
Se virmos as propriedades do certificado, podemos então confirmar que foi o que criamos.
Podemos então passar a excepção, carregando no botão:
Confirm Security Exception
Podemos ver finalmente o site que criamos do Owncloud.
Temos que colocar um utilizador e password que vai ser o administrador do Owncloud.
Se carregarmos nas opções avançadas, podemos definir onde vão-se encontrar os dados e onde se encontra a base de dados sqlite. Neste caso é em “localhost”.
Estando todos os dados introduzidos, podemos carregar no botão:
Finish Setup
Fonte: http://portal.zwame.pt/30218/guia/owncloud-4-uma-cloud-pessoal