Iniciar sesión
Iniciar sesión

Protocolo iSCSI: cómo funciona, para qué sirve y cómo configurarlo

Protocolo iSCSI: cómo funciona, para qué sirve y cómo configurarlo
Hostman Team
Technical writer
Servidor
13.10.2025
Reading time: 5 min

iSCSI (Internet Small Computer System Interface) es un protocolo de almacenamiento de datos que permite ejecutar comandos SCSI a través de una conexión de red, normalmente Ethernet. En este artículo explicamos cómo funciona iSCSI, sus ventajas y características, y cómo configurarlo correctamente.

Cómo funciona iSCSI

Para entender el funcionamiento de iSCSI, debemos conocer sus principales componentes: los iniciadores y los destinos (targets).

  • Los iniciadores son los hosts que inician una conexión iSCSI.

  • Los destinos son los hosts que aceptan esa conexión.

Los dispositivos de almacenamiento actúan como destinos a los que los iniciadores se conectan.

La conexión se establece mediante TCP/IP, mientras que iSCSI encapsula los comandos SCSI en paquetes de datos. Estos paquetes se transmiten entre los hosts locales y remotos. En el extremo receptor, iSCSI procesa los paquetes, separa los comandos SCSI y hace que el sistema operativo perciba el almacenamiento remoto como un disco local, que puede formatearse y administrarse de manera habitual.

Autenticación y transmisión de datos

En iSCSI, los iniciadores y los destinos se identifican mediante nombres únicos:

IQN (iSCSI Qualified Name) y EUI (Extended Unique Identifier), este último utilizado principalmente con IPv6.

  • Ejemplo de IQN:
    iqn.2003-02.com.site.iscsi:name23
    • 2003-02 indica el año y el mes en que se registró el dominio.

    • El dominio aparece en orden inverso: site.com → com.site.

    • name23 es el identificador único del host iSCSI.

  • Ejemplo de EUI:
    eui.fe9947fff075cee0
    Este valor hexadecimal sigue el formato IEEE:
    • Los 24 primeros bits identifican la red o la empresa.

    • Los 40 bits restantes identifican de forma única el host dentro de esa red.

Cada sesión de iSCSI tiene dos fases:

  1. Autenticación sobre TCP.

  2. Intercambio de datos entre el iniciador y el dispositivo de almacenamiento, a través de una única conexión.

Una vez finalizada la transferencia, la sesión se cierra mediante el comando iSCSI logout.

Gestión de errores y seguridad

Para prevenir la pérdida de datos, iSCSI incorpora varios mecanismos de recuperación, entre ellos:

  • Reenvío de paquetes PDU perdidos.

  • Recuperación de conexión o reinicio de sesión.

  • Cancelación de comandos no procesados.

La seguridad de los datos se garantiza mediante el protocolo CHAP, que no transmite contraseñas en texto plano, sino que utiliza comparación de hash. Además, puede aplicarse IPsec para cifrar los paquetes y verificar su integridad.

Tipos de implementación de iSCSI

Existen tres tipos principales de implementación de iSCSI:

  1. Procesamiento por la CPU del host: toda la carga es gestionada por la CPU del iniciador.

  2. Offload parcial de TCP/IP: la mayoría de los paquetes son procesados por el dispositivo de almacenamiento, y el resto por el host.

  3. Offload completo de TCP/IP: todo el procesamiento se realiza en el dispositivo de almacenamiento.

Tipos de implementación de iSCSI

Existen tres tipos principales de implementación de iSCSI:

  1. Procesamiento por la CPU del host: toda la carga es gestionada por la CPU del iniciador.

  2. Offload parcial de TCP/IP: la mayoría de los paquetes son procesados por el dispositivo de almacenamiento, y el resto por el host.

  3. Offload completo de TCP/IP: todo el procesamiento se realiza en el dispositivo de almacenamiento.

Existe una extensión denominada iSER (iSCSI Extension for RDMA), que utiliza RDMA (Remote Direct Memory Access) para acceder directamente a la memoria remota. Esto permite transferir datos sin utilizar recursos de la CPU de los nodos de red, reduciendo la carga del sistema y aumentando la velocidad.

Ventajas de iSCSI

El iSCSI ofrece una excelente combinación de rendimiento y eficiencia de costes, junto con:

  • Simplicidad de implementación: funciona sobre redes Ethernet Gigabit estándar.

  • Fácil mantenimiento: basado en TCP/IP, no requiere formación adicional.

  • Amplia compatibilidad: puede integrarse con la mayoría del hardware de red existente.

Diferencias entre iSCSI SAN y FC SAN

Los protocolos iSCSI SAN (Storage Area Network) y FC SAN (Fibre Channel SAN) suelen compararse. A continuación se resumen sus principales diferencias:

Característica

iSCSI SAN

Fibre Channel SAN

Uso de red existente

No

Velocidad de transferencia

1–100 Gbps

2–32 Gbps

Configuración en hardware existente

No

Control de flujo de datos

Sin retransmisión de paquetes

Fiable

Aislamiento de red

No

 

