Come installare il software di budgeting effettivo sul server Debian 12
Come installare il software di budgeting effettivo sul server Debian 12
Su questa pagina
- Prerequisiti
- Installazione di Node.js e filati
- Download del codice sorgente del budget effettivo
- Esecuzione effettiva in background come servizio systemd
- Configurazione di Nginx come proxy inverso
- Accesso al budget effettivo tramite browser Web
- Conclusione
Actual Budget è un software di gestione finanziaria open source incentrato sulla privacy e costruito sulla base del "Envelope Style Budgeting". Actual è scritto in Node.js e può essere installato localmente in pochissimo tempo. Supporta la sincronizzazione multi-dispositivo e la crittografia end-to-end opzionale.
In questo tutorial, ti mostreremo come installare l'Actual Budgeting System sul server Debian 12. Installerai Actual con Nginx come proxy inverso e lo proteggerai con HTTPS tramite Certbot e Letsencrypt.
Prerequisiti
Per iniziare con questa esercitazione, assicurati di avere:
- Un server Debian 12
- Un utente non root con privilegi di amministratore
- Un nome di dominio che punta all'indirizzo IP del server
Installazione di Node.js e filati
Prima di installare Actual, è necessario assicurarsi che Node.js, Git e Yarn siano installati nel sistema. Al momento, Actual richiede Node v18 o superiore, che può essere installato dal repository Debian ufficiale.
Innanzitutto, esegui il comando 'apt' qui sotto per aggiornare l'indice dei pacchetti Debian e installare pacchetti di base come Node.js, NPM e Git. Immettere "Y" per confermare l'installazione.
sudo apt update
sudo apt install nodejs npm git
Al termine dell'installazione, installa il gestore di pacchetti Yarn utilizzando il comando 'npm' di seguito. In questo esempio, installerai Yarn a livello globale o a livello di sistema.
npm install --global yarn
Al termine, controlla la versione Node.js e Yarn con il comando seguente.
node --version
yarn --version
Nell'output seguente, puoi vedere che Node.js 18 e Yarn 1.22 sono installati.
Download del codice sorgente del budget effettivo
Dopo aver installato le dipendenze, è possibile scaricare il codice sorgente effettivo, installare le dipendenze tramite Yarn, configurare Actual con il file 'config.json' e quindi eseguire Actual tramite la riga di comando. Inoltre, è necessario un utente dedicato per installare ed eseguire Actual sul sistema.
Accedi al tuo utente con il comando seguente.
su - username
Scarica il codice sorgente del budget effettivo con il comando 'git' di seguito.
git clone https://github.com/actualbudget/actual-server.git
Vai alla directory 'actual-server' e installa le dipendenze JavaScript con il comando 'yarn' qui sotto.
cd actual-server
yarn install
Di seguito è possibile vedere l'installazione delle dipendenze JavaScript tramite il gestore di pacchetti Yarn.
Al termine dell'installazione, creare un nuovo file 'config.json' utilizzando l'editor 'nano'.
nano config.json
Inserire la configurazione seguente per eseguire Actual sull'indirizzo IP locale con la porta predefinita 5006.
{
"hostname": "127.0.0.1",
"port": 5006
}
Salva il file ed esci dall'editor.
Infine, esegui il comando "yarn start" di seguito per avviare il software vero e proprio. Questo aprirà la porta 5006 sul tuo localhost o indirizzo '127.0.0.1' che verrà utilizzato dall'applicazione.
yarn start
Premere Ctrl+c per terminare il processo.
Esecuzione effettiva in background come servizio systemd
Ora che hai installato e configurato Actual, creiamo un nuovo file di servizio systemd per l'esecuzione di Actual in background come servizio systemd.
Crea un nuovo file di servizio systemd '/etc/systemd/system/actual.service' con il seguente editor 'nano'.
sudo nano /etc/systemd/system/actual.service
Inserisci la configurazione seguente per eseguire Actual in background come servizio systemd. Assicurati di modificare i valori predefiniti "Utente" e "Gruppo" con il tuo nome utente, quindi modifica "WorkingDirectory" con il percorso corretto.
[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
Al termine, salva il file ed esci dall'editor.
Ora esegui il comando 'systemctl' qui sotto per ricaricare il gestore systemd e applicare le modifiche.
sudo systemctl daemon-reload
Quindi, avvia e abilita 'actual.service' utilizzando il seguente comando. Questo avvierà 'actual.service' in background e ne consentirà l'esecuzione automatica all'avvio del sistema.
sudo systemctl enable --now actual.service
Controlla lo stato 'actual.service' con il comando seguente. Dovresti vedere che 'actual.service' è in esecuzione e abilitato sul tuo sistema.
sudo systemctl status actual.service
Configurazione di Nginx come proxy inverso
A questo punto, Actual è attivo e funzionante in background come servizio systemd. In questa sezione, installerai Nginx e lo configurerai come proxy inverso per Actual. Successivamente, genererai certificati SSL per la tua distribuzione effettiva tramite Certbot e Letsencrypt.
Innanzitutto, esegui il comando 'apt' di seguito per installare il plug-in Nginx, Certbot e Python3 Certbot Nginx. Immettere 'Y' per procedere con l'installazione.
sudo apt install nginx certbot python3-certbot-nginx -y
Al termine dell'installazione, crea un nuovo file di blocco del server Nginx '/etc/nginx/sites-available/actual-budget' con l'editor 'nano'.
sudo nano /etc/nginx/sites-available/actual-budget
Inserisci la configurazione qui sotto e assicurati di cambiare il parametro 'server_name' con il tuo nome di 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;
}
}
Al termine, salva il file ed esci dall'editor.
Ora esegui il comando seguente per attivare il blocco del server "actual-budget" e verificare le configurazioni di Nginx. Se non c'è alcun errore, si otterrà un output come "la sintassi è ok - il test è riuscito".
sudo ln -s /etc/nginx/sites-available/actual-budget /etc/nginx/sites-enabled/
sudo nginx -t
Quindi, esegui il comando seguente per riavviare e verificare lo stato del servizio Nginx. Assicurati che il server web Nginx sia in esecuzione.
sudo systemctl restart nginx
sudo systemctl status nginx
Infine, esegui il comando 'certbot' di seguito per generare certificati SSL e proteggere l'installazione effettiva del software. Assicurati di modificare il nome di dominio e l'indirizzo e-mail nel seguente comando.
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email <[email > -d budget.howtoforge.local
Al termine del processo, l'installazione effettiva dovrebbe essere protetta con HTTPS tramite Certbot e Letsencrypt. I tuoi certificati SSL sono disponibili nella directory '/etc/letsencrypt/live/domain.com' e HTTPS viene abilitato automaticamente sul file di blocco del tuo server.
Accesso al budget effettivo tramite browser Web
Visita il nome di dominio della tua installazione effettiva, ad esempio https://budget.howtoforge.local. In caso di esito positivo, verrà visualizzato il messaggio di benvenuto a Effettivo e verrà chiesto di impostare una password.
Inserisci la nuova password e ripeti, quindi fai clic su "OK".
Una volta configurata la password, inserisci la password per accedere alla Actual Dashboard.
Per la prima volta, ti verrà chiesto di visualizzare i dati demo o di ricominciare da capo.
Se hai familiarità con Actual, puoi fare clic su "Inizia da capo", ma se non conosci Actual, fai clic su "Visualizza demo" per avere un'idea dell'utilizzo di base effettivo.
Di seguito è riportato un esempio di dati dimostrativi dal sistema di budgeting effettivo.
Conclusione
Felicitazioni! Hai completato l'installazione di Actual, un software finanziario incentrato sulla privacy, su un server Debian 12. Hai Actual attivo e funzionante come servizio systemd in background, che è in esecuzione sopra il proxy inverso Nginx. Inoltre, hai anche protetto Actual con HTTPS tramite Certbot e Letsencrypt.