Accedi
Accedi

Protocollo iSCSI: come funziona, a cosa serve e come configurarlo

Protocollo iSCSI: come funziona, a cosa serve e come configurarlo
Hostman Team
Technical writer
Server
13.10.2025
Reading time: 4 min

iSCSI (Internet Small Computer System Interface) è un protocollo di archiviazione dei dati che consente di eseguire comandi SCSI tramite una connessione di rete, solitamente Ethernet. In questo articolo spiegheremo come funziona iSCSI, le sue caratteristiche principali, i vantaggi e come configurarlo passo dopo passo.

Come funziona iSCSI

Per comprendere il funzionamento di iSCSI, è necessario conoscere i suoi componenti principali: initiator e target.

  • Gli initiator sono i sistemi che avviano una connessione iSCSI.

  • I target sono i sistemi che accettano la connessione.

I dispositivi di archiviazione fungono da target ai quali gli initiator si connettono.

La connessione si basa sul protocollo TCP/IP. iSCSI gestisce i comandi SCSI, li incapsula in pacchetti di dati e li trasferisce tra host locali e remoti. Il sistema ricevente elabora i pacchetti, estrae i comandi SCSI e presenta il dispositivo remoto come un disco locale, che può essere formattato e gestito normalmente.

Autenticazione e trasferimento dei dati

In iSCSI, gli initiator e i target sono identificati da nomi univoci:

IQN (iSCSI Qualified Name) e EUI (Extended Unique Identifier), quest’ultimo usato principalmente con IPv6.

  • Esempio di IQN:
    iqn.2003-02.com.site.iscsi:name23
    • 2003-02 indica anno e mese di registrazione del dominio.

    • Il dominio è scritto in ordine inverso: site.com → com.site.

    • name23 è il nome univoco assegnato all’host iSCSI.

  • Esempio di EUI:
    eui.fe9947fff075cee0 Si tratta di un valore esadecimale nel formato IEEE:
    • I primi 24 bit identificano la rete o l’organizzazione.

    • I restanti 40 bit identificano in modo univoco l’host all’interno di quella rete.

Ogni sessione iSCSI si svolge in due fasi:

  1. Autenticazione tramite TCP.

  2. Trasferimento dei dati tra l’initiator e il dispositivo di archiviazione su una singola connessione.

Quando il trasferimento termina, la sessione viene chiusa con il comando iSCSI logout.

Gestione degli errori e sicurezza

Per evitare perdite di dati, iSCSI include diversi meccanismi di recupero, come:

  • Ritrasmissione dei pacchetti PDU persi.

  • Ripristino della connessione o riavvio della sessione.

  • Annullamento dei comandi non elaborati.

La sicurezza dei dati è garantita dal protocollo CHAP, che non trasmette le password in chiaro ma utilizza una verifica hash. Inoltre, IPsec può essere utilizzato per crittografare i pacchetti e verificarne l’integrità.

Tipi di implementazione iSCSI

Esistono tre principali modalità di implementazione di iSCSI:

  1. Elaborazione tramite CPU dell’host: tutta l’elaborazione avviene sul processore dell’initiator.

  2. Offload TCP/IP parziale: la maggior parte dei pacchetti viene elaborata dal dispositivo di archiviazione, il resto dall’host.

  3. Offload TCP/IP completo: tutti i pacchetti vengono gestiti direttamente dal dispositivo di archiviazione.

Un’estensione chiamata iSER (iSCSI Extension for RDMA) consente l’uso di RDMA (Remote Direct Memory Access), che permette di accedere direttamente alla memoria remota. Questo approccio consente il trasferimento dei dati senza utilizzare le risorse della CPU, aumentando la velocità e riducendo la latenza.

Vantaggi di iSCSI

iSCSI offre una combinazione di prestazioni elevate e riduzione dei costi, insieme a numerosi vantaggi:

  • Semplicità di implementazione: funziona su reti Ethernet Gigabit standard.

  • Facilità di manutenzione: basato su TCP/IP, non richiede formazione aggiuntiva.

  • Ampia compatibilità: si integra con la maggior parte delle apparecchiature di rete esistenti.

Differenze tra iSCSI SAN e FC SAN

I protocolli iSCSI SAN (Storage Area Network) e FC SAN (Fibre Channel SAN) vengono spesso messi a confronto. Ecco le principali differenze:

Caratteristica

iSCSI SAN

Fibre Channel SAN

Utilizzo della rete esistente

No

Velocità di trasferimento dati

1–100 Gbps

2–32 Gbps

Configurazione su hardware esistente

No

Controllo del flusso dei dati

Nessuna protezione di ritrasmissione

Affidabile

Isolamento della rete

No

 

iSCSI SAN è una soluzione economica e flessibile, poiché utilizza l’infrastruttura di rete esistente. FC SAN, invece, richiede hardware specializzato (switch e adattatori HBA), ma garantisce latenza ridotta e prestazioni più stabili.

Conclusione

Come mostrato nel confronto, ogni protocollo ha i propri punti di forza:

  • iSCSI è ideale quando si desiderano costi ridotti, configurazione semplice e gestione immediata.

  • Fibre Channel è più adatto ad ambienti complessi, che richiedono bassa latenza e scalabilità elevata.
Server
13.10.2025
Reading time: 4 min

Simili

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