Conexión a una VM mediante Bastion y un cliente nativo de Linux
Artículo
Este artículo le ayuda a conectarse a través de Azure Bastion a una máquina virtual en la red virtual mediante el cliente nativo en el equipo Linux local. Esta característica de cliente nativa le permite conectarse a las VM de destino por medio de Bastion mediante la CLI de Azure y expande las opciones de inicio de sesión para incluir el par de claves SSH local y Microsoft Entra ID. Para obtener más información y pasos para configurar Bastion para conexiones de cliente nativas, consulte Configuración de Bastion para conexiones de cliente nativas. Las conexiones a través de un cliente nativo requieren la versión Estándar de la SKU de Bastion, o cualquier versión superior.
Después de configurar Bastion para la compatibilidad con el cliente nativo, puede conectarse a una máquina virtual mediante un cliente nativo de Linux. El método que se usa para conectarse depende del cliente desde el que se conecta y de la máquina virtual a la que se conecta. En la lista siguiente, se muestran algunas de las formas disponibles de conectarse desde un cliente nativo de Linux. Consulte Conexión a máquinas virtuales para obtener la lista completa en la que se muestran las combinaciones de características o conexión de cliente disponibles.
Conéctese a una máquina virtual Linux mediante el comando az network bastion ssh.
Conéctese a una máquina virtual Windows mediante el comando az network bastion tunnel.
Conéctese a cualquier máquina virtual mediante el comando az network bastion tunnel.
Transferir archivos a la máquina virtual de destino a través de SSH mediante az network bastion tunnel.
Requisitos previos
Asegúrese de que dispone de los siguientes requisitos previos antes de empezar:
Se instala la versión más reciente de los comandos de la CLI (versión 2.32 o posterior). Puede actualizar la CLI para Bastion mediante az extension update --name bastion. Para más información acerca de la instalación de los comandos de la CLI, consulte Instalación de la CLI de Azure y Introducción a la CLI de Azure.
El identificador de recursos de la VM. El identificador de recursos se puede encontrar fácilmente en Azure Portal. Vaya a la página de información general de la VM y seleccione el vínculo Vista JSON para abrir el código JSON del recurso. Copie el identificador de recurso de la parte superior de la página en el Portapapeles para usarlo más adelante al conectarse a la máquina virtual.
Si tiene previsto iniciar sesión en la máquina virtual con las credenciales de Microsoft Entra, asegúrese de que la máquina virtual está configurada mediante uno de los métodos siguientes:
Habilite el inicio de sesión de Microsoft Entra en una VM Windows o una VM Linux.
Compruebe que los siguientes roles y puertos estén configurados para conectarse a la VM.
Roles necesarios
Rol Lector en la máquina virtual.
Rol de lector en la tarjeta de interfaz de red con la dirección IP privada de la máquina virtual.
Rol Lector en el recurso de Azure Bastion.
Rol de inicio de sesión de administrador de máquinas virtuales o de inicio de sesión de usuario de máquinas virtuales, si usa el método de inicio de sesión de Microsoft Entra. Solo tiene que hacerlo si va a habilitar el inicio de sesión de Microsoft Entra mediante los procesos descritos en uno de estos artículos:
Los pasos de las secciones siguientes le ayudan a conectarse a una máquina virtual Linux desde un cliente nativo de Linux mediante el comando az network bastion. Esta extensión se puede instalar al ejecutar az extension add --name bastion.
Al conectarse mediante este comando, no se admiten las transferencias de archivos. Si desea transferir archivos, conéctese utilizando el comando az network bastion tunnel.
Este comando le permite hacer lo siguiente:
Conexión a una máquina virtual Linux mediante SSH.
Autenticación mediante Microsoft Entra ID
Conéctese a sesiones simultáneas de máquina virtual dentro de la red virtual.
Para iniciar sesión, use uno de los siguientes ejemplos. Después de iniciar sesión en la máquina virtual de destino, el cliente nativo del equipo se abre con la sesión de máquina virtual.
Par de claves SSH
Para iniciar sesión en la máquina virtual con un par de claves SSH, use el siguiente ejemplo.
Si va a iniciar sesión en una máquina virtual habilitada para el inicio de sesión de Microsoft Entra, use el siguiente ejemplo. Para obtener más información, consulte VM de Azure Linux y Microsoft Entra ID.
az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --auth-type "AAD"
Nombre de usuario y contraseña
Si va a iniciar sesión en la máquina virtual con un nombre de usuario y una contraseña locales, use el siguiente ejemplo. Luego se le va a pedir la contraseña de la máquina virtual de destino.
az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --auth-type "password" --username "<Username>"
SSH a una dirección IP de máquina virtual Linux
Puede conectarse a una dirección IP privada de máquina virtual en lugar del id. de recurso. La autenticación de Microsoft Entra ID y los puertos y protocolos personalizados no se admiten al usar este tipo de conexión. Para más información sobre conexiones basadas en IP, consulte Conectarse a una VM - Dirección IP.
Mediante el comando az network bastion, sustituya --target-resource-id por --target-ip-address y la dirección IP especificada para conectarse a su VM. En el ejemplo siguiente, se usa --ssh-key para el método de autenticación.
El inicio de sesión con una clave privada SSH almacenada en Azure Key Vault no se admite con esta característica. Descargue la clave privada en un archivo del equipo local antes de iniciar sesión en la VM Linux con un par de claves SSH.
Esta característica no se admite en Cloud Shell.
Pasos:
Inicie sesión en la cuenta de Azure mediante az login. Si tiene más de una suscripción, puede verlas mediante az account list y tras seleccionar la suscripción que contiene el recurso de Bastion mediante az account set --subscription "<subscription ID>".
Abra el túnel hacia la máquina virtual de destino.
az network bastion tunnel --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --resource-port "<TargetVMPort>" --port "<LocalMachinePort>"
Conéctese a la VM de destino mediante SSH o RDP, el cliente nativo de su elección y el puerto de la máquina local que ha especificado en el paso anterior.
Por ejemplo, puede usar el siguiente comando si tiene instalado el cliente OpenSSH en la máquina local:
ssh <username>@127.0.0.1 -p <LocalMachinePort>
Túnel a una dirección IP de máquina virtual
También puede conectarse a una dirección IP privada de máquina virtual, en lugar del id. de recurso. La autenticación de Microsoft Entra ID y los puertos y protocolos personalizados no se admiten al usar este tipo de conexión. Para más información sobre conexiones basadas en IP, consulte Conectarse a una VM - Dirección IP.
Mediante el comando az network bastion tunnel, sustituya --target-resource-id por --target-ip-address y la dirección IP especificada para conectarse a su VM.
Muestre el diseño, la implementación y el mantenimiento de la infraestructura de red de Azure, el tráfico de equilibrio de carga, el enrutamiento de red, etc.