Accedi
Accedi

Configurazione di un server DNS BIND

Configurazione di un server DNS BIND
Hostman Team
Redattore tecnico
Sistema: Ubuntu
20.02.2026
Reading time: 9 min

Configurazione di un server DNS BIND

Il DNS (Domain Name System) è un sistema in cui tutti i nomi di dominio dei server sono organizzati secondo una gerarchia specifica. Perché ne abbiamo bisogno? Immagina di dover connetterti a un dispositivo con l’indirizzo IP 91.206.179.207. Potresti inserire questo indirizzo nella riga di comando per ottenere le informazioni necessarie, ma ricordare molte combinazioni numeriche di questo tipo è molto difficile. Per questo motivo sono stati creati server speciali per convertire i nomi di dominio in indirizzi IP. Così, ad esempio, quando inserisci hostman.com nella barra di ricerca del browser, i dati della richiesta vengono inviati a un server DNS, che cerca una corrispondenza nel proprio database. Il server DNS invia quindi l’indirizzo IP necessario al tuo dispositivo e solo allora il browser accede direttamente alla risorsa.

Configurare un DNS proprio consente una configurazione del sistema più flessibile e precisa ed evita la dipendenza da terze parti. In questo articolo vedremo come configurare il DNS utilizzando il nameserver BIND su Ubuntu.

Terminologia

Zona: Una parte della gerarchia DNS ospitata su un server DNS. Definisce i confini entro i quali un server o un gruppo di server è responsabile.

Server root: Server DNS che contengono informazioni sui domini di primo livello (.ru, .com, ecc.).

Dominio: Una parte nominata della gerarchia DNS, un nodo specifico che può includere altri nodi. Gli indirizzi DNS si leggono da destra a sinistra e iniziano con un punto, con i domini separati anch’essi da punti. Ad esempio, il dominio poddomen.domen.ru va letto come .ru.domen.poddomen. Di solito, il nome di dominio riflette la struttura della gerarchia DNS, ma il punto finale viene omesso.

FQDN (Fully Qualified Domain Name): Nome di dominio completo che include i nomi di tutti i domini padre.

Record di risorsa (Resource Record): Un’unità di memorizzazione delle informazioni, ovvero un record che collega un nome a informazioni di servizio. È composto da:

  • Nome (NAME): Il nome o l’indirizzo IP proprietario della zona

  • Time to Live (TTL): Il tempo durante il quale un record viene conservato nella cache DNS prima di essere eliminato

  • Classe (CLASS): Tipo di rete, di solito IN (Internet)

  • Tipo (TYPE): Lo scopo del record

  • Dati (DATA): Informazioni aggiuntive

Record di risorsa comuni

Record A: Associa un nome host a un indirizzo IPv4. Ogni interfaccia di rete può avere un solo record A.

website.com.              520    IN     A      91.206.179.207

Record AAAA: Uguale al record A, ma per IPv6.

CNAME: Record di nome canonico, un alias di un nome reale utilizzato per il reindirizzamento.

MX: Specifica gli host di posta per il dominio. Il campo NAME contiene il dominio di destinazione e il campo DATA contiene la priorità e l’host che riceve la posta.

website.com.             17790   IN      MX      10 mx.website.com.

website.com.             17790   IN      MX      20 mx2.website.com.

NS: Indica il server DNS che gestisce il dominio.

PTR: Associa un indirizzo IP a un nome di dominio, necessario per la risoluzione inversa.

SOA: Descrive le impostazioni principali della zona.

SRV: Contiene gli indirizzi dei server che forniscono servizi interni al dominio, come Jabber.

Requisiti

Per seguire le istruzioni di questo articolo, sono necessari almeno due server Ubuntu nello stesso data center. Qualsiasi di questi server può essere ordinato da Hostman.

Utilizzeremo due server Ubuntu 20.04 come server DNS primario e secondario, rispettivamente ns1 e ns2. Inoltre, ci saranno server aggiuntivi che utilizzeranno i server configurati.

È necessario disporre dei privilegi di superutente su ciascun server.

Installazione di BIND sui server DNS

Useremo bind9 come server DNS. Installare il pacchetto bind9 dal repository Linux:

sudo apt update && sudo apt upgrade -y

