Como Instalar e Configurar o Servidor ownCloud

Uma fotografia de um computador desktop em um fundo branco.

OwnCloud é uma poderosa solução de armazenamento pessoal baseada na web para Linux. Funciona convertendo uma pilha de software padrão Linux-Apache-MySQL-PHP (LAMP) em uma aplicação web interativa que você pode acessar de qualquer lugar.

Este artigo mostra o processo de instalação de um servidor ownCloud no Ubuntu 22.04. Não só isso, também mostraremos como você pode protegê-lo ativando o suporte a SSL. Observe que você também pode instalar o ownCloud no Windows.

Índice

  • Por que usar ownCloud?
  • Instalando ownCloud
  • Criando um Proxy Reverso Nginx
  • Obtendo um Certificado SSL para ownCloud
  • Perguntas Frequentes

Dica: não está a fim de instalar seu próprio armazenamento em nuvem? Confira esses provedores de armazenamento em nuvem e veja qual é o melhor para você.

Por que usar ownCloud?

A maior vantagem de usar ownCloud é que ele depende apenas de uma pilha de hospedagem web tradicional. Como resultado, é possível executar uma instância do ownCloud em quase qualquer instalação Linux com apenas 512MB de RAM.

Uma captura de tela da tela de boas-vindas padrão do ownCloud.

Além disso, toda a suíte ownCloud é gratuita e de código aberto. Isso significa que você pode implantá-la em uma máquina e esperar que receba as últimas atualizações de segurança mais rapidamente em comparação com seus equivalentes proprietários.

Uma captura de tela da página do github do ownCloud.

Por último, o ownCloud também fornece seu próprio cliente dedicado, semelhante ao Google Drive. Você pode acessar facilmente os arquivos dentro do seu armazenamento em nuvem pessoal no seu Gerenciador de Arquivos.

Uma captura de tela do cliente desktop do ownCloud.

Dica: não é fã do ownCloud? Confira o NextCloud e como ele se compara ao ownCloud!

Instalando ownCloud

As instruções abaixo demonstram a instalação do servidor ownCloud no Ubuntu 22.04. Os passos serão semelhantes em outras versões do Ubuntu ou distribuições Linux.

  1. O primeiro passo para instalar o ownCloud é garantir que sua máquina tenha um Nome de Domínio Totalmente Qualificado. Isso permitirá que o servidor redirecione corretamente quaisquer solicitações direcionadas a ele:
sudo hostnamectl set-hostname "seu-nome-de-dominio"

Um terminal mostrando o nome do host do servidor de demonstração.

  1. Configure um domínio (ou subdomínio) para apontar para o endereço IP do seu servidor. Para fazer isso, vá ao site do seu registrador e adicione um registro “A” com o endereço IPv4 da sua máquina.

Uma captura de tela do registro DNS para o servidor de demonstração.

  1. Uma vez feito, atualize todo o seu sistema:
sudo apt update  
sudo apt upgrade

Instalando Docker e Docker Compose

  1. Instale a chave do repositório de terceiros do projeto Docker:
sudoinstall-m 0755 -d/etc/apt/keyrings  
curl -fsSL https://download.docker.com/linux/ubuntu/gpg |sudo gpg --dearmor-o/etc/apt/keyrings/docker.gpg  
sudochmod a+r /etc/apt/keyrings/docker.gpg
  1. Crie um novo arquivo de repositório apt para o Docker em “/etc/apt/sources.list.d/:”
sudonano/etc/apt/sources.list.d/docker.list
  1. Insira a seguinte linha de código dentro do seu novo arquivo “docker.list”:
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable
  1. Salve o arquivo (usando o atalho de teclado Ctrl + O) e saia do editor de texto.

Um terminal mostrando as informações do repositório Docker para Ubuntu.

  1. Atualize o repositório apt do seu sistema com o seguinte comando:
sudo apt update
  1. Instale o Docker junto com suas utilidades necessárias com o seguinte comando:
sudo apt installwget openssl docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin

Nota: Você pode precisar reiniciar o sistema para que as alterações tenham efeito.

Preparando o Sistema para o Contêiner ownCloud

  1. Crie um novo diretório para os arquivos Docker do seu servidor:
mkdir ./owncloud-server  
cd ./owncloud-server

FYI: Aprenda como você pode criar uma plataforma de hospedagem web de alto desempenho construindo uma pilha LOMP hoje.

  1. Baixe o modelo Docker Compose do ownCloud do site dos desenvolvedores:
wget https://raw.githubusercontent.com/owncloud/docs-server/master/modules/admin_manual/examples/installation/docker/docker-compose.yml
  1. Crie um arquivo de ambiente Docker dentro da pasta do seu contêiner Docker:
