Tropic Host

Stirling PDF su VPS: installazione del proprio editor PDF

7 min di lettura
Tropic
Stirling PDF su VPS: installazione del proprio editor PDF

Stirling PDF: come installare il proprio editor PDF su un VPS

Per unire un contratto a un allegato, comprimere la scansione di un passaporto o nascondere dati bancari, molte persone caricano il documento sul primo servizio online che trovano. Insieme al file, firme, indirizzi, fatture e altri dati riservati possono essere trasmessi a un sito di terze parti.

Stirling PDF propone un approccio diverso. È un’applicazione web con decine di strumenti per PDF che può essere eseguita sul proprio VPS. Il pannello si apre nel browser di un computer o di uno smartphone, mentre i documenti vengono elaborati dal proprio server.

Di seguito esamineremo le funzioni più interessanti di Stirling PDF, i requisiti del server e l’installazione su Ubuntu tramite Docker Compose, con autenticazione e HTTPS.

Che cos’è Stirling PDF

Stirling PDF è una piattaforma self-hosted per modificare ed elaborare file PDF. Riunisce più di 55 operazioni: unione e divisione dei file, riordinamento delle pagine, compressione, conversione, OCR, firme, filigrane, confronto dei documenti e rimozione di metadati e informazioni riservate.

Il servizio può essere utilizzato come applicazione desktop, prodotto cloud o server personale. In modalità self-hosted, i file vengono elaborati dalla propria istanza di Stirling PDF e l’accesso può essere protetto con una password e HTTPS. La versione server gratuita è pensata per gruppi fino a cinque utenti; per i team più grandi e per alcune funzioni aziendali sono disponibili edizioni a pagamento.

La differenza principale rispetto a un normale convertitore online è il controllo. È possibile scegliere il provider, la posizione del server, gli utenti e le regole di accesso. Inoltre, non è necessario cercare un sito diverso per ogni operazione: un solo pannello sostituisce diversi servizi per compressione, conversione, firma e OCR.

Le funzioni più interessanti di Stirling PDF

Gestione visiva delle pagine

In modalità Multi-Tool, il documento viene mostrato come una griglia di miniature. Le pagine possono essere trascinate, ruotate, eliminate, divise, inserite nella posizione desiderata ed esportate in modo selettivo. Il file viene caricato una sola volta e le modifiche supportano le operazioni di annullamento e ripristino.

OCR per i documenti scansionati

L’OCR aggiunge un livello di testo a un PDF scansionato. Dopo l’elaborazione, è possibile cercare parole nel documento, selezionare il testo e copiarlo. Sono disponibili anche il raddrizzamento delle pagine inclinate, la rimozione del rumore e l’aumento del contrasto. Per la lingua russa è necessario aggiungere separatamente il pacchetto Tesseract rus.traineddata.

Rimozione sicura dei dati

Un rettangolo nero sopra un numero di conto non elimina sempre il testo originale. Lo strumento Redact può rimuovere le corrispondenze dalla struttura del PDF, invece di limitarsi a coprirle con un livello visivo. È possibile contrassegnare manualmente un’area oppure cercare in tutto il documento numeri di telefono, indirizzi e-mail, numeri di carta e altri dati tramite parole o espressioni regolari.

Confronto delle versioni e scanner mobile

Compare mostra quali parole sono state aggiunte o rimosse tra due versioni di un contratto, un rapporto o una specifica tecnica. Per i documenti cartacei è disponibile uno scanner mobile: sul computer viene visualizzato un codice QR, lo smartphone carica le foto direttamente nella sessione corrente e i file temporanei vengono eliminati automaticamente dopo il download o dopo dieci minuti di inattività.

Automazioni e API

Automate funziona come le macro per i file PDF. Ad esempio, è possibile salvare una volta la seguente sequenza:

OCR → rimuovere le pagine vuote → comprimere → aggiungere una filigrana → impostare una password

