Skip to main content

Guia de Instalação do Passbolt em Hospedagem Compartilhada

Pré-requisitos

Para a execução deste processo, o usuário deve:

  • Possuir acesso root ao servidor com AlmaLinux 9 ou Semelhantes.
  • Ter instalado Git no servidor.
  • Contar com PHP (versão compatível, ex.: PHP 7.4 ou superior) e as extensões necessárias (php-cli, php-fpm, php-gd, php-mbstring, php-json, php-curl, php-xml, php-intl).
  • Ter um servidor de banco de dados (MariaDB/MySQL) disponível e criado para o usuário.
  • Configurar um servidor web (Nginx ou Apache) para servir a aplicação.
  • Possuir um domínio ou subdomínio apontando para o servidor.
  • Possuir ssl configurado para o domínio ou subdomínio.
  • Possuir a conta de hospedagem preparada para receber a instalação, passos acima.

Instrução de Trabalho

A seguir, são apresentados os passos necessários para a instalação do Passbolt CE a partir do código fonte:

Passo 1: Atualização do Sistema e Instalação de Dependências

Atualize o sistema e instale os pacotes essenciais:

dnf update -y
dnf install -y git composer php php-cli php-fpm php-gd php-mbstring php-json php-curl php-xml php-intl

Verifique se o as dependências que estão sendo baixadas correspondem a versão por exemplo php81-gd-devel

Grande parte das extensões já estão baixadas nativamente junto ao painel de controle instalado.

Passo 2: Clonagem do Repositório do Passbolt

Clone o repositório oficial do Passbolt a partir do GitHub para o diretório desejado (por exemplo, /home/passbolt/public_html):

git clone https://github.com/passbolt/passbolt_api.git /path/para/a/public/do/dominio

Mova os arquivos de dentro da pasta do clone para a public

Passo 3: Instalação das Dependências via Composer

A API Passbolt usa uma chave OpenPGP para o servidor para autenticar e assinar as solicitações JSON de saída. Para melhor compatibilidade use a mesma versão do GnuPG para geração das chaves e para o módulo php.

gpg --batch --no-tty --gen-key <<EOF
  Key-Type: default
  Key-Length: 3072
  Subkey-Type: default
  Subkey-Length: 3072
  Name-Real: John Doe
  Name-Email: email@domain.tld
  Expire-Date: 0
  %no-protection
  %commit
EOF

Substitua Name-Real e Name-Email pelo o proprietário da instalação.

Para exibir a nova chave:

gpg --armor --export-secret-keys email@domain.tld

Depois de criar a chave, anote a impressão digital, ela será solicitada posteriormente no processo de instalação. Você pode obter a impressão digital da chave do servidor da seguinte maneira.

gpg --list-keys --fingerprint | grep -i -B 2 'email@domain.tld'

Copie as chaves públicas e privadas para o local de configuração do passbolt:

gpg --armor --export-secret-keys email@domain.tld > /path/para/a/public/do/dominio/config/gpg/serverkey_private.asc
gpg --armor --export email@domain.tld > /path/para/a/public/do/dominio/config/gpg/serverkey.asc

Passo 4: Instalação das Dependências via Composer

Navegue até o diretório do Passbolt e instale as dependências PHP utilizando o Composer:

cd /path/para/a/public/do/dominio
curl -sS https://getcomposer.org/installer | php
composer.phar install --no-dev

A instalação do composer também será necessária!

Passo 4: Crie um arquivo de configuração passbolt

Baseado no arquivo de configuração /config/passbolt-default.php, configure o ambiente conforme o necessário.

cp config/passbolt.default.php config/passbolt.php
vim config/passbolt.php

Em seguida, edite o arquivo para definir os parâmetros essenciais.

  • URL base completo do aplicativo
  • Configuração do banco de dados
  • Configurações de e-mail
  • Fingerprint da chave OpenGPG do servidor.

Passo 6: Execução das Migrações e Instalação do Passbolt

Com o ambiente configurado, execute as migrações do banco de dados e instale o Passbolt utilizando os comandos do CakePHP:

cd /path/para/a/public/do/dominio/
bin/cake migrations migrate
bin/cake passbolt install

O comando bin/cake passbolt install iniciará o assistente de instalação, que guiará a criação de chaves e a configuração inicial do aplicativo.

Passo 7: Configuração do Servidor Web

Configure o seu servidor web para apontar para a pasta webroot do Passbolt. A seguir, um exemplo de configuração para o Nginx:

# Exemplo de configuração Nginx para Passbolt
server {
    listen 80;
    server_name seu-dominio.com;
    return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl;
    server_name seu-dominio.com;
    root /var/www/passbolt/webroot;
    index index.php;

    ssl_certificate /caminho/do/certificado.crt;
    ssl_certificate_key /caminho/da/chave.key;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}

Passo 8: Finalização via Interface Web

Após configurar o servidor web, acesse o Passbolt através do navegador utilizando o domínio configurado (https://seu-dominio.com). Na interface, realize o healthcheck, e finalize as pendencias apontadas por ele.


Conclusão

Com a execução dos passos descritos, o Passbolt CE estará instalado a partir do código fonte em seu ambiente de hospedagem compartilhada. O procedimento envolve a clonagem do repositório, configuração do ambiente via Composer, definição dos parâmetros no arquivo de configuração, configuração do banco de dados, execução das migrações e ajustes no servidor web.

Finalize a instalação pela interface web e proceda com a criação dos usuários conforme as necessidades da sua equipe. Para dúvidas ou suporte adicional, consulte a documentação oficial do Passbolt e os fóruns da comunidade.

Informações de controle de versão

Assunto

Instalação do Passbolt CE via código fonte em ambiente de hospedagem compartilhada com AlmaLinux 9

Introdução

Este documento descreve o procedimento para instalar o Passbolt Community Edition (CE) a partir do código fonte. Baseia-se nas instruções oficiais disponíveis em Passbolt – Install from source e assume que o usuário possui acesso root total ao servidor.

Palavras-Chave

<Passbolt | Código Fonte | AlmaLinux 9 | Hospedagem Compartilhada | Instalação>

Segurança da Informação

Este documento é destinado ao uso interno e deve ser manuseado conforme as políticas de segurança da informação da organização.

Dados da Revisão

Data: 02/09/2024 Rev.: 1.0 Criado por: Gabriel Prado Aprovado por:  Visibilidade: Interno