nano ./.env
  1. Adicione as variáveis de ambiente básicas que você deseja usar para sua instância ownCloud. O seguinte é um exemplo de modelo:
OWNCLOUD_VERSION=10.12  
OWNCLOUD_DOMAIN=SEU-NOME-DE-DOMINIO  
OWNCLOUD_TRUSTED_DOMAINS=localhost,SEU-NOME-DE-DOMINIO  
ADMIN_USERNAME=SEU-NOME-DE-ADMINISTRADOR-AQUI  
ADMIN_PASSWORD=SEU-SENHA-DE-ADMINISTRADOR-AQUI  
HTTP_PORT=8080

Você deve mudar “seu-nome-de-dominio” para o seu próprio nome de domínio. Além disso, o nome de usuário e a senha do Admin referem-se ao login do administrador do OwnCloud, não à conta de administrador do sistema.

Um terminal mostrando um arquivo de variáveis de ambiente simples do Docker Compose do ownCloud.

Nota: Você pode gerar uma senha segura usando o arquivo de dispositivo “/dev/urandom” do seu sistema: cat /dev/urandom | tr -dc 'A-Za-z0-9' | fold -w 64 | head -n 1.

  1. Salve seu arquivo “.env” e saia.

  2. Execute o Docker Compose no diretório do contêiner:

docker compose up -d

Um terminal mostrando o processo de construção do contêiner Docker para ownCloud.

Criando um Proxy Reverso Nginx

Neste ponto, você agora tem uma instalação ownCloud parcialmente funcional. Para que ele aceite conexões, você precisa criar um proxy reverso que vincule sua instância interna a um servidor web voltado para o exterior.

  1. Instale o servidor web Nginx usando apt:
sudo apt install nginx
  1. Crie o arquivo de configuração do site para seu proxy reverso ownCloud:
sudonano/etc/nginx/sites-available/owncloud
  1. Escreva um bloco de proxy reverso que escute na porta 80. O seguinte é um código boilerplate simples que eu modifiquei para funcionar com o subdomínio do meu servidor:
server {  
    listen 80;  
    listen [::]:80;  
  
    root /var/www/html;  
    server_name owncloud.myvpsserver.top;  
  
    location /{  
        proxy_set_header   X-Forwarded-For $remote_addr;  
        proxy_set_header   Host $http_host;  
        proxy_pass         http://localhost:8080;  
}  
}
  1. Uma vez feito, crie um link simbólico para o seu novo arquivo de site:
sudoln-s/etc/nginx/sites-available/owncloud /etc/nginx/sites-enabled/owncloud
  1. Teste sua configuração Nginx. Se tudo estiver bem, reinicie o Nginx para que as alterações tenham efeito.
sudo nginx -t
sudo systemctl reload nginx

Obtendo um Certificado SSL para ownCloud

Embora seja possível usar o ownCloud através de HTTP, isso pode ser altamente inseguro, uma vez que todas as conexões que você faz a ele são não criptografadas. Uma maneira de resolver isso é ativar o SSL para seu servidor ownCloud.

  1. Atualize a instalação do snapd do seu sistema:
sudo snap install core  
sudo snap refresh core
  1. Instale o pacote snap certbot:
sudo snap install--classic certbot
  1. Crie um link simbólico com seu pacote snap certbot e o caminho binário do seu sistema:
sudoln-s/snap/bin/certbot /usr/bin/certbot
  1. Registre sua nova instalação do certbot na Electronic Frontier Foundation:
sudo certbot register --agree-tos--email [email protected]
  1. Execute o comando certbot para o domínio (ou subdomínio) do seu servidor:
sudo certbot --nginx-d owncloud.myvpsserver.top

Um terminal mostrando o processo automático de emissão de certificado SSL do certbot para Nginx.

  1. Uma vez feito, você pode digitar seu nome de domínio no navegador e sua nova página de login do ownCloud deve aparecer.

Uma captura de tela mostrando uma instância ownCloud funcionando sobre SSL.

Bom saber: Aprenda como os dados são criptografados pela internet através do SSL criando seu próprio certificado autoassinado.

Perguntas Frequentes

É possível adicionar um usuário regular ao ownCloud?

Sim. Para adicionar um novo usuário, vá para sua conta de administrador do ownCloud e clique no nome do administrador no canto superior direito da página. Em seguida, clique no botão “Usuários” para abrir a lista atual de usuários do servidor. Lá, você pode adicionar um novo usuário fornecendo um nome de usuário e um endereço de e-mail.

Crédito da imagem: Quaritsch Photography via Unsplash (Fundo) e Wikimedia Commons (Logo). Todas as alterações e capturas de tela por Ramces Red.