Cómo instalar el software de presupuestos reales en un servidor Debian 12

Actual Budget es un software de gestión financiera de código abierto centrado en la privacidad y construido sobre «Envelope Style Budgeting». Actual está escrito en Node.js y puede instalarse localmente en un abrir y cerrar de ojos. Admite sincronización multidispositivo y cifrado opcional de extremo a extremo.

En este tutorial, te mostraremos cómo instalar el sistema de presupuestos Actual en el servidor Debian 12. Instalarás Actual con Nginx como proxy inverso, y lo asegurarás con HTTPS mediante Certbot y Letsencrypt.

Requisitos previos

Para empezar con este tutorial, asegúrate de que tienes

  • Un servidor Debian 12
  • Un usuario no root con privilegios de administrador
  • Un nombre de dominio apuntando a la dirección IP del servidor

Instalación de Node.js y Yarn

Antes de instalar Actual, debes asegurarte de que Node.js, Git y el gestor de paquetes Yarn están instalados en tu sistema. En este momento, Actual requiere Node v18 o superior, que puede instalarse desde el repositorio oficial de Debian.

En primer lugar, ejecuta el siguiente comando‘apt‘ para actualizar el índice de paquetes de Debian e instalar paquetes básicos como Node.js, NPM y Git. Introduce«Y» para confirmar la instalación.

sudo apt update
sudo apt install nodejs npm git

instala nodejs y npm

Una vez finalizada la instalación, instala el gestor de paquetes Yarn utilizando el comando«npm» que aparece a continuación. En este ejemplo, instalarás Yarn globalmente o en todo el sistema.

npm install --global yarn

Cuando termine, comprueba la versión de Node.js y de Yarn con el comando que aparece a continuación.

node --version
yarn --version

En la salida de abajo, puedes ver que Node.js 18 y Yarn 1.22 están instalados.

comprobar hilo

Descargar el código fuente de Presupuesto Real

Una vez instaladas las dependencias, estás listo para descargar el código fuente de Actual, instalar las dependencias mediante Yarn, configurar Actual con el archivo «config.json» y, a continuación, ejecutar Actual mediante la línea de comandos. Además, necesitas un usuario dedicado para instalar y ejecutar Actual en tu sistema.

Accede a tu usuario con el comando que se indica a continuación.

su - username

Descarga el código fuente de Actual Budget con el comando‘git‘ que aparece a continuación.

git clone https://github.com/actualbudget/actual-server.git

descargar actual-server

Ve al directorio‘actual-server‘ e instala las dependencias de JavaScript con el comando‘yarn‘ que aparece a continuación.

cd actual-server
yarn install

A continuación puedes ver la instalación de las dependencias de JavaScript mediante el gestor de paquetes Yarn.

instalar deps

Una vez completada la instalación, crea un nuevo archivo‘config.json‘ utilizando el editor‘nano‘.

nano config.json

Introduce la configuración que aparece a continuación para ejecutar Actual en la dirección IP local con el puerto predeterminado 5006.

{
 "hostname": "127.0.0.1",
 "port": 5006
}

Guarda el archivo y sal del editor.

Por último, ejecuta el comando‘yarn start‘ que aparece a continuación para iniciar el software de Actual. Esto abrirá el puerto 5006 en tu dirección localhost o‘127.0.0.1‘ que utilizará la aplicación.

yarn start

Pulsa Ctrl+c para terminar el proceso.

inicio del hilo

Ejecutar Actual en segundo plano como un servicio Systemd

Ahora que ya has instalado y configurado Actual, vamos a crear un nuevo archivo de servicio systemd para ejecutar Actual en segundo plano como un servicio systemd.

Crea un nuevo archivo de servicio systemd‘/etc/systemd/system/actual.service‘ con el siguiente editor‘nano‘.

sudo nano /etc/systemd/system/actual.service

Introduce la siguiente configuración para ejecutar Actual en segundo plano como un servicio systemd. Asegúrate de cambiar el«Usuario» y el«Grupo» por defecto por tu nombre de usuario, y luego cambia el«DirectorioDeTrabajo» por tu ruta correcta.