El iSCSI SAN es una solución más económica, ya que aprovecha la infraestructura de red existente. Por el contrario, el FC SAN requiere hardware especializado (como switches y adaptadores HBA), pero ofrece menor latencia y mayor fiabilidad.

Conclusión

Como se observa en la comparación, cada protocolo tiene sus propias ventajas:

  • iSCSI es ideal cuando la eficiencia de costes, la facilidad de configuración y la simplicidad de gestión son prioritarias.
  • Fibre Channel es más adecuado para entornos complejos, que requieren baja latencia y alta escalabilidad.
Servidor
13.10.2025
Reading time: 5 min

Similares

Sistema Ubuntu

Cómo instalar VNC en Ubuntu

Si necesitas interactuar con un servidor remoto mediante una interfaz gráfica, puedes utilizar la tecnología VNC. VNC (Virtual Network Computing) permite a los usuarios establecer una conexión remota con un servidor a través de una red. Funciona con una arquitectura cliente-servidor y utiliza el protocolo RFB para transmitir imágenes de pantalla y datos de entrada (como teclado o ratón). VNC es compatible con varios sistemas operativos, incluidos Ubuntu, Windows, macOS y otros. Otra ventaja de VNC es que permite que varios usuarios se conecten simultáneamente, lo cual resulta útil para colaboraciones en proyectos o sesiones de formación. En esta guía, explicamos cómo instalar VNC en Ubuntu utilizando como ejemplo un servidor en la nube de Hostman con Ubuntu 22.04. Paso 1: Preparativos para instalar VNC Antes de comenzar el proceso de instalación en el servidor y el equipo local, hay algunos requisitos previos: Un servidor con Ubuntu 22.04. En este tutorial, utilizamos un servidor en la nube de Hostman con configuración mínima. Un usuario con privilegios sudo. Debes realizar la instalación como usuario regular con derechos de administrador. Seleccionar una interfaz gráfica. Necesitas elegir un entorno de escritorio para interactuar con el servidor una vez instalado. Un ordenador con un cliente VNC instalado. Actualmente, la única forma de comunicarse con un servidor alquilado que ejecuta Ubuntu 22.04 es mediante consola. Para habilitar la administración remota con GUI, debes instalar un entorno de escritorio junto con VNC en el servidor. A continuación, se enumeran algunos servidores VNC y entornos de escritorio disponibles para instalar en un servidor Ubuntu. Servidores VNC: TightVNC Server. Uno de los servidores VNC más populares para Ubuntu. Fácil de configurar y con buen rendimiento. RealVNC Server. RealVNC ofrece una solución comercial para acceso remoto en distribuciones como Ubuntu, Debian, Fedora, Arch Linux y otras. Entornos de escritorio: Xfce. Entorno de escritorio ligero y rápido, ideal para sesiones remotas. Utiliza menos recursos que otros entornos, lo que lo hace ideal para servidores o máquinas virtuales. GNOME. Entorno predeterminado de Ubuntu, con una interfaz moderna y amigable. Compatible con VNC, aunque consume más recursos que Xfce. KDE Plasma. Otro entorno popular con muchas funciones y diseño atractivo. La elección del servidor VNC y del entorno de escritorio dependerá de tus necesidades y recursos disponibles. TightVNC y Xfce son excelentes para sesiones remotas estables, ya que no requieren muchos recursos. En el siguiente paso, explicaremos cómo instalarlos en el servidor en detalle. Paso 2: Instalar el entorno de escritorio y el servidor VNC Conéctate al servidor e inicia sesión como usuario regular con derechos de administrador. Actualizar la lista de paquetes Una vez dentro del servidor, ejecuta el siguiente comando para actualizar los paquetes desde los repositorios conectados: sudo apt update Instalar el entorno de escritorio A continuación, instala el entorno de escritorio que hayas seleccionado. Para instalar Xfce, usa el siguiente comando: sudo apt install xfce4 xfce4-goodies El primer paquete proporciona el entorno básico de Xfce, mientras que el segundo incluye aplicaciones y complementos adicionales (opcionales). Instalar TightVNC Server Para instalar TightVNC, introduce: sudo apt install tightvncserver Iniciar el servidor VNC Una vez completada la instalación, inicializa el servidor VNC ejecutando: vncserver Este comando crea una nueva sesión VNC con un número de sesión específico, como :1 para la primera sesión, :2 para la segunda, etc. Este número corresponde a un puerto de visualización (por ejemplo, el puerto 5901 corresponde a :1). Esto permite ejecutar múltiples sesiones VNC en la misma máquina. Durante la primera configuración, el sistema te pedirá que establezcas una contraseña, que será necesaria para conectarse a la interfaz gráfica del servidor. Establecer una contraseña de solo visualización (opcional) Después de establecer la contraseña principal, se te preguntará si deseas configurar una contraseña de solo visualización. Este modo permite ver el escritorio remoto sin realizar cambios, lo que es útil para demostraciones o accesos restringidos. Si necesitas cambiar las contraseñas establecidas anteriormente, usa el siguiente comando: vncpasswd Ahora ya tienes una sesión VNC activa. En el siguiente paso, configuraremos VNC para que cargue el entorno de escritorio de Ubuntu al iniciar. Paso 3: Configurar el servidor VNC El servidor VNC necesita saber qué entorno de escritorio debe cargar. Para ello, editaremos un archivo de configuración específico. Detener instancias activas de VNC Antes de configurar, detén cualquier instancia activa del servidor VNC. En este ejemplo, detenemos la sesión en el puerto de visualización 5901: vncserver -kill :1 Aquí, :1 es el número de sesión asociado al puerto 5901. Crear una copia de seguridad del archivo de configuración Antes de editar el archivo, crea una copia de seguridad con: mv ~/.vnc/xstartup ~/.vnc/xstartup.bak Editar el archivo de configuración Abre el archivo de configuración con un editor de texto: nano ~/.vnc/xstartup Sustituye su contenido por lo siguiente: #!/bin/bashxrdb $HOME/.Xresourcesstartxfce4 & #!/bin/bash: Indica que el script debe ejecutarse con el shell Bash. xrdb $HOME/.Xresources: Carga las preferencias gráficas almacenadas en ese archivo. startxfce4 &: Inicia el entorno de escritorio Xfce. Dar permisos de ejecución al archivo Ejecuta el siguiente comando para que el archivo pueda ejecutarse: chmod +x ~/.vnc/xstartup Iniciar el servidor VNC con restricción a localhost Con la configuración lista, inicia el servidor VNC restringiéndolo al host local: vncserver -localhost La opción -localhost impide conexiones remotas directas desde otras máquinas. Sin embargo, podrás conectarte desde tu equipo mediante un túnel SSH. Estas conexiones serán tratadas como locales por el servidor VNC. La configuración del servidor VNC está ahora completa. Paso 4: Instalar el cliente VNC y conectarse al servidor Ahora instalaremos un cliente VNC. En este ejemplo, lo instalaremos en un ordenador con Windows 11. Existen varios clientes VNC compatibles con diferentes sistemas operativos. Algunas opciones son: RealVNC Viewer. Cliente oficial de RealVNC, compatible con Windows, macOS y Linux. TightVNC Viewer. Cliente gratuito y sencillo compatible con Windows y Linux. UltraVNC. Otro cliente gratuito para Windows con funciones avanzadas de administración remota. Para esta guía utilizaremos TightVNC Viewer. Descargar e instalar TightVNC Viewer Ve al sitio web oficial de TightVNC, descarga el instalador y ejecútalo. En la ventana de instalación, haz clic en Next y acepta los términos de la licencia. Luego, selecciona el modo de instalación personalizada y desactiva la opción de instalar el servidor VNC. Haz clic en Next dos veces más y finaliza la instalación. Configurar un túnel SSH para una conexión segura Para cifrar tu acceso remoto al servidor VNC, utiliza SSH para crear un túnel seguro. En tu ordenador con Windows 11, abre PowerShell e introduce el siguiente comando: ssh -L 56789:localhost:5901 -C -N -l nombredeusuario dirección_IP_del_servidor Asegúrate de tener OpenSSH instalado. Si no lo tienes, consulta la documentación de Microsoft para instalarlo. Este comando configura un túnel SSH que redirige la conexión de tu equipo local al servidor remoto a través de una conexión segura, haciendo que el servidor VNC crea que la conexión es local. A continuación explicamos las banderas utilizadas: -L configura el reenvío de puerto SSH, redirigiendo el puerto del equipo local al host y puerto del servidor especificados. En este caso, usamos el puerto 56789 porque no está ocupado por ningún servicio. -C habilita la compresión de datos antes de transmitirlos por SSH. -N indica a SSH que no debe ejecutar comandos una vez establecida la conexión. -l especifica el nombre de usuario que se utilizará para conectar con el servidor. Conectarse con TightVNC Viewer Después de crear el túnel SSH, abre TightVNC Viewer e introduce en el campo de conexión: localhost:56789 Se te pedirá la contraseña que configuraste al iniciar el servidor VNC. Una vez ingresada, te conectarás al servidor VNC y verás el entorno de escritorio Xfce. Cerrar el túnel SSH Para cerrar el túnel, vuelve a la ventana de PowerShell o consola en tu equipo local y presiona CTRL+C. Conclusión Esta guía te ha llevado paso a paso por el proceso de instalación y configuración de VNC en Ubuntu 22.04. Hemos utilizado TightVNC Server como servidor VNC, TightVNC Viewer como cliente y Xfce como entorno de escritorio para la interacción con el servidor. Esperamos que esta tecnología facilite la administración remota de tu servidor, haciendo el proceso más simple y eficiente. Hemos preparado también una guía detallada sobre cómo crear un servidor en Ubuntu en caso de que necesites ayuda adicional con su despliegue.
10 July 2025 · 8 min to read

¿Tienes preguntas,
comentarios o inquietudes?

Nuestros profesionales están disponibles para asistirte en cualquier momento,
ya sea que necesites ayuda o no sepas por dónde empezar.
Hostman's Support