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

使用Ansible管理AWS两台服务器时无法连接目标服务器的问题

问题解决思路

1. 先修正SSH命令的拼写错误

你执行的命令里密钥文件名拼写有误:privae-key 应该是 private-key,修正后重新尝试:

ssh -i private-key ubuntu@public-id-target-server

2. 检查密钥文件权限

SSH对密钥文件权限要求严格,权限过宽会直接拒绝连接,执行以下命令修正权限:

chmod 600 private-key

确保密钥文件仅当前用户可读可写,避免权限冲突。

3. 排查AWS安全组规则

  • 确认目标服务器的安全组已添加允许控制服务器公IP(或临时用0.0.0.0/0测试)的22端口入站规则,即使Ansible之前能正常执行,也可能安全组规则被后续修改。
  • 同时检查控制服务器的安全组是否允许出站访问目标服务器的22端口。

4. 查看SSH连接详细日志定位问题

添加-vv参数开启调试日志,能明确看到连接失败的具体原因(比如密钥不匹配、服务器拒绝、网络不通等):

ssh -vv -i private-key ubuntu@public-id-target-server

5. 无需SSH登录,直接用Ansible验证文件状态

既然Ansible能成功执行任务,直接通过Ansible命令查看目标服务器上的文件状态,绕开SSH登录问题:

  • 查看文件是否存在:
ansible target-server -m stat -a "path=/你创建文件的路径/文件名" -i 你的inventory文件路径
  • 列出目标路径下的文件:
ansible target-server -m shell -a "ls /你创建文件的路径" -i 你的inventory文件路径

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 01:29:59