[Unit]
Description=Actual-Server (https://actualbudget.org)
After=network.target
[Service]
User=flash
Group=flash
WorkingDirectory=/home/flash/actual-server/
ExecStart=/usr/local/bin/yarn start
Restart=on-watchdog

[Install]
WantedBy=multi-user.target

Guarda el archivo y sal del editor cuando hayas terminado.

Ahora ejecuta el siguiente comando‘systemctl‘ para recargar el gestor systemd y aplicar tus cambios.

sudo systemctl daemon-reload

A continuación, inicia y activa«actual.service» con el siguiente comando. Esto iniciará«actual.service» en segundo plano y permitirá que se ejecute automáticamente al arrancar el sistema.

sudo systemctl enable --now actual.service

activar servicio

Comprueba el estado de«actual.service» con el siguiente comando. Deberías ver que«actual.service» se está ejecutando y está habilitado en tu sistema.

sudo systemctl status actual.service

comprueba el servicio real

Configurar Nginx como Proxy Inverso

Llegados a este punto, Actual está funcionando en segundo plano como un servicio systemd. En esta sección, instalarás Nginx y lo configurarás como proxy inverso para Actual. Después, generarás certificados SSL para tu despliegue de Actual mediante Certbot y Letsencrypt.

En primer lugar, ejecuta el siguiente comando«apt» para instalar Nginx, Certbot y el plugin Python3 Certbot Nginx. Introduce‘Y’ para proceder con la instalación.

sudo apt install nginx certbot python3-certbot-nginx -y

instalar nginx certbot

Una vez finalizada la instalación, crea un nuevo archivo de bloqueo del servidor Nginx‘/etc/nginx/sites-available/actual-budget‘ con el editor‘nano‘.

sudo nano /etc/nginx/sites-available/actual-budget

Introduce la configuración que aparece a continuación y asegúrate de cambiar el parámetro‘nombre_servidor‘ por el nombre de tu dominio.

server {
listen 80;
server_name budget.howtoforge.local;
location / {
include /config/nginx/proxy.conf;
include /config/nginx/resolver.conf;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;

set $upstream_app 127.0.0.1;
set $upstream_port 5006;
set $upstream_proto http;
proxy_pass $upstream_proto://$upstream_app:$upstream_port;
}
}

Cuando hayas terminado, guarda el archivo y sal del editor.

Ahora ejecuta el siguiente comando para activar el bloque de servidor‘actual-budget‘ y verifica tu configuración de Nginx. Si no se produce ningún error, obtendrás una salida como‘la sintaxis es correcta – la prueba se ha realizado correctamente‘.

sudo ln -s /etc/nginx/sites-available/actual-budget /etc/nginx/sites-enabled/
sudo nginx -t

configuración de nginx

A continuación, ejecuta el siguiente comando para reiniciar y verificar el estado del servicio Nginx. Asegúrate de que el servidor web Nginx se está ejecutando.

sudo systemctl restart nginx
sudo systemctl status nginx

comprobar nginx

Por último, ejecuta el siguiente comando‘certbot‘ para generar certificados SSL y asegurar la instalación de tu software Actual. Asegúrate de cambiar el nombre de dominio y la dirección de correo electrónico en el siguiente comando.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email <[email protected]> -d budget.howtoforge.local

Cuando termine el proceso, tu instalación de Actual debería estar protegida con HTTPS mediante Certbot y Letsencrypt. Tus certificados SSL estarán disponibles en el directorio‘/etc/letsencrypt/live/domain.com‘ y HTTPS se activará automáticamente en el archivo de bloqueo de tu servidor.

Acceder a Actual Budget a través del navegador web

Visita el nombre de dominio de tu instalación de Actual, como https://budget.howtoforge.local. Si tienes éxito, verás el mensaje de bienvenida a Actual y se te pedirá que establezcas una contraseña.

Introduce tu nueva contraseña y repítelo, después haz clic en«Aceptar«.

configurar contraseña

Una vez configurada la contraseña, introdúcela para iniciar sesión en el Panel de control de Actual.

inicio de sesión

Por primera vez, se te pedirá que veas datos de demostración o que empieces de cero.

Si estás familiarizado con Actual, puedes hacer clic en «Empezar de cero«, pero si eres nuevo en Actual, haz clic en«Ver demostración» para familiarizarte con el uso básico de Actual.

ver datos

A continuación se muestra un ejemplo de datos de demostración del sistema de presupuestación de Actual.

Cuadro de mandos actual

Conclusión

¡Enhorabuena! Has completado la instalación de Actual, un software de finanzas centrado en la privacidad, en un servidor Debian 12. Has puesto en marcha Actual como un servicio systemd en segundo plano, que se ejecuta sobre el proxy inverso Nginx. Además, también has asegurado Actual con HTTPS mediante Certbot y Letsencrypt.

También te podría gustar...