sudo apt install bind9

Si consiglia inoltre di installare strumenti di monitoraggio di rete:

sudo apt install dnsutils

Dopo l’installazione, avviare il servizio bind9:

sudo service bind9 start

Il file di configurazione principale del server è /etc/bind/named.conf. Descrive le impostazioni generali ed è solitamente suddiviso in più file per comodità.

named.conf.options

Questo file contiene i parametri generali del server:

options {

       dnssec-validation auto;

       auth-nxdomain no;

       directory "/var/cache/bind";

       recursion no; # disabilita le query ricorsive verso il nameserver

       listen-on {

                    172.16.0.0/16;

                    127.0.0.0/8;   

       };

       forwarders {

           172.16.0.1;

           8.8.8.8; 

       };

};

Per verificare che tutto sia stato inserito correttamente, utilizzare l’utilità named-checkconf:

sudo named-checkconf

Se non ci sono errori, il server BIND inizierà a funzionare.

Server DNS primario

Il server DNS primario memorizza la copia principale del file di zona. Tutte le zone saranno archiviate nella directory /etc/bind/master-zones. Creare la directory:

sudo mkdir /etc/bind/master-zones

Creare un file per descrivere la zona:

sudo touch /etc/bind/master-zones/test.example.com.local.zone

Aggiungere quindi i record SOA, NS e A:

$ttl 3600

$ORIGIN test.example.com.

test.example.com.               IN              SOA  (     

ns.test.example.com.   

abuse.test.example.com. 

                               2022041201

                               10800

                               1200

                               604800

                               3600   )

@                               IN              NS              ns.test.example.com.

@                               IN              NS              ns2.test.example.com.

@                               IN              A                172.16.101.3

ns                              IN               A                172.16.0.5

ns2                             IN              A                172.16.0.6

Eseguire quindi il controllo con l’utilità named-checkzone:

sudo named-checkzone test.example.com. /etc/bind/master-zones/test.example.com.local.zone

named.conf.local

Questo è un altro file incluso nella configurazione principale del server. In esso specifichiamo le zone locali:

zone "test.example.com." {

               type master;

               file "/etc/bind/master-zones/test.example.com.local.zone";

};

Dopo aver inserito i dati necessari, verificare la configurazione e riavviare bind9 (l’opzione -z controlla i file di zona):

sudo named-checkconf

sudo named-checkconf -z

sudo service bind9 restart

sudo service bind9 status

Configurazione delle view

Le view consentono una gestione flessibile della risoluzione dei nomi da diverse sottoreti. Specificare nel file /etc/bind/named.conf:

include "/etc/bind/named.conf.options";

acl "local" { 172.16.0.0/16; };

view "local" {

               include "/etc/bind/named.conf.local";

               match-clients { local; };

};

Riavviare bind9:

sudo service bind9 restart

Dopo il riavvio del server, è possibile richiedere il record SOA del server 172.16.0.5 da un altro computer della rete locale:

dig @172.16.0.5 -t SOA test.example.com

A questo punto, la configurazione del server DNS primario è completa.

Conclusione

In questa guida abbiamo configurato il DNS su un server Ubuntu utilizzando il pacchetto bind9. Dopo aver seguito tutti i passaggi, i due server DNS configurati possono essere utilizzati per la risoluzione dei nomi nella rete. Per utilizzare i server DNS personalizzati, configurare gli altri server affinché utilizzino 172.16.0.5 e 172.16.0.6 come server DNS.

Questa configurazione può fungere da base per ulteriori miglioramenti, come la configurazione di un server di posta elettronica.

Sistema: Ubuntu
20.02.2026
Reading time: 9 min

Simili

Piattaforma Docker

Docker Compose: Guida Completa all’Installazione e all’Utilizzo

