You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Rundeck 4.8.0配置域账户认证Windows节点遇Kerberos及401错误求助

Rundeck 切换域账户访问Windows节点故障排查思路

一、「Kerberos数据库找不到服务器」GSSError 排查

  • 检查Rundeck服务器的/etc/krb5.conf配置:
    • 确认[realms]段中MANAGEMENT.CORP的kdc和admin_server指向正确域控制器,示例配置:
      [realms]
      MANAGEMENT.CORP = {
          kdc = dc01.management.corp
          admin_server = dc01.management.corp
          default_domain = management.corp
      }
      
    • 检查[domain_realm]段是否映射Windows节点主机名到对应域,示例:
      [domain_realm]
      .management.corp = MANAGEMENT.CORP
      management.corp = MANAGEMENT.CORP
      
  • 验证Rundeck服务器的DNS解析:
    • 执行nslookup dc01.management.corp和nslookup win2022.management.corp,确认返回正确IP
    • 排查/etc/hosts是否存在冲突的主机名映射
  • 测试本地Kerberos票据获取:
    • 切换到rundeck系统用户,执行kinit rundeck@MANAGEMENT.CORP,输入密码后用klist确认票据生成
    • 如果kinit失败,检查域控制器连通性(比如telnet KDC端口88)
  • 确认Rundeck进程的krb5.conf路径:
    • 检查Rundeck启动脚本是否设置KRB5_CONFIG环境变量,确保指向/etc/krb5.conf
    • 重启Rundeck服务后重新测试节点执行

二、Overthere WinRM插件401未授权错误排查

  • 检查resources.xml节点配置:
    • 确保winrm-auth-type设为kerberos,winrm-domain为MANAGEMENT.CORP,winrm-username填rundeck(无需带@域名),示例配置:
      <node name="win2022" 
            hostname="win2022.management.corp" 
            osFamily="windows" 
            winrm-port="5985" 
            winrm-auth-type="kerberos" 
            winrm-domain="MANAGEMENT.CORP" 
            winrm-username="rundeck" 
            winrm-password-option="win2022_pass" />
      
  • 配置JVM级Kerberos参数:
    • 在/etc/rundeck/profile中添加JVM参数,指定krb5.conf路径:
      export JAVA_OPTS="$JAVA_OPTS -Djava.security.krb5.conf=/etc/krb5.conf"
      
    • 重启Rundeck后,用klist -e确认进程持有目标节点的服务票据(如HOST/win2022.management.corp@MANAGEMENT.CORP)
  • 检查Windows节点WinRM权限:
    • 确认域账户rundeck@MANAGEMENT.CORP属于Windows节点本地管理员组,或拥有WinRM执行权限
    • 在Windows节点执行Set-PSSessionConfiguration -Name Microsoft.PowerShell -ShowSecurityDescriptorUI,确认域账户有允许执行的权限
  • 排查SPN配置:
    • 在域控制器执行setspn -X检查是否存在重复SPN(如HOST/win2022)
    • 用setspn -L win2022确认节点包含正确SPN:HOST/win2022.management.corp和HOST/win2022

通用排查点

  • 时间同步:确保Rundeck服务器、Windows节点、域控制器的时间差在5分钟内(Kerberos对时间敏感)
  • 防火墙规则:检查Rundeck到Windows节点的5985/5986端口、到域控制器的88/464端口是否开放
  • 日志分析:查看/var/log/rundeck/rundeck.log和/var/log/rundeck/service.log,提取Kerberos相关错误栈定位问题

内容的提问来源于stack exchange,提问作者Roger McCarrick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 10:36:07