Akaunting VPS: Instale Contabilidade Open Source na Nuvem

10 min de leitura Contabilidade Open Source
Akaunting VPS: Instale Contabilidade Open Source na Nuvem

O gerenciamento financeiro preciso e transparente é a espinha dorsal de qualquer negócio moderno. Para pequenas e médias empresas, startups e freelancers, o custo elevado de softwares de contabilidade proprietários pode representar uma barreira significativa. É aqui que entra a solução ideal: o Akaunting, um sistema ERP contábil open source baseado na web que permite a gestão financeira completa em ambiente self-hosted. Ao combinar o Akaunting com uma infraestrutura de akaunting vps dedicada, você garante controle total sobre seus dados, privacidade reforçada e personalização ilimitada.

Este tutorial técnico guiará profissionais de TI e sysadmins na instalação completa do Akaunting em um servidor Linux Debian ou Ubuntu. Abordaremos desde o provisionamento da infraestrutura até a configuração final do banco de dados e certificados SSL, garantindo que seu sistema financeiro self-hosted esteja pronto para produção com segurança e performance.

1. Requisitos de Infraestrutura e Preparação do Servidor

Antes de iniciar a instalação, é fundamental garantir que o ambiente atenda aos requisitos mínimos de hardware e software. O Akaunting é desenvolvido em PHP e utiliza o framework Laravel, o que significa que ele depende de um conjunto específico de extensões para funcionar corretamente.

1.1. Especificações do Servidor

Para uma operação fluida com até 50 usuários simultâneos e volume moderado de transações, recomenda-se o seguinte hardware em sua akaunting vps:

  • CPU: Mínimo de 1 a 2 vCPUs dedicadas.
  • RAM: 2 GB de memória RAM (recomendado para evitar trocas de disco sob carga).
  • Armazenamento: 20 GB de SSD NVMe ou SATA para garantir I/O rápido no banco de dados e logs.
  • Sistema Operacional: Ubuntu 22.04 LTS ou Debian 11/12 (ambos amplamente suportados).

1.2. Acesso Root e Atualização do Sistema

Acesse seu servidor via SSH utilizando o usuário root. O primeiro passo crítico é atualizar os pacotes do sistema para garantir que todas as bibliotecas de segurança estejam em dia.

apt update && apt upgrade -y

Em seguida, instule utilitários básicos que facilitam a gestão do servidor:

apt install curl wget git unzip socat -y

2. Instalação do Stack LEMP (Linux, Nginx, MySQL, PHP)

O Akaunting roda nativamente no Nginx e requer PHP 8.1 ou superior. Utilizaremos o MySQL como motor de banco de dados por sua estabilidade e compatibilidade comprovada com o Laravel.

2.1. Instalação do MySQL Server

O MySQL armazenará todas as informações contábeis, configurações de usuários e logs do sistema. Instale o servidor seguindo os passos abaixo:

apt install mysql-server -y

Após a instalação, execute o script de segurança para definir a senha root do MySQL e remover configurações padrão inseguras:

mysql_secure_installation

Siga as instruções na tela: defina uma senha forte para o root do MySQL, remova usuários anônimos, desative o login remoto do root e remova o banco de dados de teste. Para a validação de senha, selecione "STRONG" se disponível.

2.2. Instalação e Configuração do PHP

O Akaunting exige extensões específicas do PHP. Instale o PHP 8.1 (ou versão mais recente recomendada pela documentação oficial do Akaunting) junto com todas as dependências necessárias:

apt install php8.1-fpm php8.1-mysql php8.1-curl php8.1-gd php8.1-intl php8.1-mbstring php8.1-xml php8.1-zip php8.1-bcmath php8.1-json php8.1-readline -y

Edite o arquivo de configuração principal do PHP para ajustar limites de memória e tamanho de upload, essenciais para importação de extratos bancários:

nano /etc/php/8.1/fpm/php.ini

Altere ou verifique as seguintes diretrizes:

  • memory_limit = 256M
  • upload_max_filesize = 10M
  • post_max_size = 10M
  • max_execution_time = 300

Reinicie o serviço do PHP-FPM para aplicar as mudanças:

systemctl restart php8.1-fpm

2.3. Instalação e Configuração do Nginx

O Nginx atuará como proxy reverso, servindo os arquivos estáticos e repassando requisições PHP ao FPM.

apt install nginx -y

Crie um arquivo de configuração para o seu domínio. Substitua seu-dominio.com pelo seu domínio real:

nano /etc/nginx/sites-available/akaunting.conf

Cole a seguinte configuração otimizada para Laravel:

server {
    listen 80;
    server_name seu-dominio.com www.seu-dominio.com;
    root /var/www/akaunting/public;
    index index.php index.html;

    charset utf8mb4;

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

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /\.ht {
        deny all;
    }

    # Otimizações de cache para arquivos estáticos
    location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
        expires 1y;
        add_header Cache-Control "public, immutable";
    }
}

