Como instalar células Pydio no AlmaLinux 9
Nesta página
- Pré-requisitos
- Instalando dependências
- Configurando o servidor MariaDB
- Baixando células Pydio
- Instalando Pydio Cells através da linha de comando
- Configurando o arquivo de serviço systemd para células Pydio
- Configurando o Httpd como proxy reverso
- Acessando células Pydio
- Conclusão
Pydio Cells é uma plataforma de colaboração e compartilhamento de documentos de código aberto para sua organização. Ele permite que você compartilhe documentos e arquivos em toda a sua organização e oferece controle total do seu ambiente de compartilhamento de documentos.
As células Pydio têm desempenho rápido, podem lidar com grandes tamanhos de transferência de arquivos e fornecer automação avançada de fluxo de trabalho.
Neste guia, mostraremos como instalar Pydio Cells em um servidor Alma Linux 9. Você instalará Pydio Cells com o servidor de banco de dados MariaDB e o servidor web Httpd.
Pré-requisitos
Para começar com este guia, certifique-se de ter o seguinte:
- Um servidor Alma Linux 9
- 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 SELinux com status habilitado e permissivo
Instalando dependências
Antes de instalar o Pydio Cells, você precisa instalar dependências em seu servidor Alma Linux. Isso inclui o repositório EPEL, o servidor de banco de dados MariaDB, o servidor web Httpd e algumas ferramentas de sistema, como wget e nano.
Primeiro, execute o comando 'dnf' abaixo para adicionar o repositório EPEL e instale o servidor MariDB e o servidor web Httpd. Insira 'Y' para confirmar a instalação.
sudo dnf install epel-release mariadb-server httpd wget nano
Após a conclusão da instalação, execute o comando 'systemctl' abaixo para iniciar, ativar e verificar o serviço 'httpd'. Você verá que o serviço 'httpd' está em execução e ativado.
sudo systemctl enable --now httpd
sudo systemctl status httpd
Agora execute o seguinte comando para iniciar e ativar o serviço 'mariadb'. E então, verifique para garantir que o serviço esteja em execução.
sudo systemctl enable --now mariadb
sudo systemctl status mariadb
Na saída a seguir, você pode ver que o servidor MariaDB está em execução e habilitado.
Por último, execute o comando 'firewall-cmd' abaixo para abrir as portas 'http' e 'https' em seu sistema. Em seguida, recarregue as regras do firewalld para aplicar suas alterações.
sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload
Configurando o servidor MariaDB
Depois de instalar as dependências, você precisa proteger a instalação do servidor MariaDB e criar um novo banco de dados e usuário para a instalação do servidor Pydio Cells. Você protegerá o MariaDB com o comando 'mariadb-secure-installation' e, em seguida, criará um novo banco de dados e usuário por meio do cliente 'mariadb'.
Para proteger a instalação do servidor MariaDB, execute o comando 'mariadb-secure-installation' abaixo.
sudo mariadb-secure-installation
Durante o processo, você será questionado sobre as seguintes configurações:
- Mudar a autenticação local para unix_socket? Entrada n.
- Configure a nova senha root do MariaDB. Insira y para confirmar e digite a nova senha para a implantação do servidor MariaDB.
- Remover usuário anônimo? Insira y para confirmar.
- Remover o teste de banco de dados padrão da implantação?. Insira y para confirmar.
- Proibir login root do MariaDB em conexões remotas? Insira y para confirmar.
- Recarregue os privilégios da tabela e aplique as alterações. Insira y e pressione ENTER.
Agora que o servidor MariaDB está protegido, você criará um novo banco de dados e usuário para a instalação do Pydio Cells.
Faça login no servidor MariaDB com o comando 'mariadb' abaixo. Digite sua senha root do MariaDB quando solicitado.
sudo mariadb -u root -p
Execute as consultas a seguir para criar um novo banco de dados 'cells' e um novo usuário 'pydio', com a senha 'p4ssw0rd'. Você pode ajustar os detalhes do banco de dados conforme necessário.
CREATE DATABASE cells;
CREATE USER 'pydio'@'localhost' IDENTIFIED BY 'p4ssw0rd';
GRANT ALL PRIVILEGES ON cells.* to 'pydio'@'localhost';
FLUSH PRIVILEGES;
Agora verifique os privilégios do usuário 'pydio' para garantir permissão e privilégios para o banco de dados 'células'.
SHOW GRANTS FOR 'pydio'@'localhost';
Você pode ver abaixo que o banco de dados 'células' é acessível através do usuário 'pydio'.
Digite 'quit' para sair do servidor MariaDB.
Baixando células Pydio
Com o banco de dados MariaDB configurado, você está pronto para baixar Pydio Cells. Nesta seção, você configurará o usuário 'pydio', baixará células Pydio, configurará o diretório de instalação e variáveis de ambiente e permitirá que as células Pydio sejam executadas nas portas privilegiadas.
Crie um novo usuário e grupo 'pydio' com o seguinte comando.
sudo useradd -m -s /bin/bash pydio
Crie novos diretórios '/opt/pydio/bin' e '/var/cells' com o comando abaixo. E então altere a propriedade de ambos os diretórios para o usuário 'pydio'.
sudo mkdir -p /opt/pydio/bin /var/cells
sudo chown -R pydio:pydio /opt/pydio/bin /var/cells
Agora crie um novo arquivo env '/etc/profile.d/cells-env.sh' com o editor 'nano'.
sudo nano /etc/profile.d/cells-env.sh
Insira o script a seguir para configurar variáveis de ambiente para células Pydio. Certifique-se de alterar o endereço 'CELLS_EXTRERNAL' para corresponder ao nome de domínio da sua instalação do Pydio.
export CELLS_WORKING_DIR=/var/cells
export CELLS_BIND=127.0.0.1:8080
export CELLS_EXTERNAL=https://cells.howtoforge.local
Quando terminar, salve e saia do arquivo.
Agora execute o comando abaixo para tornar o arquivo env '/etc/profile.d/cells-env.sh' executável.
sudo chmod +x /etc/profile.d/cells-env.sh
Em seguida, execute o comando abaixo para baixar o arquivo binário Pydio Cells para Linux em '/opt/pydio/bin/cells'.
export distribId=cells
wget -O /opt/pydio/bin/cells https://download.pydio.com/latest/${distribId}/release/{latest}/linux-amd64/${distribId}
Depois de baixado, execute o seguinte comando para tornar o arquivo binário 'células' executável e permitir que ele seja vinculado às portas privilegiadas.
sudo chmod a+x /opt/pydio/bin/cells
sudo setcap 'cap_net_bind_service=+ep' /opt/pydio/bin/cells
sudo ln -s /opt/pydio/bin/cells /usr/local/bin/cells
Agora faça login como usuário 'pydio' com o seguinte:
su - pydio
Verifique as variáveis de ambiente para células Pydio com o seguinte - Certifique-se de que a saída corresponda ao arquivo env '/etc/profile.d/cells-env.sh'.
echo $CELLS_WORKING_DIR
echo $CELLS_BIND
echo $CELLS_EXTERNAL
Por último, verifique a versão das 'células' com o comando abaixo.
cells version
Na saída a seguir, você pode ver a versão do Pydio Cells.
Instalando Pydio Cells através da linha de comando
Agora você começará a instalar o Pydio Cells a partir da linha de comando. Com o comando 'cells', você configurará a instalação do Pydio Cells com o banco de dados MariaDB, configurará o usuário e a senha admin e configurará o local de armazenamento para armazenar os dados do usuário.
Para começar, execute o comando abaixo para configurar a instalação do Pydio Cells a partir do terminal.
cells configure --cli
Agora você será solicitado com as seguintes configurações:
- Conexão de banco de dados: selecione via TCP e insira os detalhes do host, porta, usuário e senha do banco de dados MariaDB.
- Configuração do MongoDB: Insira n para não.
- Configuração do usuário administrativo: insira seu usuário administrador e senha para células Pydio.
- Local de armazenamento padrão: pressione ENTER para usar o padrão e continuar.
Após a conclusão do processo, você verá a seguinte saída:
Configurando o arquivo de serviço systemd para células Pydio
Na etapa anterior, você pode iniciar as células Pydio com o comando 'cells start'. Para tornar isso mais fácil, você usará o systemd 'systemctl' para gerenciar o serviço Pydio Cells. Agora você criará um novo arquivo de serviço systemd.
Crie um novo arquivo '/etc/systemd/system/cells.service' com o editor 'nano'.
sudo nano /etc/systemd/system/cells.service
Insira a configuração abaixo para executar o Pydio Cells como um serviço systemd. Certifique-se de alterar 'CELLS_EXTERNAL' com seu nome de domínio.
[Unit]
Description=Pydio Cells
Documentation=https://pydio.com
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/opt/pydio/bin/cells
[Service]
User=pydio
Group=pydio
PermissionsStartOnly=true
AmbientCapabilities=CAP_NET_BIND_SERVICE
ExecStart=/opt/pydio/bin/cells start
Restart=on-failure
StandardOutput=journal
StandardError=inherit
LimitNOFILE=65536
TimeoutStopSec=5
KillSignal=INT
SendSIGKILL=yes
SuccessExitStatus=0
WorkingDirectory=/home/pydio
# Add environment variables
Environment=CELLS_WORKING_DIR=/var/cells
Environment=CELLS_BIND=127.0.0.1:8080
Environment=CELLS_EXTERNAL=https://cells.howtoforge.local
[Install]
WantedBy=multi-user.target
Salve o arquivo e saia do editor.
Agora execute o comando abaixo para recarregar o gerenciador systemd.
sudo systemctl daemon-reload
Por último, execute o comando 'systemctl' abaixo para iniciar, ativar e verificar o serviço 'células'.
sudo systemctl enable --now cells
sudo systemctl status cells
Nesta saída, você pode ver que o serviço 'células' está sendo executado em segundo plano como um serviço systemd.
Configurando o Httpd como proxy reverso
Neste ponto, as células Pydio estão rodando em seu servidor Alma Linux na porta '8080'. Para torná-lo acessível a partir do cliente, você criará um arquivo host virtual Httpd como proxy reverso para o servidor Pydio Cells. Você também gerará certificados SSL/TLS do Letsencrypt para proteger a transferência de dados entre o cliente e o servidor Pydio Cells.
Primeiro, execute o comando 'dnf' abaixo para instalar o 'certbot' em seu sistema.
sudo dnf install certbot -y
Agora crie um novo diretório raiz da web fictício e altere a propriedade para o usuário 'apache'.
sudo mkdir -p /var/www/html/cells/public_html
sudo chown -R apache:apache /var/www/html/cells/public_html
Execute o comando 'certbot' abaixo para gerar certificados SSL/TLS para células Pydio. Certifique-se de alterar o endereço de e-mail e o nome de domínio com suas informações.
sudo certbot certonly --agree-tos --email [email --no-eff-email --webroot -w /var/www/html/cells/public_html -d cells.howtoforge.local
Em seguida, crie uma nova configuração de host virtual Httpd '/etc/httpd/conf.d/pydio.conf' com o editor 'nano'.
sudo nano /etc/httpd/conf.d/pydio.conf
Insira a configuração abaixo e certifique-se de alterar a opção 'ServerName' com o seu nome de domínio.
<VirtualHost *:80>
ServerName cells.howtoforge.local
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteCond %{SERVER_NAME} =cells.howtoforge.local
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
<VirtualHost *:443>
ServerName cells.howtoforge.local
AllowEncodedSlashes On
RewriteEngine On
# be aware of this
# Allow reverse proxy via self-signed certificates
SSLProxyEngine On
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off
## The order of the directives matters.
# If Cells is not running with https, consider using ws instead of wss
ProxyPassMatch "/ws/(.*)" wss://localhost:8080/ws/$1 nocanon
## This rewrite condition is required if using Cells-Sync
# RewriteCond %{HTTP:Content-Type} =application/grpc [NC]
# RewriteRule /(.*) h2://localhost:8080/$1 [P,L]
ProxyPass "/" "https://127.0.0.1:8080/"
ProxyPassReverse "/" "https://127.0.0.1:8080/"
ErrorLog /var/log/httpd/error.log
CustomLog /var/log/httpd/access.log combined
SSLCertificateFile /etc/letsencrypt/live/cells.howtoforge.local/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/cells.howtoforge.local/privkey.pem
#Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
Salve o arquivo e saia do editor quando terminar.
Agora execute o comando 'apachectl' abaixo para verificar a sintaxe do Apache. Se você tiver a configuração adequada do Apache, verá a saída 'Syntax is OK'.
sudo apachectl configtest
Por último, execute o comando 'systemctl' abaixo para reiniciar o servidor web 'httpd' e aplicar suas alterações. Com isso, a instalação do Pydio Cells deverá estar finalizada e acessível.
sudo systemctl restart httpd
Acessando células Pydio
Abra seu navegador da web e visite o nome de domínio da instalação do Pydio Cells, como https://cells.howtoforge.local. Se a instalação for bem-sucedida, você verá a página de login do Pydio Cells.
Insira seu usuário administrador e senha para fazer login.
Se você tiver as credenciais corretas, verá o painel do usuário do Pydio Cells como o seguinte.
A partir daqui, você pode tentar fazer upload de arquivos do seu computador local para o servidor Pydio Cells. Na captura de tela a seguir, carreguei os arquivos nas células Pydio e obtive sucesso.
Conclusão
Parabéns! Você concluiu a instalação do Pydio Cells no servidor Alma Linux 9. Você tem as células Pydio em execução com o servidor de banco de dados MariaDB e o servidor web Httpd. Além disso, você também garantiu a instalação do Pydio Cells com HTTPS por meio de Certbot e Letsencrypt.