Docker Compose ha cambiato radicalmente il modo in cui gli sviluppatori affrontano le applicazioni containerizzate, in particolare quando devono coordinare servizi che dipendono gli uni dagli altri. Questo strumento sostituisce la gestione manuale dei container con un flusso di lavoro strutturato basato su YAML, consentendo ai team di definire intere architetture applicative in un unico file di configurazione. Negli ambienti Ubuntu, ciò si traduce in distribuzioni riproducibili, scalabilità semplificata e riduzione dell’overhead operativo. Questa guida offre una prospettiva aggiornata sull’installazione e sull’utilizzo di Docker Compose, fornendo approfondimenti pratici sulla sua implementazione reale. Prerequisiti Prima di iniziare questo tutorial, assicurati di avere quanto segue: Distribuire un’istanza di server cloud Ubuntu su Hostman. Disporre di un account utente con privilegi sudo o accesso root, necessari per installare pacchetti e gestire Docker. Avere Docker installato e in esecuzione sul server, poiché Docker Compose funziona sopra Docker Engine. Perché Docker Compose è importante Le applicazioni moderne spesso includono componenti interconnessi come API, database e livelli di caching. Gestire questi elementi singolarmente tramite comandi Docker diventa rapidamente complesso man mano che l’architettura cresce. Docker Compose risolve questo problema permettendo agli sviluppatori di dichiarare tutti i servizi, le reti e i requisiti di storage in un file docker-compose.yml. Questo approccio garantisce coerenza tra gli ambienti, sia che si lavori su una macchina Ubuntu locale sia su un server cloud. Ad esempio, considera un’applicazione web composta da un backend Node.js, un database PostgreSQL e una cache Redis. Senza Docker Compose, ogni componente richiederebbe un comando docker run separato con parametri di rete precisi. Con Compose, queste relazioni vengono definite una sola volta, consentendo l’avvio e l’arresto dell’intero stack con un singolo comando. Installazione di Docker Compose Segui i passaggi seguenti per installare Docker Compose sul tuo sistema Ubuntu. Passaggio 1: verificare che Docker Engine sia installato e in esecuzione Docker Compose funziona come un’estensione di Docker, quindi verifica lo stato del servizio: sudo systemctl status docker Se non è attivo, avvialo con: sudo systemctl start docker Passaggio 2: aggiornare i pacchetti di sistema Aggiorna l’elenco dei pacchetti per assicurarti di avere accesso alle versioni più recenti del software: sudo apt-get update Passaggio 3: installare le utility di base Per garantire una comunicazione sicura con i repository Docker, sono necessari i seguenti pacchetti: sudo apt-get install ca-certificates curl Passaggio 4: configurare la chiave GPG di Docker Autentica i pacchetti Docker aggiungendo la relativa chiave crittografica: sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc Questo passaggio garantisce che i pacchetti non siano stati alterati durante il download. Passaggio 5: aggiungere il repository Docker Aggiungi il repository Docker in base alla versione di Ubuntu in uso: echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null Il comando rileva automaticamente la versione del sistema tramite VERSION_CODENAME. Passaggio 6: installare il plugin Docker Compose Aggiorna i repository e installa l’estensione Compose: sudo apt update sudo apt-get install docker-compose-plugin Passaggio 7: verificare l’installazione Conferma che Docker Compose sia stato installato correttamente: docker compose version Esempio di output: Docker Compose version v2.33.0 Creare un progetto Docker Compose pratico Per dimostrare le funzionalità di Docker Compose, distribuiamo un server web utilizzando Nginx. 1. Inizializzare la directory del progetto Crea un’area di lavoro dedicata: mkdir ~/compose-demo && cd ~/compose-demo 2. Definire i servizi in docker-compose.yml Crea il file di configurazione: nano docker-compose.yml Inserisci il seguente contenuto: services:   web:     image: nginx:alpine     ports:       - "8080:80"     volumes:       - ./app:/usr/share/nginx/html Spiegazione: services: elemento radice che dichiara i container web: nome personalizzato del servizio image: utilizza l’immagine Nginx basata su Alpine per un ingombro ridotto ports: mappa la porta 8080 dell’host sulla porta 80 del container volumes: sincronizza la directory locale app con la root web del container 3. Creare il contenuto web Costruisci la struttura HTML: mkdir app nano app/index.html Aggiungi il seguente codice HTML: <!DOCTYPE html> <html lang="en"> <head>   <meta charset="UTF-8">   <title>Docker Compose Test</title> </head> <body>   <h1>Hello from Docker Compose!</h1> </body> </html> Orchestrazione dei container: dall’avvio all’arresto 1. Avviare i servizi in modalità detached docker compose up -d Docker Compose scaricherà automaticamente l’immagine Nginx se mancante e configurerà la rete. 2. Verificare lo stato dei container docker compose ps -a 3. Accedere all’applicazione web Visita http://localhost:8080 in locale oppure http://<SERVER_IP>:8080 sui server remoti. La pagina di test dovrebbe visualizzare correttamente il contenuto HTML. 4. Diagnosticare i problemi tramite i log In caso di problemi, ispeziona i log del container: docker compose logs web 5. Arresto e pulizia corretti Arresta temporaneamente i container: docker compose stop Rimuovi tutte le risorse del progetto: docker compose down Riferimento comandi: oltre le operazioni di base I seguenti comandi migliorano la gestione dei container: docker compose up --build – Ricostruisce le immagini prima dell’avvio docker compose pause – Mette in pausa i container senza terminarli docker compose top – Mostra i processi in esecuzione nei container docker compose config – Valida e visualizza la configurazione finale docker compose exec – Esegue comandi nei container attivi(ad esempio, docker compose exec web nginx -t per testare la configurazione di Nginx) Conclusione Docker Compose trasforma l’orchestrazione di applicazioni multi-container da un’attività manuale e complessa a un processo strutturato, ripetibile ed efficiente. Seguendo i passaggi descritti — installazione di Docker Compose, definizione dei servizi in YAML e utilizzo dei comandi essenziali — è possibile gestire applicazioni complesse con sicurezza e controllo.
15 January 2026 · 6 min to read
Linguaggio di scripting PHP

