我试图在没有密钥的情况下从一个EC2实例到另一个EC2实例启用SSH。我做了以下
1)在主实例中生成密钥
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa_master_to_slave
2)将该密钥添加到同一主实例的授权密钥列表中
$ cat ~/.ssh/id_dsa_master_to_slave.pub >> ~/.ssh/authorized_keys
3)将公钥文件SCP锁定到从属实例。
$ scp -i aws_key.pem /home/ubuntu/.ssh/id_dsa_master_to_slave.pub ubuntu@slave:~/
4)还将SCP版本的文件添加到从属实例中的授权密钥列表中。
$ cat id_dsa_master_to_slave.pub >> ~/.ssh/authorized_keys
仍然,当我尝试使用SSH时,
Permission Denied (Public Key)
我错过了什么吗?
最佳答案
将私钥存储在某个位置(位于主目录中)。
将以下内容放在.bashrc
文件中的任何位置:
eval `ssh-agent`
ssh-add ~/private_key.pem
之后,执行一次:
source ~/.bashrc
每次登录时,
eval
和ssh-add
将执行,您无需密码即可准备进入ec-2服务器。是的,这些不是单引号,而是反引号。