Iniciar sesión
Iniciar sesión

Cómo instalar VNC en Ubuntu

Cómo instalar VNC en Ubuntu
Hostman Team
Redactor técnico
Sistema Ubuntu Servidores
10.07.2025
Reading time: 8 min

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:

  1. Un servidor con Ubuntu 22.04. En este tutorial, utilizamos un servidor en la nube de Hostman con configuración mínima.

Image3

  1. Un usuario con privilegios sudo. Debes realizar la instalación como usuario regular con derechos de administrador.
  2. Seleccionar una interfaz gráfica. Necesitas elegir un entorno de escritorio para interactuar con el servidor una vez instalado.

  3. 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.

  1. 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
  1. 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).

  1. Instalar TightVNC Server

Para instalar TightVNC, introduce:

sudo apt install tightvncserver
  1. 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.

Image6

  1. 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.

Image4

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.

  1. 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

Image1

Aquí, :1 es el número de sesión asociado al puerto 5901.

  1. 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
  1. 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/bash
xrdb $HOME/.Xresources
startxfce4 &
    • #!/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.
  1. Dar permisos de ejecución al archivo

Ejecuta el siguiente comando para que el archivo pueda ejecutarse:

chmod +x ~/.vnc/xstartup
  1. 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.

  1. Descargar e instalar TightVNC Viewer

Ve al sitio web oficial de TightVNC, descarga el instalador y ejecútalo.

Image5

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.

Image2

Haz clic en Next dos veces más y finaliza la instalación.

  1. 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.
  1. 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.

  1. 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.

Sistema Ubuntu Servidores
10.07.2025
Reading time: 8 min

Similares

Entorno Docker

Instalar y usar Docker Compose en Ubuntu: guía completa

Docker Compose ha cambiado de forma fundamental la manera en que los desarrolladores trabajan con aplicaciones contenerizadas, especialmente al coordinar servicios que dependen entre sí. Esta herramienta reemplaza la gestión manual de contenedores por un flujo de trabajo estructurado basado en YAML, lo que permite a los equipos definir arquitecturas completas de aplicaciones en un único archivo de configuración. En entornos Ubuntu, esto se traduce en despliegues reproducibles, escalado simplificado y una reducción del esfuerzo operativo. Esta guía ofrece una perspectiva actualizada sobre la instalación y el uso de Docker Compose, proporcionando una visión más profunda de su implementación práctica. Requisitos previos Antes de comenzar este tutorial, asegúrate de contar con lo siguiente: Implementar una instancia de servidor cloud con Ubuntu en Hostman. Disponer de una cuenta de usuario con privilegios sudo o acceso root para instalar paquetes y administrar Docker. Tener Docker instalado y en ejecución en el servidor, ya que Docker Compose funciona sobre Docker Engine. Por qué Docker Compose es importante Las aplicaciones modernas suelen estar compuestas por múltiples componentes interconectados, como APIs, bases de datos y capas de caché. Gestionar estos elementos individualmente mediante comandos de Docker se vuelve complicado a medida que aumenta la complejidad. Docker Compose soluciona esto permitiendo declarar todos los servicios, redes y requisitos de almacenamiento en un archivo docker-compose.yml. Este enfoque garantiza la consistencia entre entornos, ya sea en una máquina Ubuntu local o en un servidor en la nube. Por ejemplo, una aplicación web compuesta por un backend en Node.js, una base de datos PostgreSQL y una caché Redis. Sin Docker Compose, cada componente requiere un comando docker run independiente con configuraciones de red precisas. Con Compose, estas relaciones se definen una sola vez, permitiendo iniciar y detener toda la aplicación con un solo comando. Instalación de Docker Compose Sigue estos pasos para instalar Docker Compose en tu sistema Ubuntu. Paso 1: Verificar que Docker esté instalado y en ejecución Docker Compose funciona como una extensión de Docker, por lo que primero debes comprobar su estado: sudo systemctl status docker Si el servicio no está activo, inícialo con: sudo systemctl start docker Paso 2: Actualizar los paquetes del sistema Actualiza las listas de paquetes para asegurarte de tener acceso a las versiones más recientes del software: sudo apt-get update Paso 3: Instalar utilidades básicas Para una comunicación segura con los repositorios de Docker, se requieren los siguientes paquetes: sudo apt-get install ca-certificates curl Paso 4: Configurar la clave GPG de Docker Autentica los paquetes de Docker añadiendo su clave criptográfica: 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 Este paso garantiza que los paquetes no hayan sido modificados durante la descarga. Paso 5: Añadir el repositorio de Docker Agrega el repositorio correspondiente a tu versión de Ubuntu: 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 El comando detecta automáticamente la versión del sistema operativo mediante VERSION_CODENAME. Paso 6: Instalar el plugin de Docker Compose Actualiza los repositorios e instala la extensión Compose: sudo apt update sudo apt-get install docker-compose-plugin Paso 7: Validar la instalación Confirma que la instalación se haya realizado correctamente: docker compose version Salida de ejemplo: Docker Compose version v2.33.0 Crear un proyecto práctico con Docker Compose Para demostrar las capacidades de Docker Compose, vamos a desplegar un servidor web utilizando Nginx. 1. Inicializar el directorio del proyecto Crea un espacio de trabajo dedicado: mkdir ~/compose-demo && cd ~/compose-demo 2. Definir los servicios en docker-compose.yml Crea el archivo de configuración: nano docker-compose.yml Inserta el siguiente contenido: services:   web:     image: nginx:alpine     ports:       - "8080:80"     volumes:       - ./app:/usr/share/nginx/html Explicación: services: Elemento raíz que define los contenedores web: Nombre personalizado del servicio image: Imagen de Nginx basada en Alpine con menor consumo de recursos ports: Mapea el puerto 8080 del host al puerto 80 del contenedor volumes: Sincroniza el directorio local app con la raíz web del contenedor 3. Crear el contenido web Construye la estructura HTML: mkdir app nano app/index.html Añade el siguiente contenido: <!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> Orquestación de contenedores: del inicio al apagado 1. Iniciar los servicios en segundo plano docker compose up -d Docker Compose descargará automáticamente la imagen de Nginx si no está disponible y configurará la red. 2. Verificar el estado de los contenedores docker compose ps -a 3. Acceder a la aplicación web Abre http://localhost:8080 localmente o http://<SERVER_IP>:8080 en servidores remotos. La página de prueba debería mostrarse correctamente. 4. Diagnosticar problemas mediante logs Si la página no carga o surgen errores, revisa los logs del contenedor: docker compose logs web 5. Apagado y limpieza ordenados Detener los contenedores temporalmente: docker compose stop Eliminar todos los recursos del proyecto: docker compose down Referencia de comandos: más allá de lo básico Estos comandos amplían la gestión de contenedores: docker compose up --build – Reconstruir las imágenes antes de iniciar los contenedores docker compose pause – Pausar contenedores sin finalizarlos docker compose top – Mostrar los procesos en ejecución dentro de los contenedores docker compose config – Validar y mostrar la configuración final docker compose exec – Ejecutar comandos dentro de contenedores activos(por ejemplo, docker compose exec web nginx -t para probar la configuración de Nginx) Conclusión Docker Compose transforma la orquestación de múltiples contenedores de una tarea manual y compleja en un proceso estructurado, repetible y eficiente. Siguiendo los pasos descritos—instalando Docker Compose, definiendo servicios en YAML y utilizando los comandos esenciales—podrás gestionar aplicaciones complejas con confianza.
14 January 2026 · 6 min to read
Sistema Ubuntu

Cómo instalar PHP y PHP-FPM en Ubuntu 24.04

En esta guía te explicamos cómo instalar PHP y PHP-FPM en Ubuntu 24.04. PHP (acrónimo de Hypertext Preprocessor) es un lenguaje ampliamente utilizado y de código abierto, principalmente en el desarrollo web. PHP-FPM es la implementación FastCGI recomendada para PHP, especialmente útil para sitios web con mucho tráfico. Al final de esta guía, tendrás PHP funcionando en tu servidor. Si aún no has creado un servidor, consulta primero nuestra guía para instalar Ubuntu en uno. Requisitos previos Antes de empezar, asegúrate de contar con lo siguiente: Ubuntu 24.04 LTS instalado en el servidor Una cuenta de usuario con acceso sudo Conocimientos básicos de la línea de comandos Conexión a Internet estable para descargar los paquetes necesarios Actualiza tu sistema ejecutando: sudo apt updatesudo apt upgrade Instalar Apache Instala el servidor web Apache con el siguiente comando: sudo apt install apache2 Instalar PHP Comencemos instalando el paquete de PHP en Ubuntu 24.04: sudo apt install php Este comando instalará el paquete principal de PHP, la interfaz de línea de comandos y bibliotecas comunes.Verifica que PHP se haya instalado correctamente: php -v Instalar extensiones de PHP Las extensiones permiten ampliar las funcionalidades de PHP. Para instalar algunas comunes, ejecuta: sudo apt install php-curl php-mbstring php-xml Descripción breve de cada una: php-mysql: Permite la conexión a bases de datos MySQL php-gd: Permite manipular imágenes php-curl: Permite comunicarse con servidores externos php-mbstring: Soporte para cadenas multibyte php-xml: Soporte para procesamiento XML php-zip: Soporte para archivos ZIP Puedes buscar e instalar otras extensiones que necesites con: apt-cache search php- Instalar y configurar PHP-FPM PHP-FPM es esencial para sitios web con alto tráfico. Para instalarlo y configurarlo: Instala el paquete: sudo apt install php-fpm Inicia el servicio PHP-FPM (la versión puede variar según la instalación): sudo systemctl start php8.3-fpm Activa el inicio automático con el sistema: sudo systemctl enable php8.3-fpm Verifica que esté activo: systemctl status php8.3-fpm Si todo está correcto, verás un mensaje que indica que el servicio está "Active (running)", lo que confirma que PHP-FPM está funcionando como se espera. Probar PHP y PHP-FPM Para confirmar que PHP y PHP-FPM funcionan correctamente, crea un archivo de prueba y accede a él desde el navegador web. Supongamos que usas Apache en este ejemplo: Generar archivo de información PHP. Usa la función phpinfo() para mostrar la configuración activa de PHP: mkdir -p /var/www/htmlecho "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php Configurar Apache para PHP-FPM. Asegúrate de que Apache sea compatible con PHP-FPM. Edita el archivo de configuración de Apache (normalmente en /etc/apache2/sites-available/000-default.conf) e inserta lo siguiente: <FilesMatch \.php$>   SetHandler "proxy:unix:/var/run/php/php8.3-fpm.sock|fcgi://localhost/"</FilesMatch> Recuerda ajustar la versión de PHP y la ruta del socket según la configuración de tu servidor. Activar PHP y PHP-FPM. Habilita los módulos necesarios de Apache: sudo apt install libapache2-mod-phpsudo a2enmod proxy_fcgi setenvif Reiniciar Apache. Aplica los cambios reiniciando Apache: sudo systemctl restart apache2 Acceder a la página de información de PHP. Abre tu navegador y accede a: http://tu_direccion_ip/info.php Sustituye tu_direccion_ip por la dirección IP real o el dominio del servidor. Deberías ver los detalles de la instalación de PHP si todo Si todo está correctamente configurado, verás los detalles de la instalación de PHP en la página que se abre. Instalar múltiples versiones de PHP Para ciertos proyectos puede ser necesario ejecutar diferentes aplicaciones que requieran versiones específicas de PHP. Así puedes gestionar varias versiones de PHP en Ubuntu 24.04: Primero, añade el repositorio de PHP: sudo apt install software-properties-commonsudo add-apt-repository ppa:ondrej/php && sudo apt update Instala las versiones que necesites: sudo apt install php8.1 php8.1-fpm Para seleccionar la versión que deseas usar por defecto: sudo update-alternatives --set php /usr/bin/php8.1 Si usas varias versiones de PHP, asegúrate de que el servidor web apunte al socket adecuado de PHP-FPM para cada versión. Buenas prácticas de seguridad para PHP y PHP-FPM Como desarrollador web, sabes lo importante que es incorporar tanto PHP como PHP-FPM en aplicaciones web seguras y robustas. En esta sección, te presentamos varias prácticas recomendadas de seguridad que deberías aplicar al usar PHP y PHP-FPM. 1. Mantén PHP y PHP-FPM actualizados Realiza actualizaciones periódicas para eliminar vulnerabilidades conocidas y mejorar la seguridad general. Comprueba regularmente si hay nuevas versiones disponibles y actualiza tu sistema tan pronto como sea posible. 2. Configura PHP de forma segura Desactiva funciones innecesarias o peligrosas como exec, shell_exec y eval en el archivo php.ini. Usa la directiva open_basedir para limitar el acceso de PHP a directorios específicos. Establece display_errors = Off en producción para no mostrar errores a los usuarios. Limita el tamaño máximo de subida de archivos y el tiempo de ejecución de scripts. Asegúrate de que PHP se ejecute bajo una cuenta de usuario restringida y dedicada con los mínimos permisos necesarios. Mantén siempre PHP actualizado a su versión estable más reciente para corregir vulnerabilidades. 3. Usa un sistema seguro de manejo de errores Durante el desarrollo, puedes mostrar errores para depurar. Pero en producción, desactiva display_errors y habilita log_errors = On para que los errores se registren en un archivo sin mostrarse al usuario final. 4. Implementa validación de entradas Valida todas las entradas del usuario y evita ejecutar datos sin validar. Utiliza sentencias preparadas para protegerte contra inyecciones SQL. 5. Asegura la configuración de PHP-FPM PHP-FPM debe ejecutarse con un usuario que no sea el predeterminado y que tenga privilegios mínimos. También debes limitar el acceso al socket o puerto de PHP-FPM únicamente a la aplicación web que lo necesite. 6. Activa la directiva open_basedir Esta directiva restringe el acceso de PHP solo a los directorios especificados. Si se intenta acceder a un directorio fuera de los permitidos, PHP bloqueará automáticamente la acción. 7. Usa HTTPS Protege todas las conexiones web asegurándote de que tus aplicaciones solo funcionen sobre HTTPS. Esta es la forma más eficaz de prevenir ataques de interceptación y otros métodos comunes de hackeo. Conclusión Con esta guía, has instalado y configurado correctamente PHP y PHP-FPM en Ubuntu 24.04. Tu servidor ahora está listo para ejecutar aplicaciones web dinámicas. No olvides mantener el sistema actualizado para garantizar la seguridad y el rendimiento. ¿Te fue útil esta guía? Descubre nuestros servidores en la nube y lleva tu infraestructura al siguiente nivel.
10 July 2025 · 6 min to read
Sistema Ubuntu

Cómo instalar y configurar SSH en Ubuntu 22.04

SSH es un protocolo de red que proporciona una conexión segura entre un cliente y un servidor. Toda la comunicación está cifrada, lo que evita el robo de datos transmitidos por la red y otros ataques remotos. Supongamos que has contratado un servidor en la nube con Hostman. Para conectarte y administrarlo, necesitarás tener SSH instalado y configurado. La guía a continuación describe cómo instalar y configurar SSH en Ubuntu 22.04. Requisitos previos Antes de continuar con la instalación y configuración del servicio Secure Shell, asegúrate de cumplir con los siguientes requisitos: Conocimientos de línea de comandos en Linux Es esencial dominar comandos básicos como sudo, apt, nano y systemctl al configurar el servicio. Estos comandos se usarán con frecuencia durante el proceso de instalación y configuración. Es fundamental sentirse cómodo trabajando en la línea de comandos para administrar el servicio eficazmente. Acceso root o sudo para la configuración Para instalar y configurar el servidor se requieren privilegios administrativos (root). Los usuarios deben tener acceso a sudo o haber iniciado sesión como root. Sin estos privilegios, no se puede continuar con la configuración. Conexión a internet para descargar paquetes Es necesaria una conexión estable para instalar el servidor OpenSSH y cualquier otro paquete relacionado. Sin una conexión funcional, el sistema no podrá obtener los componentes de software necesarios. Configurar el firewall para permitir el acceso Si hay un firewall como ufw habilitado en el sistema, puede bloquear el acceso remoto por defecto. Es fundamental configurar el firewall para permitir conexiones entrantes. Usa ufw u otra herramienta para asegurarte de que el puerto 22 esté abierto y accesible. Acceso al sistema (local o remoto) Necesitas acceso físico a tu máquina para configurarla localmente, o debe ser accesible remotamente mediante su dirección IP. Asegúrate de que el sistema esté conectado correctamente a la red para establecer una conexión. No olvides que puedes desplegar tu servidor en la nube de forma rápida y económica con nuestro servicio de VPS Server Hosting. Paso 1: preparar Ubuntu Lo primero que debes hacer antes de instalar SSH en Ubuntu es actualizar todos los paquetes apt a sus últimas versiones. Para ello, ejecuta el siguiente comando: sudo apt update && sudo apt upgrade Paso 2: instalar SSH en Ubuntu OpenSSH no viene preinstalado en el sistema, así que instalémoslo manualmente. Para hacerlo, escribe en la terminal: sudo apt install openssh-server Comenzará la instalación de todos los componentes necesarios. Responde "Yes" a todos los mensajes del sistema. Una vez completada la instalación, pasa al siguiente paso para iniciar el servicio. Paso 3: iniciar SSH Ahora debes habilitar el servicio que acabas de instalar usando el siguiente comando: sudo systemctl enable --now ssh Si el inicio es exitoso, verás un mensaje del sistema confirmándolo. La opción --now permite iniciar el servicio y configurarlo para que se inicie automáticamente al arrancar el sistema. Para verificar que el servicio esté habilitado y en ejecución, escribe: sudo systemctl status ssh La salida debe contener la línea Active: active (running), lo que indica que el servicio está funcionando correctamente. Si deseas deshabilitar el servicio, ejecuta:  sudo systemctl disable ssh Esto desactiva el servicio y evita que se inicie al arrancar el sistema. Paso 4: configurar el Firewall Antes de conectarte al servidor mediante SSH, revisa el firewall para asegurarte de que esté correctamente configurado. En nuestro caso, tenemos instalado UFW, así que usaremos el siguiente comando: sudo ufw status En la salida, deberías ver que el tráfico SSH está permitido. Si no aparece en la lista, necesitas permitir las conexiones SSH entrantes. Este comando lo hará: sudo ufw allow ssh Paso 5: conectar al servidor Una vez que completes todos los pasos anteriores, podrás iniciar sesión en el servidor usando el protocolo SSH. Para hacerlo, necesitas la dirección IP o el nombre de dominio del servidor, y el nombre de un usuario creado en él. En la línea de la terminal, introduce el siguiente comando: ssh usuario@IP_del_servidor O:  ssh usuario@dominio Importante: para conectarse correctamente a un servidor remoto, SSH debe estar instalado y configurado tanto en el servidor remoto como en el equipo desde el cual realizas la conexión. Paso 6 (opcional): crear un par de claves para autenticación segura Para mayor seguridad, considera configurar un par de claves en lugar de depender de la autenticación por contraseña. Para generarlo, usa el siguiente comando: ssh-keygen Paso 7: configurar SSH Después de completar los cinco pasos anteriores, ya puedes conectarte remotamente al servidor. Sin embargo, puedes aumentar aún más la seguridad de la conexión cambiando el puerto por defecto o sustituyendo la autenticación por contraseña por autenticación mediante claves. Estos y otros cambios requieren editar el archivo de configuración de SSH. Las principales configuraciones del servidor OpenSSH se almacenan en el archivo principal sshd_config (ubicación: /etc/ssh). Antes de editar, deberías crear una copia de seguridad del archivo: sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.initial Si después de editar el archivo encuentras errores, puedes restaurar sin problemas el archivo original. Después de crear la copia de seguridad, puedes proceder a editar el archivo de configuración. Para ello, ábrelo con el editor nano: sudo nano /etc/ssh/sshd_config En el archivo, cambia el puerto a uno más seguro. Lo mejor es elegir un valor del rango dinámico de puertos (49152 - 65535) y usar números diferentes por seguridad adicional. Por ejemplo, cambia el valor a 49532. Para hacerlo, descomenta la línea correspondiente en el archivo y cambia el puerto como se muestra en la imagen. Además de esta configuración, se recomienda cambiar el modo de autenticación por contraseña a autenticación por clave. Para hacerlo, descomenta la línea correspondiente y asegúrate de que el valor sea "Yes", como se muestra en la imagen. Ahora, desactiva el inicio de sesión como superusuario cambiando la línea correspondiente como se indica. Otras configuraciones que puedes aplicar para mejorar la seguridad del servidor: UseDNS yes: verifica si el hostname coincide con la dirección IP. PermitEmptyPasswords no: prohíbe el uso de contraseñas vacías. MaxAuthTries: limita los intentos fallidos de conexión en una misma sesión. AllowUsers y AllowGroups: especifican los usuarios y grupos autorizados: # AllowUsers Usuario1 Usuario2 Usuario3# AllowGroups Grupo1 Grupo2 Grupo3 LoginGraceTime: define el tiempo máximo para autenticación. Se recomienda reducir este valor a una cuarta parte. ClientAliveInterval: define el tiempo de inactividad permitido antes de desconectar al usuario. Después de realizar todos los cambios en el archivo de configuración, guárdalo y cierra el editor. Reinicia el servicio para aplicar los cambios: sudo systemctl restart ssh Si cambiaste el puerto, deberás conectarte usando el nuevo puerto: ssh -p numero_de_puerto usuario@IP_del_servidor O: ssh -p numero_de_puerto usuario@dominio Solución de problemas de conexión Asegúrate de que el servicio esté activo con: sudo systemctl status ssh Reinícialo si es necesario: sudo systemctl restart ssh Verifica los ajustes del firewall para permitir tráfico en el puerto 22: sudo ufw allow 22 Confirma que el sistema sea accesible ejecutando: ping <IP_del_servidor> Deshabilitar el servicio Si necesitas deshabilitar el acceso remoto por cualquier motivo, sigue estos pasos: Detener el servicio Para dejar de aceptar conexiones temporalmente: sudo systemctl stop ssh Evitar inicio automático Para impedir que se inicie al arrancar: sudo systemctl disable ssh Confirmar estado inactivo Verifica que el servicio ya no esté en ejecución: sudo systemctl status ssh Desinstalar el servidor Si ya no necesitas el servicio, elimina el servidor SSH y sus archivos asociados: sudo apt remove openssh-server Conclusión Este artículo presenta una guía paso a paso sobre cómo instalar y configurar SSH en Ubuntu 22.04, y describe cómo editar el archivo de configuración principal para mejorar la seguridad. Esperamos que esta guía te ayude a establecer una conexión remota segura con tu servidor Ubuntu. Para saber más sobre claves SSH, haz clic aquí.
26 June 2025 · 8 min to read

¿Necesita ayuda para
elegir un producto?

Nuestros expertos están disponibles para ayudarle a encontrar la solución cloud
adecuada para su empresa, incluso si no sabe por dónde empezar.
Hostman's Support