linux scp 免密传输、ssh免密登陆

1  SCP命令的使用

scp -p 你想发送的文件 目标主机用户名@IP:目标地址

演示一下:

我本地的虚拟机想往我的云服务器上面发送文件,可以看到,我当前处在root根目录下,我们往里面新建一个aaa.txt的文件,并在里面写入一个Hello World文字;

 查看云服务器,此时root目录内一个文件也没有

接下来,我们使用scp命令,将本地虚拟机的aaa.txt文件上传到云服务器的/root目录内,这里需要输入一下云服务器的密码

我们来查看一下云服务内部此时有没有接收到这个文件

 

 

2.配置SSH免密登陆

配置完免密登陆后,我们互传文件就不需要在输入密码了

2.1 在本地虚拟机上生成密钥

 ssh-keygen -t rsa

命令敲完之后,点击三次回车,可以在根目录下的.ssh目录中看到几个文件

  • id_rsa是私钥文件
  • id_rsa.pub是公钥文件
  • know_hosts:有的人可能没有,有的人可能会有,这个是我们刚才传文件的时候生成的。

 2.2 将公钥写入认证文件

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 

2.3 设置权限

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys 

2.4 将认证文件发送到需要上传文件的服务器上,我这里上传到我的云服务器上了

 scp -p authorized_keys root@目标IP:/root/.ssh/authorized_keys


上面三步可以直接通过下面命令来实现,上面的比较好理解

ssh-copy-id 目标IP

2.5 如果目标服务器的.ssh和authorized_key权限不对,需要把目标服务器的权限也给配一下,这里配置的目的是使这些文件能被调用到。

 

 

3 免密后发送文件

再次传送文件试试,可以看到,这次发送文件,直接就发送成功了,不需要输入密码了

查看一下目标服务器

 

 

4.免密登陆 

ssh root@目标服务器IP

包括执行远程命令

ssh root@目标服务器IP <<EOF
cd /root
touch  ccc.txt
EOF 

发现全部都不需要登陆操作了,直接就可以执行了。 

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值