SSH之免密登陆

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSH之免密登陆相关的知识,希望对你有一定的参考价值。

又来了,上头让小轩我在服务器中写一个Shell脚本,主要用来在机器B中定时备份机器A中的一些文件。那么,小轩是怎么想的呢?

  1. 在小轩的知识库里,现在有scp和ssh两个玩具。别的还真没有其他什么东西了。那就想直接用scp去远程复制好了,但是scp复制的时候还要输入密码。那就搞搞让使用scp的时候不用输入密码好了。

以下进入正文

忽略ssh安装scp安装过程。默认认为当前机器与远程机器含有完整的ssh,scp功能

  • 首先在机器B中使用ssh-keygen -t rsa 命令 (想来玩git的童鞋应该知道吧~)
    [[email protected] .ssh]$ ssh-keygen -t rsa
    技术分享图片
  1. Enter file in which to save the key (/home/hart02/.ssh/id_rsa):直接按enter键

  2. 之后提示Enter passphrase (empty for no passphrase):意思是说请输入密码,如果不输入则为没有密码。当然,小轩使用的enter键~之后就是重复输入密码了。两次一定要保持一致哦~,如果第一次不输入,第二次也还要输入哦~

注:小轩的机器已经生成过了,所以此时提示说/home/hart02/.ssh/id_rsa already exists.

  1. 输入完成后就会出现这样的界面(此界面是小轩在测试机器上重新生成的截图,几个重点的东西已经着重标志出来了)
    技术分享图片
    从上图中我们可以了解到生成的公私钥存放在/user/.ssh/目录下user为当前登陆用户家目录。

下图中authorized_keys不会自动生成。在当前机器B中暂时没有什么用处
技术分享图片

现在我们在机器A中进行操作,其操作如上述步骤一致。当生成完毕时,我们touch 一个文件,文件名为authorized_keys
技术分享图片

重要的来了~~:

  1. 在机器B中使用cat id_rsa.pub查看一下公钥,然后复制这一串东西~
  2. 在机器A中,vim authorized_keys 把复制的东西粘贴到A机器中的这个文件里面。
  3. ESC -> :wq! -> enter 保存退出
    技术分享图片

  4. cat authorized_keys 确保写入成功
  5. chmod 600 authorized_keys 修改文件权限
    技术分享图片
  6. 以上步骤做完之后一定要做一下/etc/init.d/sshd restart 把ssh服务重新启动一下。
    技术分享图片

至此。ssh免密登陆配置完成。说的好听,不如看看效果:
技术分享图片

OK,下章来做scp远程复制脚本的说明~











以上是关于SSH之免密登陆的主要内容,如果未能解决你的问题,请参考以下文章

Linux-SSH之免密码登陆

ssh无法免密登陆

ssh localhost 配置免密登陆仍需要密码的解决方法

Linux ssh免密登陆(多电脑互相免密登陆集群)

ssh免密登陆

SSH免密登陆:Win登陆linux