In seguito, lo stesso flusso può essere applicato ai nuovi file senza ripetere ogni passaggio. Stirling PDF supporta anche l’elaborazione dei file da una cartella monitorata e offre un’API REST con documentazione Swagger integrata.

Quale VPS serve per Stirling PDF

L’elaborazione di un PDF può richiedere molta più memoria rispetto allo spazio occupato dal file originale. L’OCR, la conversione delle pagine in immagini e la conversione dei documenti da ufficio tramite LibreOffice richiedono risorse particolarmente elevate.

Per un’installazione di prova sono sufficienti 2 GB di RAM, ma per un utilizzo continuativo è preferibile prevedere:

  • 2 vCPU;
  • 4 GB di RAM;
  • almeno 10–20 GB di spazio libero su SSD o NVMe;
  • Ubuntu 22.04 o 24.04.

Se più utenti eseguono contemporaneamente OCR o conversioni, è più ragionevole scegliere 4 vCPU e 8 GB di RAM. Per i server meno potenti esiste l’immagine latest-ultra-lite, mentre latest-fat include font e strumenti aggiuntivi per conversioni di qualità superiore. L’immagine standard latest è adatta alla maggior parte degli utenti.

Installazione di Stirling PDF tramite Docker Compose

Nella configurazione seguente, il container resta in ascolto solo sull’interfaccia locale. In seguito, l’accesso esterno passerà tramite Nginx con HTTPS, quindi la porta 8080 non sarà esposta all’intera rete Internet.

Passaggio 1. Installare Docker

ssh root@SERVER_IP
apt update && apt upgrade -y
apt install -y curl
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
rm get-docker.sh

Verificare l’installazione:

docker --version
docker compose version

Passaggio 2. Creare la configurazione Docker Compose

mkdir -p /opt/stirling-pdf/{configs,logs,pipeline}
cd /opt/stirling-pdf
nano docker-compose.yml

Aggiungere la configurazione:

services:
  stirling-pdf:
    image: docker.stirlingpdf.com/stirlingtools/stirling-pdf:latest
    container_name: stirling-pdf
    restart: unless-stopped
    ports:
      - "127.0.0.1:8080:8080"
    volumes:
      - ./configs:/configs
      - ./logs:/logs
      - ./pipeline:/pipeline
    environment:
      - SECURITY_ENABLELOGIN=true
      - SYSTEM_DEFAULTLOCALE=ru-RU
      - SYSTEM_GOOGLEVISIBILITY=false

Avviare il servizio:

docker compose up -d
docker compose ps

Per la diagnostica, utilizzare:

docker compose logs --tail=100 stirling-pdf

Passaggio 3. Effettuare il primo accesso

Prima di configurare il dominio, aprire il pannello tramite un tunnel SSH. Il comando deve essere eseguito sul proprio computer:

ssh -L 8080:127.0.0.1:8080 root@SERVER_IP

Aprire http://localhost:8080. Le credenziali predefinite per il primo accesso sono il nome utente admin e la password stirling. Cambiare subito la password nelle impostazioni dell’account.

Collegamento del dominio e di HTTPS

Creare un record DNS di tipo A per un indirizzo come pdf.example.com e indirizzarlo verso l’IP del server. Quindi installare Nginx e Certbot:

apt install -y nginx certbot python3-certbot-nginx
nano /etc/nginx/sites-available/stirling-pdf

Aggiungere la configurazione sostituendo il dominio:

server {
    listen 80;
    server_name pdf.example.com;
    client_max_body_size 500M;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_read_timeout 300s;
    }
}

Attivare il sito e ottenere il certificato:

ln -s /etc/nginx/sites-available/stirling-pdf /etc/nginx/sites-enabled/stirling-pdf
nginx -t
systemctl reload nginx
certbot --nginx -d pdf.example.com

Stirling PDF è ora disponibile tramite HTTPS, mentre la porta interna 8080 resta chiusa. Per i file più grandi di 500 MB, aumentare il valore di client_max_body_size.

Come aggiungere l’OCR in russo

Creare una directory e scaricare i pacchetti Tesseract per l’inglese e il russo:

