首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过ssh连接Ansible与AWS-EC2

如何通过ssh连接Ansible与AWS-EC2
EN

Ask Ubuntu用户
提问于 2020-02-27 01:18:14
回答 2查看 3.5K关注 0票数 2

我想通过ssh连接ansible到EC2。我在本地机器(Ubuntu)上创建了一个密钥对,并使用ssh-copy将其复制到我的EC2实例中。复制是成功的,但是当我想连接到实例时,我会得到下面的错误:

代码语言:javascript
复制
Failed to connect to the host via ssh: root@34.xxx.0x.xxx: Permission denied (publickey)

当我检查远程机器上的auth.log文件时,我看到以下日志:

代码语言:javascript
复制
invalid user usuario from 187.xx.xx.xx port 47988

这是我的etc/ansible/host文件

代码语言:javascript
复制
[host1]

github ansible_host=13.xxx.xxx.xx ansible_user=root

任何帮助都将不胜感激。谢谢

EN

回答 2

Ask Ubuntu用户

回答已采纳

发布于 2020-02-27 07:29:32

通常,我们应该使用域凭据(而不是基于密钥的身份验证)从控制节点到远程服务器运行剧本。

但在您的示例中,您正在尝试使用根用户和密钥进行身份验证。因此,请按照以下步骤操作:

  • 创建一个名为ansible的用户&在控制节点( ansible主服务器)为用户“ansible”创建密钥。
  • 如果您为该用户创建了密钥,则将获得两个文件--私钥和公钥。
  • 将公钥内容复制到远程服务器的“/home/ansible/.ssh/authorized_keys”中,您希望通过不可失控制节点来管理该服务器。
  • 现在,使用下面的命令ssh -i /path/to/private-key ansible@<remoteserverip>希望检查SSH,这会有所帮助。

关于不可接受的配置,在/etc/ansible/ansible.cfg中将有一个参数提到私有。private_key_file = /path/to/private-key

票数 0
EN

Ask Ubuntu用户

发布于 2020-02-27 12:01:45

我需要在远程服务器上的PasswordAuthentication文件中设置sshd_config yes,这解决了这个问题。

票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1213313

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档