Nextcloud no Debian 12: como se instala?
Em apenas alguns passos, é possível instalar o Nextcloud no Debian 12. Não só se configura a solução na nuvem, como também fica protegida por várias medidas de segurança.
Nextcloud no Debian
O Nextcloud é uma solução gratuita de computação em nuvem altamente recomendada, que oferece inúmeras vantagens, tanto para uso pessoal como comercial. Entre elas destacam-se as sólidas funcionalidades de segurança para a proteção de dados, como a encriptação SSL/TLS, a autenticação de dois fatores e a conformidade com o RGPD. Além disso, oferece a possibilidade de escolher entre servidores privados locais ou servidores de alojamento terceirizados. Tal como muitas alternativas ao Nextcloud, o fork do OwnCloud é compatível com todos os sistemas operativos comuns e oferece uma integração simples com inúmeros serviços.
A seguir, explicamos passo a passo como instalar o Nextcloud no Debian 12. Para tal, terá de instalar um servidor web Apache2, um servidor MariaDB e o PHP 8.2. Além disso, mostramos-lhe como configurar um firewall simples (UFW) e os certificados SSL/TLS necessários para proteger o sistema.
Quais são os requisitos a cumprir?
Para instalar o Nextcloud no Debian 12, basta cumprir alguns requisitos. É necessário ter um servidor com o Debian 12 já instalado, 4 GB de RAM e dois processadores. Além disso, é importante que disponha de uma conta de utilizador não root com direitos de administrador e que configure um nome de domínio associado ao endereço IP do servidor.
Instalar o servidor web Apache2
Primeiro, deve instalar um servidor web Apache2. Para tal, utilize o comando apt update, com o qual poderá atualizar o índice de pacotes do Debian e, assim, descarregar a versão mais recente:
sudo apt updatebashEm seguida, instale a versão mais recente do pacote Apache2 utilizando este comando:
sudo apt install apache2bashConfirme a instalação com a tecla [y] e, em seguida, prima [Enter] para iniciar a instalação.
Após a instalação, utilize este comando do systemctl para verificar o estado do serviço:
sudo systemctl is-enabled apache2
sudo systemctl status apache2bashNo primeiro comando, deverá verificar que o serviço é iniciado automaticamente ao arrancar o sistema. O estado «active» indica que o Apache2 está pronto a ser utilizado.
Configurar o firewall
Ao dispor de um firewall adequado, pode proteger o seu sistema e os seus dados. Recomenda-se a utilização do Firewall sem complicações (UFW), que pode configurar como padrão. Para tal, deve abrir as portas para o OpenSSH, HTTP e HTTPS. Primeiro, instale o pacote UFW com o seguinte comando:
sudo apt install ufwbashDeve confirmar a instalação premindo a tecla [y] e concluir a instalação premindo [Enter]. Em seguida, ative o OpenSSH e o UFW utilizando estes comandos:
sudo ufw allow OpenSSH
sudo ufw enablebashPara iniciar o UFW, deve confirmar premindo [y]. Em seguida, aparecerá a mensagem «Firewall is active and enabled on system startup». Depois, deve adicionar as portas HTTP e HTTPS que o servidor web deverá utilizar. Para tal, execute este comando:
sudo ufw allow "WWW Full"bashEm seguida, reinicie o UFW:
sudo ufw reloadbashPara ver as regras ativadas, consulte o estado do UFW. Nesta altura, o WWW Full deve estar ativado.
sudo ufw statusbashAtivar o PHP 8.2
Para obter o melhor desempenho possível e a máxima compatibilidade, o próprio Nextcloud recomenda a utilização do PHP 8.2. Este vem incluído por predefinição no Debian 12, pelo que apenas é necessário instalar os pacotes necessários. Utilize este comando:
sudo apt install -y 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-devbashUtilize [y] e [Enter] para confirmar e, em seguida, verifique a versão do PHP e ative as extensões:
php --version
php -mbashAgora abra o ficheiro de configuração do PHP com o editor Nano:
sudo nano /etc/php/8.2/apache2/php.inibashAgora, efetue algumas alterações e adapte a configuração às suas necessidades. Dependendo da forma como pretende utilizar o Nextcloud com o Debian 12, poderão ser recomendados outros valores. Nesse caso, altere a configuração de acordo com as suas necessidades.
No primeiro passo, defina o fuso horário escrevendo o seguinte:
data.timezone = Europe/AmsterdambashEm seguida, altere os parâmetros memory_limit, upload_max_filesize, post_max_size e max_execution_time:
memory_limit = 512M
upload_max_filesize = 500M
post_max_size = 600M
max_execution_time = 300bashAtive agora as opções file_uploads e allow_url_fopen. Em ambos os casos, o valor deve ser «On» (ativado):
file_uploads = On
allow_url_fopen = OnbashDesative agora o display\_errors e o output\_buffering e altere os respetivos valores para «Off» (desativado):
display_errors = Off
output_buffering = OffbashUtilize o seguinte comando para ativar o PHP OPcache:
zend_extension=opcachebashAdicione a configuração na secção opcache recomendada pelo Nextcloud para o Debian 12, escrevendo o seguinte:
opcache.enable = 1
opcache.interned_strings_buffer = 8
opcache.max_accelerated_files = 10000
opcache.memory_consumption = 128
opcache.save_comments = 1
opcache.revalidate_freq = 1bashEm seguida, guarde o ficheiro e feche o editor Nano. Agora, reinicie o serviço Apache2:
sudo systemctl restart apache2bashConfigurar o servidor MariaDB
O Nextcloud utiliza um servidor MariaDB como base de dados. A instalação e a verificação são feitas com estes comandos:
sudo apt install mariadb-serverbashUtilize [y] e [Enter] para confirmar. Quando a instalação terminar, introduza o seguinte:
sudo systemctl is-enabled mariadb
sudo systemctl status mariadbbashSe o servidor estiver a funcionar corretamente, proteja o sistema. Utilize o seguinte comando para criar uma palavra-passe de root, eliminar utilizadores anónimos e apagar a base de dados de teste:
sudo mariadb-secure-installationbashEfetue os ajustes premindo [y] para aceitar e [n] para recusar.
Criar uma base de dados e utilizadores
Em seguida, crie uma nova base de dados e o utilizador correspondente. Para iniciar sessão no servidor MariaDB, utilize este comando e introduza a sua palavra-passe de root:
sudo mariadb -u root -pbashPara criar uma nova base de dados, um utilizador e a palavra-passe correspondente, utilize os seguintes comandos:
CREATE DATABASE nextcloud_db;
CREATE USER nextclouduser@localhost IDENTIFIED BY 'YourPassword';
GRANT ALL PRIVILEGES ON nextcloud_db.* TO nextclouduser@localhost;
FLUSH PRIVILEGES;bashSubstitua 'YourPassword' (a sua palavra-passe) por uma palavra-passe segura criada por si. Por fim, verifique se o utilizador «nextclouduser» tem acesso à base de dados «nextcloud_db»:
SHOW GRANTS FOR nextclouduser@localhost;bashDescarregar os códigos-fonte atuais
Descarregue agora os códigos-fonte mais recentes para poder utilizar o Nextcloud no Debian 12 da melhor forma possível. Primeiro, selecione este comando:
sudo apt install curl unzip -ybashEm seguida, mude para o diretório /var/www e descarregue o código-fonte mais recente:
cd /var/www/
curl -o nextcloud.zip https://download.nextcloud.com/server/releases/latest.zipbashDescompacte o ficheiro e altere o proprietário do diretório para www-data:
unzip nextcloud.zip
sudo chown -R www-data:www-data nextcloudbashConfigurar o host no Apache2
Configure agora um host virtual no Apache2 utilizando este comando do Nano:
sudo nano /etc/apache2/sites-available/nextcloud.confbashDefina o nome de domínio e os dois parâmetros ErrorLog e CustomLog. Substitua o espaço reservado «example» (exemplo) pelo nome do seu domínio.
<VirtualHost *:80>
ServerName nextcloud.example.io
DocumentRoot /var/www/nextcloud/
# log files
ErrorLog /var/log/apache2/files.example.io-error.log
CustomLog /var/log/apache2/files.example.io-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>bashGuarde as alterações e saia do editor. Em seguida, ative a configuração com o comando seguinte e verifique-a:
sudo a2ensite nextcloud.conf
sudo apachectl configtestbashSe obtiver o resultado «Syntax OK», o que indica que não há erros de sintaxe, deve reiniciar o Apache2 para aplicar a nova configuração do host virtual:
sudo systemctl restart apache2bashProteger os dados com SSL/TLS
Sem necessidade de configurações adicionais, está agora a utilizar o Nextcloud no Debian 12 através de um protocolo HTTP que não é seguro. Para melhorar a segurança e proteger os seus dados, é aconselhável configurar o HTTPS. Pode fazê-lo utilizando este comando:
sudo apt install certbot python3-certbot-apachebashEm seguida, gere um certificado SSL, substituindo novamente o espaço reservado «beispiel» pelo nome do seu domínio.
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email user@example.io -d nextcloud.example.iobashConcluir a instalação do Nextcloud no Debian 12
Para concluir a instalação do Nextcloud no Debian 12, abra o seu navegador e aceda ao nome de domínio da sua instalação do Nextcloud. Introduza um nome de utilizador e a respetiva palavra-passe para criar um administrador. Em seguida, adicione o nome da sua base de dados, o nome de utilizador e a palavra-passe, e clique em «Install» (instalar). Em seguida, pode optar por descarregar algumas aplicações compatíveis ou ignorar este passo por agora. Será redirecionado para o seu painel de controlo e poderá começar a utilizar o Nextcloud para gerir os seus dados.