Pesquisa de site

Como instalar Nextcloud no servidor Ubuntu 24.04


Nesta página

  1. Pré-requisitos
  2. Instalando Dependências
  3. Configurando PHP
  4. Configurando o servidor MariaDB
  5. Abrindo portas HTTP e HTTPS
  6. Baixando Nextcloud
  7. Configurando host virtual Apache para Nextcloud
  8. Instalando Nextcloud
  9. Conclusão

Nextcloud é um software de código aberto para armazenamento de arquivos públicos e privados. Ele permite que você crie serviços auto-hospedados como Dropbox, Google Drive ou Mega.nz. Inicialmente, foi criado pelo desenvolvedor original do Owncloud, Frank Karlitschek. Em 2016, ele bifurcou o projeto Owncloud e criou um novo projeto com o novo nome “Nextcloud. ”

O projeto Nextcloud está crescendo rapidamente e se tornando mais do que um software de hospedagem de arquivos. É mais como uma plataforma de sincronização de arquivos e colaboração de conteúdo. Apoiado por muitos plug-ins, Nextcloud se tornou um software de colaboração muito poderoso. Você pode instalar plug-ins para gerenciamento de projetos, videoconferência, edição colaborativa, anotações, cliente de e-mail, etc.

Este tutorial ensina como instalar o Nextcloud em um servidor Ubuntu 24.04. Você instalará o Nextcloud com o LAMP Stack e, em seguida, protegerá o Netxcloud com HTTPS por meio de Certbot e Letsencrypt.

Pré-requisitos

Antes de começar, certifique-se de ter o seguinte:

  • Um servidor Ubuntu 24.04
  • Um usuário não root com privilégios de administrador
  • Um nome de domínio apontado para o endereço IP do servidor
  • Um UFW (Firewall Descomplicado) está instalado e funcionando

Instalando Dependências

Nesta seção, você instalará dependências de pacote para Nextcloud. Você executará o Nextcloud com o LAMP Stack, usando curl para baixar o código-fonte do Nextcloud e, em seguida, usando Certbot e Letsencrypt para proteger o nextcloud com HTTPS.

Antes de começar, execute o comando abaixo para atualizar o índice do seu pacote Ubuntu

sudo apt update

Agora, instale as dependências do Nextcloud com o seguinte comando apt install. Isso instalará o LAMP Stack (Linux, Apache, MySQL/MariaDB e PHP), curl, descompacte, ImageMagick e certbot.

sudo apt install apache2 mariadb-server php php-curl php-cli php-mysql php-gd php-common php-xml php-json php-intl php-pear php-imagick php-dev php-common php-mbstring php-zip php-soap php-bz2 php-bcmath php-gmp php-apcu libmagickcore-dev php-redis php-memcached curl unzip imagemagick certbot python3-certbot-apache

Insira Y para confirmar a instalação.

Após a instalação, verifique o status do servidor web Apache usando o comando abaixo. Você verá que o servidor web Apache está em execução e habilitado.

sudo systemctl is-enabled apache2
sudo systemctl status apache2

Agora verifique o status do servidor MariaDB com o seguinte comando. Você deve obter uma saída semelhante à que o MariaDB está em execução.

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb

Por último, execute o comando abaixo para verificar a versão do PHP do seu sistema. Você verá que o PHP 8.3 está instalado.

php -v

Configurando PHP

Depois de instalar as dependências, você configurará o PHP editando o arquivo php.ini. Você pode ajustar a configuração do PHP conforme necessário para algumas opções, como limite máximo de memória e tamanho máximo de upload.

Abra o arquivo /etc/php/8.3/apache2/php.ini com o editor nano.

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

Altere a configuração padrão com o seguinte e certifique-se de ajustar o limite de memória com sua memória máxima e o date.timezone com a localização/fuso horário do servidor.

date.timezone = Europe/Amsterdam
memory_limit = 512M
upload_max_filesize = 500M
post_max_size = 600M
max_execution_time = 300
file_uploads = On
allow_url_fopen = On
display_errors = Off
output_buffering = Off

Quando terminar, salve o arquivo e saia.

Agora execute o seguinte comando systemctl abaixo para reiniciar o servidor web Apache e aplicar sua nova configuração PHP.

sudo systemctl restart apache2

Configurando o servidor MariaDB

Agora que configurou o PHP, você irá configurar o servidor MariaDB e criar um novo banco de dados e usuário para Nextcloud. Você protegerá o MariaDB com o utilitário mariadb-secure-installation e, em seguida, criará um novo banco de dados e usuário por meio do cliente mariadb.

Para proteger o servidor MariaDB, execute o comando mariadb-secure-installation abaixo.

sudo mariadb-secure-installation

Durante o processo, você será questionado sobre as seguintes configurações do servidor MariaDB:

  • Pressione ENTER quando for solicitada a senha root do MariaDB.
  • Insira n quando questionado sobre o método de autenticação unix_socket.
  • Insira Y para configurar uma nova senha para o usuário root do MariaDB. Em seguida, insira a nova senha e repita.
  • Insira Y para remover o usuário anônimo padrão do MariaDB.
  • Em seguida, insira Y novamente para desabilitar o login remoto para o usuário root do MariaDB.
  • Insira Y para remover o teste de banco de dados padrão do MariaDB.
  • Por último, insira Y novamente para recarregar os privilégios da tabela e aplicar as alterações.

