在 Azure HDInsight 中管理域帐户的 SSH 访问权限

在安全群集上,默认情况下,允许 Microsoft Entra 域服务中的所有域用户通过 SSH 连接到头节点和边缘节点。 这些用户不是 sudoers 组的成员,也不会获得根访问权限。 在群集创建过程中创建的 SSH 用户将具有根访问权限。

管理访问权限

若要修改对特定用户或组的 SSH 访问权限,请更新每个节点上的 /etc/ssh/sshd_config

  1. 使用 ssh 命令连接到群集。 编辑以下命令(将 CLUSTERNAME 替换为群集的名称),然后输入该命令:

    ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.cn
    
  2. 打开 ssh_config 文件。

    sudo nano /etc/ssh/sshd_config
    
  3. 根据需要修改 sshd_config 文件。 如果将用户限制为特定组,则本地帐户无法通过 SSH 连接到该节点。 下面的命令只是一个语法示例:

    AllowUsers useralias1 useralias2
    
    AllowGroups groupname1 groupname2
    

    然后保存更改:按“Ctrl + X”、“Y”、“Enter”。

  4. 重启 sshd。

    sudo systemctl restart sshd
    
  5. 对每个节点重复以上步骤。

SSH 身份验证日志

SSH 身份验证日志会写入 /var/log/auth.log。 如果你看到本地帐户或域帐户通过 SSH 登录失败,则需要检查日志以调试错误。 通常,此问题可能与特定用户帐户有关。通常情况下,好的做法是尝试其他用户帐户或通过默认 SSH 用户(本地帐户)使用 SSH,然后尝试执行 kinit。

SSH 调试日志

若要启用详细日志记录,需要使用 -d 选项重启 sshd。 与 /usr/sbin/sshd -d 一样,还可以在自定义端口(例如 2222)上运行 sshd,这样就无需停止主 SSH 守护程序。 还可以将 -v 选项与 SSH 客户端一起使用,以获取更多日志(有关失败的客户端视图)。

后续步骤