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

Jenkins连接Amazon Linux 2023实例SSH认证失败求助

解决Jenkins通过SSH连接Amazon Linux 2023实例的认证失败问题

针对你遇到的Jenkins Publish Over SSH插件连接Amazon Linux 2023实例出现Auth fail,但相同配置能连接Amazon Linux 2的问题,可按以下步骤排查解决:

  • 检查SSH登录用户与实例配置
    Amazon Linux 2023默认禁用root用户远程SSH登录,且对用户目录权限要求严格:

    1. 确认Jenkins SSH配置中使用的是ec2-user(而非root),这是AL2023的默认登录用户。
    2. 登录AL2023实例,检查ec2-user家目录下的SSH密钥权限:
      • 执行chmod 700 ~/.ssh设置目录权限
      • 执行chmod 600 ~/.ssh/authorized_keys设置密钥文件权限
    3. 检查/etc/ssh/sshd_config配置,确保以下参数开启:
      PubkeyAuthentication yes
      PasswordAuthentication no # 若使用密钥登录需保持此配置
      PermitRootLogin prohibit-password # 或直接设置为no,禁止root远程登录
      
      修改后重启sshd服务:sudo systemctl restart sshd
  • 验证Jenkins侧的密钥配置

    1. 确认Jenkins中配置的私钥与AL2023实例的公钥完全匹配,无格式错误(比如多余空格、换行)。
    2. 检查Jenkins服务器上私钥文件的权限:Jenkins运行用户的~/.ssh目录权限为700,私钥文件权限为600,避免因权限过宽被SSH拒绝。
  • 查看实例SSH日志定位具体原因
    在AL2023实例上执行sudo tail -f /var/log/secure,然后触发Jenkins的SSH连接尝试,日志中会输出详细的认证失败原因(比如密钥不匹配、权限不足、配置拒绝等),根据日志信息针对性修复。

  • 排查SELinux限制
    Amazon Linux 2023默认开启SELinux强制模式,可能影响SSH密钥认证:

    1. 临时关闭SELinux测试:sudo setenforce 0,若此时Jenkins能正常连接,说明是SELinux规则限制。
    2. 永久调整SELinux规则:执行sudo restorecon -Rv ~/.ssh修复SSH目录的SELinux上下文,再开启SELinux:sudo setenforce 1

内容的提问来源于stack exchange,提问作者Vijayakumar Subramani

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 12:29:59