ssh免密登录及scp/rsync免密传输文件的方式

      在通过ssh登录其它电脑或通过scp/rsync同其它电脑之间传输文件时,每次都需要输入密码,如下图所示:在windows10上通过ssh登录虚拟机,每次登录都需要输入密码;若端口默认为22,可省略通过-p指定

      可通过将本机上的公钥key存放到要访问电脑的~/.ssh/authorized_keys文件解决ssh免密登录及scp/rsync免密传输文件的问题此方法适用于linux与linux、windows到linux、及linux本机执行scp/rsync的操作;Mac与Mac间应该也是可以的,未验证

      1.通过ssh-keygen产生公私钥:执行:ssh-keygen -t rsa ,如下图所示:连续3次回车,默认生成的文件存放到~/.ssh目录下,也可指定存放到其它目录;密码为空

      执行完ssh-keygen后,会在~/.ssh目录下生成id_rsa和id_rsa.pub两个文件,其中id_rsa为私钥,id_rsa.pub为公钥,需要将公钥内容存放到要操作的电脑的~/.ssh/authorized_keys文件中;其实通过ssh方式从GitHub、GitLab、Gitee、Gerrit上clone代码时,也是需要将此公钥文上传

      2.将id_rsa.pub文件内容拷贝到~/.ssh/authorized_keys:可以有两种方式:cat或sh-copy-id

     (1).通过cat: 首先将id_rsa.pub拷贝到其它电脑上,然后cat,如下图所示:如果~/.ssh目录下没有authorized_keys文件,则会生成一个新authorized_keys文件

     (2).通过sh-copy-id:如下图所示,authorized_keys文件可存放多个公钥,此时~/.ssh/authorized_keys 文件中存放着两个公钥

ssh-copy-id -i ~/.ssh/id_rsa.pub spring@127.0.0.1

     3.验证是否生效:

     (1).windows10通过ssh登录ubuntu虚拟机:可见通过ssh登录不再需要输入密码

     (2).linux本机执行scp/rsync:此操作过程同不同linux电脑之间完全一致,可见通过scp/rsync传输文件不再需要输入密码

scp -r /home/spring/GitHub/src/* spring@10.0.2.15:/home/spring/GitHub/dst/
rsync -rav -e ssh --exclude="*.txt" /home/spring/GitHub/src/ spring@10.0.2.15:/home/spring/GitHub/dst/

     4.若不生效,检查文件权限:

     (1).~/.ssh目录权限需要为700
     (2).~/.ssh/authorized_keys文件权限需要为600

相关推荐

  1. ssh登录

    2023-12-10 17:02:02       39 阅读
  2. ssh 登录

    2023-12-10 17:02:02       29 阅读
  3. SSH登录

    2023-12-10 17:02:02       13 阅读
  4. ssh登录

    2023-12-10 17:02:02       8 阅读
  5. linux登录

    2023-12-10 17:02:02       41 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-10 17:02:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-10 17:02:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-10 17:02:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-10 17:02:02       20 阅读

热门阅读

  1. pgpool-ll配置文件详解

    2023-12-10 17:02:02       40 阅读
  2. Linux测试端口连通的几种方式

    2023-12-10 17:02:02       38 阅读
  3. spring bean的生命周期

    2023-12-10 17:02:02       39 阅读
  4. ARM系统软件工程师必备的资源

    2023-12-10 17:02:02       45 阅读
  5. Reactor模型

    2023-12-10 17:02:02       38 阅读
  6. 猜数字游戏与关机程序

    2023-12-10 17:02:02       38 阅读
  7. 安装部署Docker-Compose

    2023-12-10 17:02:02       28 阅读
  8. Linux C++快速入门

    2023-12-10 17:02:02       38 阅读