SSH无密码登陆linux服务器

背景交代

虚拟主机系统:Ubuntu 14.04本地/客户端系统:Ubuntu 14.04

SSH无密码登陆服务器比较常见的做法是,在终端生成一对密钥(公钥&私钥),然后将公钥上传服务器,私钥由客户端存留。当我们在本地登陆远程服务器时,由于存有公钥的服务器与存有私钥的客户端之间已产生互信,因此无需输入登陆密码,直接登入服务器。



下文是具体实现步骤

1. 生成密钥对

在终端输入如下命令:


~$ ssh-keygen -t rsa

这时会出现如下图提示。按回车键即可:

然后你会看到如下图提示。因为我们是希望“无码”登陆,因此两行提示皆按回车键:

最终在你本机生成密钥成功后,终端会显示类似如下图信息:

在Ubuntu 14.04系统,密钥对生成文件名为
.ssh
,存放在你的用户目录下。在终端输入如下命令:


~$ cd ~/.ssh
~/.ssh$  ll  

即可查看密钥对文件内容,如图示:
图片[1] - SSH无密码登陆linux服务器 - 鹿快
(其中 id_rsa.pub 为公钥文件, id_rsa 为私钥文件。)



2.上传公钥文件至服务器

继续在终端输入如下命令(请注意!在实际操作中,无需输入尖括号。这里添加只是为了更好叙述):


ssh-copy-id   <你的服务器端用户名>@<你的服务器端 ip 地址>

此时你会看到类似信息如下图:

按照这篇文章的介绍,此时我们已经成功了,以后你再登陆服务器,不会有密码输入提示,可直接登入。

但是

在我电脑的实际操作中,设置好SSH后,重新登陆服务器时出现 “Agent admitted failure to sign using the key” 的错误提示,如图示:

根据这里的答案,我解决了上述问题并最终成功登陆服务器。操作如下:

即,在终端输入命令


~$   ssh-add

即可。

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
茄汁嫩鸡好吃的头像 - 鹿快
评论 抢沙发

请登录后发表评论

    暂无评论内容