ITPub博客

首页 > Linux操作系统 > Linux操作系统 > linux下SCP无密码传输(建立互信关系)

linux下SCP无密码传输(建立互信关系)

原创 Linux操作系统 作者:神谕丶 时间:2015-01-15 18:54:53 0 删除 编辑
SCP在传输文件的时候,总需要输入密码,如果在自动化的情况下,很不方便。
但是通过建立信任关系,可以免去传输时输入密码。





1.在传输机A上做操作:

[dev@localhost ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/dev/.ssh/id_rsa): (此处按回车)
Enter passphrase (empty for no passphrase): (此处按回车,如果输入密码,就多此一举了)
Enter same passphrase again: (继续回车)
Your identification has been saved in /home/dev/.ssh/id_rsa.
Your public key has been saved in /home/dev/.ssh/id_rsa.pub.
The key fingerprint is:
6f:e9:36:d7:97:f0:ba:13:f7:0d:1b:1e:c9:ed:a3:96 dev@localhost
The key's randomart image is:
(image略)


 然后
cd /home/dev/.ssh

[dev@localhost .ssh]$ scp id_rsa.pub dev@192.168.1.210:/home/dev/.ssh/  (此处我的接受机的IP及用户名分别为dev和192.168.1.210,这里按你自己的实际情况来)
id_rsa.pub                                          100%  396     0.4KB/s   00:00


2.在接收机B上做操作:
su - dev    (切到你的接收机的接收用户下)

[dev@web .ssh]$ cd /home/dev/.ssh
[dev@web .ssh]$ ls
id_rsa.pub  known_hosts
[dev@web .ssh]$ cat id_rsa.pub >> authorized_keys   



至此,已经建立好信任关系。

可以再次执行一条scp命令,此时已经不需要再输入密码。

某些情况下,可能需要在接收机B上修改权限才可生效。

同样,如果想要实现双机互传,反过来做一次就行了。
或者通过改变scp的写法也可以实现。

scp local_file user@192.168.x.x/...
换为 scp user@192.168.x.x:/... local_dir 即可

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29773961/viewspace-1403313/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
微信公众号:神谕的暗影长廊

注册时间:2014-07-28

  • 博文量
    161
  • 访问量
    1195299