Em seguida, execute o comando do cliente mariadb abaixo para fazer login no servidor MariaDB. Digite sua senha root quando solicitado.

sudo mariadb -u root -p

Execute as consultas a seguir para criar um novo banco de dados nextclouddb, um usuário nextcloud@localhost, com a senha passw0rd. Você pode ajustar os detalhes do banco de dados com suas informações.

CREATE DATABASE nextclouddb;
CREATE USER nextcloud@localhost IDENTIFIED BY 'passw0rd';
GRANT ALL PRIVILEGES ON nextclouddb.* to nextcloud@localhost;
FLUSH PRIVILEGES;

Agora execute a consulta abaixo para garantir que o usuário nextcloud@localhost possa acessar o banco de dados nextclouddb.

SHOW GRANTS FOR nextcloud@localhost;

Você verá uma saída como esta:

Digite quit para sair do servidor MariaDB.

Abrindo portas HTTP e HTTPS

Nesta seção, você abrirá as portas HTTP e HTTPS para permitir o acesso ao Nextcloud. Portanto, você deve garantir que o UFW esteja configurado e habilitado em seu servidor Ubuntu.

Para abrir as portas HTTP e HTTPS no Ubuntu, execute o comando ufw abaixo. Com o perfil Apache Full, você permitirá conexões com as portas HTTP e HTTPS.

sudo ufw allow 'Apache Full'
sudo ufw reload

Agora verifique as regras da lista no UFW com o comando abaixo. Certifique-se de que o perfil Apache Full esteja habilitado em seu servidor Ubuntu.

sudo ufw status

Baixando Nextcloud

Agora que configurou PHP, MariaDB e UFW, você fará download do código-fonte do Nextcloud e configurará o diretório raiz do documento para instalação do Nextcloud.

Vá para o diretório /var/www e baixe o código-fonte do Nextcloud com o comando curl abaixo.

cd /var/www/
sudo curl -o nextcloud.zip https://download.nextcloud.com/server/releases/latest.zip

Depois de fazer o download, execute o comando descompactar abaixo para extrair o Nextcloud. Isso definirá o diretório raiz do Netxcloud como /var/www/nextcloud.

sudo unzip nextcloud.zip

Agora execute o comando abaixo para alterar a propriedade do diretório /var/www/nextcloud para o usuário www-data.

sudo chown -R www-data:www-data /var/www/nextcloud

Configurando host virtual Apache para Nextcloud

Depois de baixar o Nextcloud, você criará um novo host virtual Apache para Nextcloud. Em seguida, você gerará certificados SSL e protegerá o Nextcloud com HTTPS.

Crie uma nova configuração de host virtual Apache /etc/apache2/sites-available/nextcloud.conf com o seguinte editor nano.

sudo nano /etc/apache2/sites-available/nextcloud.conf

Insira a configuração abaixo e certifique-se de alterar o nome de domínio nextcloud.howtoforge.local.

<VirtualHost *:80>
 ServerName nextcloud.howtoforge.local
 DocumentRoot /var/www/nextcloud/
 # log files
 ErrorLog /var/log/apache2/nextclouds.howtoforge.local-error.log
 CustomLog /var/log/apache2/nextcloud.howtoforge.local-access.log combined
 <Directory /var/www/nextcloud/>
 Options +FollowSymlinks
 AllowOverride All
 <IfModule mod_dav.c>
 Dav off
 </IfModule>
 SetEnv HOME /var/www/nextcloud
 SetEnv HTTP_HOME /var/www/nextcloud
 </Directory>
</VirtualHost>

Quando terminar, salve o arquivo e saia do editor.

Agora execute o comando abaixo para ativar o arquivo host virtual nextcloud.conf e verifique sua sintaxe do Apache. Se você tiver a sintaxe adequada do Apache, obterá uma saída Syntax is OK.

sudo a2ensite nextcloud.conf
sudo apachectl configtest

Em seguida, execute o comando systemctl abaixo para reiniciar o servidor web Apache e aplicar suas alterações.

sudo systemctl restart apache2

Depois que o Apache for reiniciado, execute o comando certbot abaixo para gerar certificados SSL e proteger sua instalação do Nextcloud com HTTPS. Certifique-se de alterar o nome de domínio e o endereço de e-mail com suas informações.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email  -d nextcloud.howtoforge.local

Instalando Nextcloud

Abra seu navegador da web e visite https://nexcloud.howtoforge.local/. Se sua configuração for bem-sucedida, você verá a página de instalação do Nextcloud.

Na página de instalação do Nextcloud, configure o seguinte:

  • Insira seu usuário administrador e senha para Nextcloud
  • Selecione o caminho de armazenamento como diretório padrão
  • Insira os detalhes do banco de dados Nextcloud que você criou
  • Clique em Instalar para iniciar a instalação.

Agora você pode instalar alguns aplicativos Nextcloud ou clicar em Pular.

Após a conclusão do processo, você verá a seguinte página:

Conclusão

Parabéns! Você concluiu a instalação do Nextcloud no servidor Ubuntu 24.04. Nextcloud está instalado e funcionando com LAMP Stack e protegido com HTTPS por meio de Certbot e Letsencrypt. Agora você pode criar novos usuários e fazer upload de arquivos para seu Nextcloud ou pode adicionar novos métodos de cache para melhorar seu desempenho.

Artigos relacionados: