Saltar al contenido

¿Cómo accedo a mi instancia de EC2 de macOS a través de una GUI?

5 minutos de lectura
0

Tengo una instancia de macOS de Amazon Elastic Compute Cloud (Amazon EC2) en un host dedicado. Quiero acceder a la instancia a través de una interfaz gráfica de usuario (GUI).

Resolución

Los pasos siguientes se han probado en macOS Ventura 13.7.5, macOS Sonoma 14.7.5 y macOS Sequoia 15.4.1.

Importante: Ejecuta la sesión SSH incluso cuando estés en una sesión remota.

Conexión a la instancia de EC2 de macOS

Usa SSH para conectarte a tu instancia de Amazon EC2 de macOS.

Linux

Para usar SSH para ta la instancia de macOS de EC2 como ec2-user, ejecuta el siguiente comando:

ssh -i keypair_file ec2-user@Instance-Public-IP

Nota: Sustituye keypair_file por tu par de claves e Instance-Public-IP por la dirección IP pública de la instancia.

Windows

Windows 10 y las versiones posteriores tienen un cliente OpenSSH instalado de forma predeterminada. Para activar el cliente OpenSSH, sigue estos pasos:

  1. Selecciona Configuración.
  2. Selecciona Aplicaciones y, a continuación, elige Aplicaciones y características.
  3. Selecciona Administrar características opcionales.
  4. Elige Agregar una característica y, a continuación, selecciona Cliente OpenSSH. Si usas una versión anterior de Windows, usa Git Bash para ejecutar el comando anterior:
    ssh -i keypair_file ec2-user@Instance-Public-IP

Nota: Cuando la instancia esté en una subred pública, puedes hacer que sea accesible a través de una dirección IP pública o una dirección IP elástica. Para conectar la instancia a través de una dirección IP privada, usa un servidor bastión o jump. O bien, utiliza AWS VPN o AWS Direct Connect para establecer una conexión con la instancia a través de una dirección IP privada. Se recomienda usar SSH para canalizar el tráfico al servicio de pantalla compartida de macOS. También se recomienda no abrir puertos VNC en los grupos de seguridad.

Instalación de SSH para compartir pantalla en macOS

Para instalar e iniciar SSH para compartir pantalla en macOS desde la instancia de macOS, ejecuta el siguiente comando:

sudo launchctl enable system/com.apple.screensharing
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist

Para establecer una contraseña para ec2-user, ejecuta el siguiente comando:

sudo passwd ec2-user

Confirma que el sistema operativo (SO) esté escuchando en el puerto 5900:

sudo lsof -i -n -P | grep TCP | grep 5900

El puerto 5900 es el predeterminado para los servidores VNC.

Resultado esperado:

launchd 1 root 15u IPv6 0xa78dfebd53aa990a 0t0 TCP *:5900 (LISTEN)
launchd 1 root 16u IPv4 0x7a1b35dd60e49ee6 0t0 TCP *:5900 (LISTEN)
launchd 1 root 19u IPv6 0xa78dfebd53aa990a 0t0 TCP *:5900 (LISTEN)
launchd 1 root 20u IPv4 0x7a1b35dd60e49ee6 0t0 TCP *:5900 (LISTEN)

Sal de la sesión.

Conexión a la instancia a través de la GUI

Puedes conectarte a la GUI desde el host local o desde la dirección IP o el DNS públicos de la instancia.

Uso de un host local

Nota: Antes de conectarte a la GUI, es posible que tengas que desactivar el uso compartido de la pantalla en tu máquina Mac local. Esto se debe a que tanto el uso compartido de la pantalla de tu máquina local como la conexión de Amazon EC2 intentan utilizar el puerto 5900 y provocan un conflicto. Para desactivar el uso compartido de la pantalla, selecciona Preferencias del sistema, General y, a continuación, selecciona Uso compartido de la pantalla. Establece el uso compartido de la pantalla en DESACTIVADO.

Sigue estos pasos:

  1. Para crear un túnel SSH hacia el puerto VNC, ejecuta el siguiente comando:
    ssh -i keypair_file -L 5900:localhost:5900 ec2-user@Instance-Public-IP
    Nota: Sustituye keypair_file por la ruta de tu clave SSH. Sustituye Instance-Public-IP por la dirección IP o el nombre DNS de la instancia. O si te conectas a través de una red privada, también puedes usar tu dirección IP privada.
  2. Utiliza un cliente VNC para conectarte a localhost:5900.
    macOS
    macOS tiene un cliente VNC integrado. Para acceder al visor de VNC, abre el Finder, selecciona Ir y, a continuación, selecciona Conectar al servidor. O bien, utiliza el método abreviado de teclado CMD + K. A continuación, en Dirección del servidor, escribe vnc://localhost:5900.
    Windows
    Puedes usar un cliente de VNC de terceros, como RealVNC Viewer. Si usas el cliente RealVNC Viewer, en la lista desplegable Archivo, selecciona Nueva conexión. En Servidor VNC: localhost:5900 Encryption: deja que el servidor VNC elija y selecciona Aceptar. Otros clientes, como TightVNC en Windows, no funcionan con esta resolución.
    Nota: Es posible que se produzcan errores de autenticación al conectarte a RealVNC Viewer. Para resolver este problema, cambia la configuración de cifrado de Preferir activado a Preferir desactivado o de Preferir desactivado a Preferir activado.
    Linux
    Puedes usar un cliente VNC de terceros, como Remmina. Para descargar la herramienta, consulta Cómo instalar Remmina en el sitio web de Remmina.

Uso de una dirección IP pública o un DNS

Si no quieres activar el uso compartido de la pantalla en tu Mac, usa una dirección IP pública o un DNS para conectarte a la instancia a través de la GUI.

Ejecuta el siguiente comando:

ssh -i keypair_file ec2-user@Instance-Public-IP

A continuación, sigue el paso 2 de la sección Host local para acceder al visor de VNC y conectarte:

vnc://Instance-Public-IP:5900 or vnc://Instance-DNS-address:5900

Nota: Para conectarte a través de una dirección IP pública, permite el puerto 5900 en las reglas del grupo de seguridad.

Cuando se inicie la GUI de macOS, conéctate a la sesión remota de la instancia de macOS como ec2-user con la nueva contraseña que has creado.

Información relacionada

¿Cómo instalo una GUI en mi instancia de Amazon EC2 que ejecuta Amazon Linux 2?

Conexión a la instancia de Mac mediante SSH o GUI

amazon-ec2-mac-getting-started en el sitio web de GitHub

OFICIAL DE AWSActualizada hace 6 meses