Come installare PHP e PHP-FPM su Ubuntu 24.04

In questa guida descriviamo come installare PHP e PHP-FPM su Ubuntu 24.04. PHP, acronimo di Hypertext Preprocessor, è un linguaggio ampiamente utilizzato e open source, principalmente per lo sviluppo web. PHP-FPM è l’implementazione FastCGI consigliata per PHP, particolarmente utile per siti web ad alto traffico. Al termine di questa guida, il tuo server sarà pronto per eseguire PHP. Prima di iniziare, consulta il nostro tutorial su come creare un server su Ubuntu. Prerequisiti Prima di iniziare, assicurati di avere: Ubuntu 24.04 LTS installato sul server Un account utente con privilegi sudo Conoscenze di base sull'uso del terminale Una connessione Internet stabile per scaricare i pacchetti necessari Per assicurarti che il sistema sia aggiornato, esegui i seguenti comandi: sudo apt updatesudo apt upgrade Installare Apache Installa il server web Apache con il comando: sudo apt install apache2 Installare PHP Inizia installando il pacchetto PHP su Ubuntu 24.04. Apri un terminale sul tuo sistema Ubuntu. Questa operazione include anche i moduli comuni: sudo apt install php Questo comando installa il pacchetto principale di PHP, l'interfaccia a riga di comando e le librerie comuni. Verifica che l’installazione sia andata a buon fine con: php -v Installare le estensioni PHP Le estensioni PHP aggiungono funzionalità specifiche. Installa alcune estensioni comuni con: sudo apt install php-curl php-mbstring php-xml Descrizioni rapide: php-mysql: consente la connessione a database MySQL php-gd: permette la manipolazione delle immagini php-curl: consente la comunicazione con altri server php-mbstring: supporta le stringhe multibyte php-xml: supporta il formato XML php-zip: supporta i file ZIP Puoi installare altre estensioni a seconda delle esigenze del tuo progetto. Per cercarle: apt-cache search php- Installare e configurare PHP-FPM PHP-FPM è fondamentale per gestire siti web con molto traffico. Per installarlo e configurarlo: Installa il pacchetto: sudo apt install php-fpm Avvia il servizio PHP-FPM (il numero di versione può variare): sudo systemctl start php8.3-fpm Abilita PHP-FPM all'avvio: sudo systemctl enable php8.3-fpm Verifica che PHP-FPM sia attivo: systemctl status php8.3-fpm Dovresti visualizzare uno stato "Active (running)", il che conferma che PHP-FPM è in esecuzione correttamente. Verificare PHP e PHP-FPM Per assicurarti che PHP e PHP-FPM funzionino correttamente, crea un file di test e servilo tramite il server web, in questo caso Apache: Genera un file di info PHP. Per mostrare le impostazioni PHP con la funzione phpinfo(): mkdir -p /var/www/htmlecho "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php Configura Apache per PHP-FPM. Rendi Apache compatibile con PHP-FPM modificando il file di configurazione di Apache (di solito /etc/apache2/sites-available/000-default.conf) e aggiungendo: <FilesMatch \.php$>   SetHandler "proxy:unix:/var/run/php/php8.3-fpm.sock|fcgi://localhost/"</FilesMatch> Ricorda di adattare il numero di versione di PHP e il percorso del socket alle impostazioni del tuo server. Attiva PHP e PHP-FPM. Abilita PHP e PHP-FPM con i seguenti comandi: sudo apt install libapache2-mod-phpsudo a2enmod proxy_fcgi setenvif Riavvia Apache. Applica le modifiche riavviando Apache: sudo systemctl restart apache2 Accedi alla pagina di info PHP. Apri il browser e visita: http://[indirizzo_ip_del_server]/info.php Sostituisci [indirizzo_ip_del_server] con l’IP del server o il nome di dominio. Vedrai i dettagli della tua installazione PHP. Installare più versioni di PHP Per alcuni progetti potresti aver bisogno di eseguire applicazioni diverse, ciascuna con requisiti PHP differenti. Ecco come gestire e utilizzare più versioni di PHP su Ubuntu 24.04: Aggiungi il repository PHP: sudo apt install software-properties-commonsudo add-apt-repository ppa:ondrej/php && sudo apt update Installa le versioni PHP desiderate: sudo apt install php8.1 php8.1-fpm Imposta la versione PHP da usare con update-alternatives: sudo update-alternatives --set php /usr/bin/php8.1 Se utilizzi più versioni PHP, assicurati che il tuo web server punti al socket PHP-FPM corretto per ciascun sito o applicazione. Sicurezza di PHP e PHP-FPM: Best practice Come sviluppatore web, conosci l'importanza di integrare PHP e PHP-FPM in applicazioni sicure e robuste. Ecco alcune misure di sicurezza fondamentali da adottare: 1. Mantieni aggiornati PHP e PHP-FPM Assicurati che PHP e PHP-FPM siano sempre aggiornati. Gli aggiornamenti regolari correggono vulnerabilità note e migliorano la sicurezza complessiva del sistema. 2. Configura PHP in modo sicuro Disattiva le funzioni potenzialmente pericolose nel file php.ini, come exec, shell_exec ed eval. Limita l'accesso ai file usando la direttiva open_basedir. Imposta display_errors su Off in ambienti di produzione per evitare fughe di informazioni. Limita la dimensione degli upload e il tempo di esecuzione degli script. Fai girare PHP con un utente dedicato a bassa privilegi. 3. Usa un sistema sicuro per la segnalazione degli errori In produzione, imposta display_errors su Off e log_errors su On, per registrare gli errori in modo sicuro senza mostrarli agli utenti. 4. Valida gli input Valida sempre i dati ricevuti dagli utenti. Utilizza query preparate per proteggerti da attacchi SQL injection. 5. Proteggi la configurazione di PHP-FPM PHP-FPM dovrebbe essere eseguito da un utente dedicato con permessi minimi. Limita l'accesso al socket o alla porta di comunicazione solo all'applicazione web. 6. Abilita open_basedir Utilizza open_basedir per limitare l'accesso di PHP a directory specifiche, prevenendo accessi indesiderati a file di sistema. 7. Usa HTTPS Assicurati che il tuo sito utilizzi solo connessioni HTTPS, proteggendo così tutte le comunicazioni dagli attacchi più comuni. Conclusione Con questa guida, hai installato con successo PHP e PHP-FPM su Ubuntu 24.04. Il tuo server è ora pronto per eseguire applicazioni web dinamiche. Ricorda di mantenere il sistema e i pacchetti aggiornati per garantire sicurezza e prestazioni ottimali. Se ti è stata utile questa guida, dai un’occhiata ai nostri Cloud Server per migliorare il tuo workflow nel cloud!
10 July 2025 · 5 min to read
Sistema: Ubuntu

