SSH:权限被拒绝(公钥)
SSH: Permission denied (publickey)
我正在按照 this tutorial 安装 Ansible。
在第 2 步,他们要求我 运行:
cat ~/.ssh/id_rsa.pub
在 Ansible 服务器上,以便将其复制粘贴到主机上的 ~/.ssh/authorized_keys。
首先,cat
命令的输出是:
cat: /home/ubuntu/.ssh/id_rsa.pub: No such file or directory
因此,当我尝试使用 ssh 从 Ansible 服务器连接到主机时,我得到:
Permission denied (publickey).
需要考虑的几点:
- 他们要求我使用 this link 来设置两个 Ubuntu 18.04 服务器。我是为主机做的,但 Ansible 服务器已经存在于 Ubuntu 14.04.
- 我跳过了防火墙部分,假设它会让所有端口都可以访问。
- 我不使用 DigitalOcean,而是为两台机器使用 EC2(当然在安全组中启用了端口 22)。
- 在 "Initial Server Setup with Ubuntu 18.04" 指南中他们犯了一个错误。他们要求我 运行 一个
rsync
命令,但他们忘了告诉我删除 authorized_keys 文件的开头,如 here. 所述
- 我对两台机器和所有用户使用相同的 SSH 密钥。
似乎没有防火墙问题,因为您可以连接到 ssh。
用户 "ubuntu" 没有 public 密钥。创建它:
sudo su - ubuntu
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
现在,再次cat文件并将其放在服务器上
Simple steps,对于 mac
- 创建您的 ssh 密钥
- 在 github
中注册 ssh 密钥
我正在按照 this tutorial 安装 Ansible。
在第 2 步,他们要求我 运行:
cat ~/.ssh/id_rsa.pub
在 Ansible 服务器上,以便将其复制粘贴到主机上的 ~/.ssh/authorized_keys。
首先,cat
命令的输出是:
cat: /home/ubuntu/.ssh/id_rsa.pub: No such file or directory
因此,当我尝试使用 ssh 从 Ansible 服务器连接到主机时,我得到:
Permission denied (publickey).
需要考虑的几点:
- 他们要求我使用 this link 来设置两个 Ubuntu 18.04 服务器。我是为主机做的,但 Ansible 服务器已经存在于 Ubuntu 14.04.
- 我跳过了防火墙部分,假设它会让所有端口都可以访问。
- 我不使用 DigitalOcean,而是为两台机器使用 EC2(当然在安全组中启用了端口 22)。
- 在 "Initial Server Setup with Ubuntu 18.04" 指南中他们犯了一个错误。他们要求我 运行 一个
rsync
命令,但他们忘了告诉我删除 authorized_keys 文件的开头,如 here. 所述
- 我对两台机器和所有用户使用相同的 SSH 密钥。
似乎没有防火墙问题,因为您可以连接到 ssh。 用户 "ubuntu" 没有 public 密钥。创建它:
sudo su - ubuntu
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
现在,再次cat文件并将其放在服务器上
Simple steps,对于 mac
- 创建您的 ssh 密钥
- 在 github 中注册 ssh 密钥