cd /opt/stirling-pdf
mkdir -p tessdata
curl -L -o tessdata/eng.traineddata \
  https://raw.githubusercontent.com/tesseract-ocr/tessdata_fast/main/eng.traineddata
curl -L -o tessdata/rus.traineddata \
  https://raw.githubusercontent.com/tesseract-ocr/tessdata_fast/main/rus.traineddata

Aggiungere la seguente riga alla sezione volumes del file docker-compose.yml:

      - ./tessdata:/usr/share/tessdata

Applicare le modifiche e controllare le lingue disponibili:

docker compose up -d
docker exec stirling-pdf tesseract --list-langs

Nell’elenco devono comparire eng e rus.

Sicurezza, aggiornamenti e limitazioni

Prima dell’utilizzo continuativo, cambiare la password predefinita, lasciare attiva l’autenticazione, non esporre la porta 8080 e consentire nel firewall solo SSH, HTTP e HTTPS. È consigliabile includere le directory configs e pipeline nei backup. Le funzioni di analisi di Stirling PDF vengono attivate solo dopo il consenso dell’utente e possono essere disabilitate completamente dall’amministratore.

L’aggiornamento si esegue nel modo seguente:

cd /opt/stirling-pdf
docker compose pull
docker compose up -d

Stirling PDF copre la maggior parte delle attività quotidiane, ma non conserva sempre i layout complessi durante la conversione tra PDF e formati da ufficio. L’OCR non riconosce la struttura di tabelle e formule, mentre la qualità del riconoscimento del testo scritto a mano o molto piccolo è limitata. Per ottenere buoni risultati, è preferibile utilizzare scansioni nitide con una risoluzione di circa 300 DPI.

Stirling PDF su un VPS di tropic.host

Il servizio non richiede una scheda video: sono più importanti la RAM, un processore stabile e un’unità di archiviazione veloce. È meglio scegliere una posizione vicina agli utenti, poiché i documenti di grandi dimensioni vengono prima caricati sul server e poi scaricati nuovamente.

Per un’istanza personale o un piccolo team, in genere è sufficiente un VPS Linux con 2 vCPU e 4 GB di RAM. Su un VPS di tropic.host è possibile installare Ubuntu, avviare la configurazione Docker Compose riportata sopra e pubblicare il pannello su un sottodominio separato. Un margine di memoria è particolarmente importante se sullo stesso server sono in esecuzione altri container.

Breve conclusione

Stirling PDF trasforma un VPS in un servizio web personale per i documenti. Riunisce decine di strumenti e supporta OCR, rimozione effettiva dei dati riservati, confronto delle versioni, scansione da dispositivi mobili, automazioni e API.

Il motivo principale per installarlo autonomamente è mantenere il controllo sui file. Per contratti, fatture, moduli e documenti interni, un’istanza protetta con autenticazione e HTTPS è più comoda di una raccolta di convertitori online scelti casualmente.

FAQ

Stirling PDF è gratuito?

Sì. La versione self-hosted gratuita supporta un massimo di cinque utenti. I team più grandi e le organizzazioni che necessitano di funzioni aziendali devono utilizzare un’edizione a pagamento.

I documenti lasciano il mio server?

In modalità self-hosted vengono elaborati dalla propria istanza di Stirling PDF. Il livello di sicurezza finale dipende dalla configurazione del VPS, da HTTPS, dalle password, dagli aggiornamenti e dagli accessi degli amministratori.

2 GB di RAM sono sufficienti?

Sì, per i test e le operazioni leggere. Per l’uso continuativo, l’OCR e le conversioni, è preferibile scegliere 4 GB di RAM; con carichi simultanei ne servirà di più.

È necessario un dominio?

No. Il servizio può essere aperto tramite indirizzo IP o tunnel SSH. Il dominio serve per avere un indirizzo permanente e comodo e per configurare correttamente HTTPS.

È supportato l’OCR in russo?

Sì. È necessario aggiungere il file rus.traineddata alla directory di Tesseract e montarlo nel container.