Come installare VNC su Ubuntu

Se hai bisogno di interagire con un server remoto tramite interfaccia grafica, puoi usare la tecnologia VNC. VNC (Virtual Network Computing) permette agli utenti di stabilire una connessione remota a un server tramite rete. Funziona con un'architettura client-server e utilizza il protocollo RFB per trasmettere immagini dello schermo e dati di input (tastiera e mouse). VNC supporta diversi sistemi operativi, tra cui Ubuntu, Windows, macOS e altri. Un ulteriore vantaggio è che consente a più utenti di connettersi contemporaneamente, utile per il lavoro collaborativo o sessioni formative. In questa guida spieghiamo come installare VNC su Ubuntu usando come esempio un server cloud Hostman con Ubuntu 22.04. Passaggio 1: Prepararsi all’installazione di VNC Prima di iniziare l’installazione sul server e sulla macchina locale, assicurati di avere: Un server con Ubuntu 22.04. In questa guida useremo un Server Cloud Hostman con configurazione hardware minima. Un utente con privilegi sudo. L’installazione va eseguita come utente con diritti amministrativi. Un ambiente desktop a scelta. È necessario scegliere un ambiente desktop che verrà utilizzato per interagire con il server remoto dopo aver installato il sistema sia sul server che sulla macchina locale. Un computer con un client VNC installato. Attualmente, l’unico modo per interagire con un server Ubuntu 22.04 è tramite console. Per gestirlo da remoto con interfaccia grafica, occorre installare sia un ambiente desktop che VNC. Ecco le opzioni disponibili. Server VNC: TightVNC Server. Tra i più usati per Ubuntu, facile da configurare e performante. RealVNC Server. Soluzione commerciale per accedere a distanza a server Linux, inclusi Ubuntu, Debian, Fedora, Arch Linux e altri. Ambienti desktop: Xfce. Un ambiente desktop leggero e veloce, ideale per sessioni remote tramite VNC. Utilizza meno risorse rispetto ad ambienti desktop più pesanti, rendendolo una scelta eccellente per server e macchine virtuali. GNOME. L'ambiente desktop predefinito di Ubuntu, con un'interfaccia moderna e intuitiva. Può essere usato con VNC, ma consuma più risorse rispetto a Xfce. KDE Plasma. Un altro ambiente desktop popolare che offre numerose funzionalità e un design accattivante. La scelta dipende da esigenze e risorse disponibili. TightVNC e Xfce sono ideali per sessioni stabili su Ubuntu senza richiedere grandi risorse. Nel passaggio successivo vedremo come installarli. Passaggio 2: Installare l’ambiente desktop e il server VNC Collegati al server come utente con diritti amministrativi. Aggiorna l'elenco dei pacchetti dai repository sudo apt update Installa l’ambiente desktop sudo apt install xfce4 xfce4-goodies Il primo pacchetto installa l'ambiente desktop Xfce di base, mentre il secondo include applicazioni e plugin aggiuntivi per Xfce, che sono opzionali. Installa TightVNC sudo apt install tightvncserver Avvia il server VNC vncserver Questo comando inizializza una nuova sessione VNC, assegnandole un numero specifico come :1 per la prima sessione, :2 per la seconda, e così via. Ogni numero di sessione corrisponde a una porta di visualizzazione (es. :1 corrisponde alla porta 5901). In questo modo è possibile avviare più sessioni VNC contemporaneamente sulla stessa macchina, ciascuna con una porta diversa. Durante la prima configurazione, il comando ti chiederà di impostare una password, necessaria per accedere all’interfaccia grafica del server. Imposta password in sola visualizzazione (opzionale) Dopo la password principale, ti verrà chiesto se desideri configurare una password in modalità sola visualizzazione. Questa modalità consente agli utenti di visualizzare il desktop remoto senza possibilità di interazione, utile per presentazioni o accessi con restrizioni. Se in seguito desideri modificare le password impostate, esegui: vncpasswd Hai ora una sessione VNC attiva. Nel passaggio successivo configureremo il VNC per avviare Ubuntu con l’ambiente desktop installato. Passaggio 3: Configurare il server VNC Il server VNC deve sapere quale ambiente desktop avviare. Per impostarlo, è necessario modificare un file di configurazione specifico. Ferma eventuali sessioni attive Prima di effettuare modifiche, interrompi eventuali istanze attive del server VNC. In questa guida interrompiamo l’istanza sulla porta 5901: vncserver -kill :1 Qui :1 è il numero di sessione associato alla porta 5901. Fai una copia del file di configurazione Prima di modificare il file, creane una copia di backup: mv ~/.vnc/xstartup ~/.vnc/xstartup.bak Modifica il file Apri il file in un editor di testo: nano ~/.vnc/xstartup Sostituisci il contenuto con il seguente: #!/bin/bashxrdb $HOME/.Xresourcesstartxfce4 & #!/bin/bash: questa linea è detta "shebang" e indica che lo script deve essere eseguito con la shell Bash. xrdb $HOME/.Xresources: legge le impostazioni dal file .Xresources, dove sono salvate preferenze grafiche come colori, font, cursori e opzioni tastiera. startxfce4 &: avvia l'ambiente desktop Xfce. Rendi eseguibile il file chmod +x ~/.vnc/xstartup Avvia il server con restrizione localhost vncserver -localhost L'opzione -localhost limita le connessioni al solo host locale (cioè il server stesso), impedendo accessi remoti da altre macchine. Tuttavia, potrai comunque connetterti dal tuo computer tramite tunnel SSH, che verrà riconosciuto come connessione locale dal server VNC. Ora la configurazione del server VNC è completa. Passaggio 4: Installare il client VNC e connettersi al server Vediamo ora come installare un client VNC su un computer Windows 11. Client disponibili: RealVNC Viewer. Client ufficiale RealVNC, compatibile con Windows, macOS, Linux. TightVNC Viewer. Gratuito e semplice da usare (Windows e Linux). UltraVNC. Gratuito con funzionalità avanzate per Windows. In questa guida useremo TightVNC Viewer. Scarica e installa TightVNC Viewer Visita il sito ufficiale di TightVNC, scarica l'installer ed eseguilo. Nella finestra di installazione, clicca su "Next" e accetta il contratto di licenza. Poi seleziona la modalità di installazione personalizzata e disattiva l’installazione del server VNC, come mostrato nell'immagine qui sotto. Clicca due volte su "Next" e completa l’installazione del client VNC sul tuo computer locale. Configura un tunnel SSH Apri PowerShell su Windows e inserisci: ssh -L 56789:localhost:5901 -C -N -l nome_utente indirizzo_IP_server Assicurati che OpenSSH sia installato sul computer locale. Se non lo è, consulta la documentazione Microsoft per installarlo. Questo comando crea un tunnel SSH che inoltra la connessione dal computer locale al server remoto tramite una connessione sicura, facendo credere a VNC che la connessione provenga dallo stesso server. Ecco una spiegazione dei parametri utilizzati: -L configura il port forwarding SSH, reindirizzando la porta del computer locale all'host e alla porta del server specificati. In questo esempio, scegliamo la porta 56789 perché non è utilizzata da altri servizi. -C abilita la compressione dei dati prima della trasmissione tramite SSH. -N indica a SSH di non eseguire comandi dopo aver stabilito la connessione. -l specifica il nome utente per la connessione al server. Connettersi con TightVNC Viewer Avvia TightVNC Viewer e inserisci il seguente indirizzo nel campo di connessione: localhost:56789 Ti verrà chiesto di inserire la password configurata durante il primo avvio del server VNC. Dopo aver inserito la password, sarai connesso al server VNC e verrà visualizzato l'ambiente desktop Xfce. Chiudi il tunnel SSH Per chiudere il tunnel SSH, torna alla finestra di PowerShell o della riga di comando sul tuo computer locale e premi CTRL+C. Conclusione In questa guida hai imparato come configurare VNC su Ubuntu 22.04 passo dopo passo. Abbiamo usato TightVNC Server, TightVNC Viewer e Xfce come ambiente grafico. Speriamo che la tecnologia VNC ti aiuti a gestire i server in modo più semplice ed efficiente. Se hai bisogno di aiuto nella creazione di un server Ubuntu, consulta la nostra guida dettagliata.
10 July 2025 · 7 min to read

Hai domande,
commenti o dubbi?

I nostri professionisti sono disponibili per assisterti in ogni momento,
che tu abbia bisogno di aiuto o non sappia da dove iniziare.
Inviaci un'email
Hostman's Support