# Redirecionamento HTTPS forçado será adicionado após o SSL
server {
    listen 443 ssl http2;
    server_name seu-dominio.com www.seu-dominio.com;

    # Certificados SSL serão inseridos aqui posteriormente
    
    root /var/www/akaunting/public;
    index index.php;

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

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

Ative a configuração e teste o Nginx:

ln -s /etc/nginx/sites-available/akaunting.conf /etc/nginx/sites-enabled/
nginx -t

Se o teste retornar sucesso, reinicie o serviço:

systemctl restart nginx

3. Configuração do Banco de Dados

Agora que o stack web está rodando, precisamos criar o banco de dados e um usuário dedicado para o Akaunting. Isso isola as permissões e aumenta a segurança.

mysql -u root -p

Dentro do shell do MySQL, execute os seguintes comandos (substitua sua_senha_forte por uma senha complexa):

CREATE DATABASE akaunting_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'akaunting_user'@'localhost' IDENTIFIED BY 'sua_senha_forte';
GRANT ALL PRIVILEGES ON akaunting_db.* TO 'akaunting_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Essa configuração garante que o banco de dados utilize a codificação correta para caracteres especiais, essencial para nomes de contas e descrições em português.

4. Download e Instalação do Akaunting

A maneira mais robusta de instalar o Akaunting é utilizando o Composer ou baixando o pacote estável diretamente. Para este tutorial, utilizaremos a versão estável via CLI para garantir integridade dos arquivos.

4.1. Preparação do Diretório

Crie o diretório onde os arquivos serão armazenados e defina as permissões corretas:

mkdir -p /var/www/akaunting
cd /var/www/akaunting

4.2. Download do Software

Acesse o repositório oficial ou use o wget com a última versão estável disponível no GitHub do Akaunting:

curl -L https://github.com/akaunting/akaunting/releases/latest/download/akaunting.zip -o akaunting.zip
unzip akaunting.zip -d /var/www/akaunting

Se o unzip não estiver instalado, execute apt install unzip.

4.3. Configuração de Permissões

O Akaunting precisa de permissão de escrita em diretórios específicos para gerar logs e caches. O usuário do Nginx no Ubuntu/Debian geralmente é www-data:

chown -R www-data:www-data /var/www/akaunting
chmod -R 755 /var/www/akaunting/storage
chmod -R 755 /var/www/akaunting/bootstrap/cache

5. Instalação via Linha de Comando (CLI)

Embora exista um instalador web, a instalação via CLI é preferível em ambientes de produção por ser mais rápida, menos propensa a erros de timeout e permitir automação futura.

cd /var/www/akaunting
php artisan install --db-host=localhost --db-name=akaunting_db --db-user=akaunting_user --db-pass=sua_senha_forte [email protected] --admin-password=SuaSenhaSuperSegura123!

Este comando único configura o arquivo .env, cria as tabelas no banco de dados e gera o primeiro usuário administrador. Certifique-se de que o caminho do artisan está correto.

6. Segurança Avançada: SSL Let's Encrypt

Para um sistema financeiro self-hosted, a conexão HTTPS não é opcional; é obrigatória para proteger dados sensíveis em trânsito. Utilizaremos o Certbot para obter certificados gratuitos do Let's Encrypt.

apt install certbot python3-certbot-nginx -y
certbot --nginx -d seu-dominio.com -d www.seu-dominio.com

O Certbot detectará a configuração do Nginx criada anteriormente, solicitará um e-mail de contato, pedirá aceitação dos termos e configurará automaticamente o redirecionamento HTTP para HTTPS. Ele também agendará a renovação automática do certificado.

7. Configurações Finais e Otimização

Com o sistema instalado e seguro, é hora de otimizar a experiência e garantir a integridade dos dados.

7.1. Agendamento de Tarefas (Cron)

O Akaunting utiliza tarefas agendadas para enviar relatórios por e-mail, reaverificar taxas de câmbio e gerar backups se configurados. Execute o comando abaixo:

crontab -e

Adicione a seguinte linha ao final do arquivo:

* * * * * cd /var/www/akaunting && php artisan schedule:run >> /dev/null 2>&1

7.2. Backup Automatizado

Nunca dependa apenas da integridade do disco. Configure backups automáticos do banco de dados e dos arquivos do sistema.

mkdir /var/backups/akaunting
nano /usr/local/bin/backup-akaunting.sh

Crie um script simples:

#!/bin/bash
DATE=$(date +"%Y%m%d_%H%M%S")
mysqldump -u akaunting_user -p'sua_senha_forte' akaunting_db > /var/backups/akaunting/db_$DATE.sql
tar -czf /var/backups/akaunting/files_$DATE.tar.gz /var/www/akaunting/storage

Torne o script executável e adicione ao crontab para rodar diariamente à meia-noite:

chmod +x /usr/local/bin/backup-akaunting.sh
0 0 * * * /usr/local/bin/backup-akaunting.sh

Conclusão

Ao concluir este tutorial, você possui um ERP contábil nuvem totalmente funcional, seguro e sob seu controle total. A escolha de uma akaunting vps permite que você escale os recursos conforme o crescimento do negócio, sem as limitações de planos SaaS compartilhados.

Este ambiente oferece vantagens competitivas claras: gestão financeira servidor próprio elimina riscos de vazamento de dados para terceiros, permite integrações customizadas com APIs locais e garante conformidade com políticas internas de retenção de dados. Para próximos passos, recomenda-se a configuração de um firewall fail2ban e a revisão periódica das permissões de arquivo.

Com o Akaunting instalado, sua empresa está pronta para uma nova era de transparência financeira e eficiência operacional, utilizando as melhores práticas de software contabilidade gratuito em infraestrutura moderna.

Compartilhar: Link copiado!
Esse tutorial foi útil?

Comentários (0)

Seja o primeiro a comentar.

Deixe seu comentário

Seu comentário será analisado antes de ser publicado.

0/2000