使用 Microsoft Entra ID 进行 SSH 身份验证
安全外壳 (SSH) 是一种网络协议,它为在不安全的网络上安全地运行网络服务提供加密。 它通常用于 Unix 和 Linux 等系统。 SSH 取代了 Telnet 协议,后者在不安全的网络中不提供加密。
Microsoft Entra ID 为在 Azure 上运行的基于 Linux 的系统提供了虚拟机 (VM) 扩展。 它还提供与 Azure CLI 和 OpenSSH 客户端集成的客户端扩展。
可以在以下情况下使用 Active Directory 进行 SSH 身份验证:
使用需要远程命令行登录的基于 Linux 的 VM。
在基于 Linux 的系统中运行远程命令。
在不安全的网络中安全传输文件。
系统的组件
下图显示了使用 Microsoft Entra ID 进行 SSH 身份验证的过程:
系统包括以下组件:
用户:用户启动 Azure CLI 和 SSH 客户端,与 Linux VM 建立连接。 用户还提供用于身份验证的凭据。
Azure CLI:用户与 Azure CLI 交互后,就可以启动与 Microsoft Entra ID 的会话、从 Microsoft Entra ID 请求生存期较短的 OpenSSH 用户证书,以及启动 SSH 会话。
Web 浏览器:用户打开浏览器,对 Azure CLI 会话进行身份验证。 浏览器与标识提供者 (Microsoft Entra ID) 通信,以安全地对用户进行身份验证和授权。
OpenSSH 客户端:Azure CLI(或用户)使用 OpenSSH 客户端启动与 Linux VM 的连接。
Microsoft Entra ID:Microsoft Entra 对用户的标识进行身份验证,并向用户的 Azure CLI 客户端颁发生存期较短的 OpenSSH 用户证书。
Linux VM:Linux VM 接受 OpenSSH 用户证书并提供成功的连接。
后续步骤
- 若要通过 Microsoft Entra ID 为用户或来宾用户实现 SSH,请参阅使用 Microsoft Entra 凭据登录到 Linux VM。