SSH免密码登录

每次用SSH登录服务器都要输入密码,次数多了就觉得有些麻烦,反正是自己个人用的电脑,安全应该有保障,如何能直接登录上去而不需要输入密码呢?其实一句话就讲清楚了:把自己公钥放在服务器上

Linux客户端

ls -l ~/.ssh

看看id_rsa和id_rsa.pub这两个文件是否存在?如果不存在,那现在就来生成一对:

ssh-keygen -t rsa

一路回车到底,id_rsa和id_rsa.pub就生成了,id_rsa保存好,不要告诉别人,id_rsa.pub是公钥,这是我们要告诉服务器的东西。

现在,登录到服务器,将本地的id_rsa.pub的内容追加到服务器的~/.ssh/authorized_keys文件中即可,可以用重定向追加,也可以复制内容,打开VI,贴进去,随你便。然后就完成了,登录:

ssh -l root 服务器地址

注意:你把id_rsa.pub放在服务器哪个用户的~/.ssh目录下,就可以用哪个用户的身份登录,我是把它放在/root/.ssh下了,所以可以用root登录。

Windows客户端

Windows客户端如果用Cygwin或者MINGW64的话,那跟Linux客户端没啥差别。而我一般会用SSH Secure Shell,这是一个免费又好用的软件,事实上,我十几年前(2004年)就开始用它了,现在不知道还是否在更新,但好用依旧,强烈推荐。言归正传!

1,先按正常方式登录服务器,假设你跟我一样,用的是root账号;

2,菜单Edit -> Setting打开设置对话框,然后按下图的1、2、3步骤操作:

3,在出现的新对话框中选择2048位RSA算法:

然后下一步。

4,大约经过几秒到几十秒的运算之后,程序给你生成了一对密钥,点下一步,出现下图对话框:

给这对密钥起个名字,习惯性地,我还是称之为id_rsa,Passphrase留空。下一步。

5,出现以下对话框:

点“Upload Public key”,上传公钥到服务器。点完成。

6,公钥虽然上传到服务器了,格式跟我们之前使用的不太一样,需要转换一下,默认情况下,刚才的公钥会被上传到服务器的\root\.ssh2\目录下,现在在服务器上执行:

ssh-keygen -i -f /root/.ssh2/id_rsa.pub

就看到了公钥的输出,把这个输出的文本追加到~/.ssh/authorized_keys文件中去(不管你用重定向还是用VI都可以),保存,完成!

转载于:https://www.cnblogs.com/guogangj/p/5319131.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值