【Linux 杂项】SCP 免密传输

本文为笔者学习阶段的一个记录,多有错漏与描述不清之处,欢迎大家批评指正。

文章目录

  • 一、SCP 命令
    • 1.1 命令格式
    • 1.2 使用示例
  • 二、免密传输
  • 总结


提示:以下是本篇文章正文内容,下面案例可供参考

一、SCP 命令

1.1 命令格式

scp命令用于在网络中互传文件,格式为:

scp [OPTIONS] [SOURCE] [DESTINATION]

OPTIONS:可选项如下表

可选项作用
-r递归复制整个目录。
-p保留原始文件的属性,包括权限、时间戳等。
-P 指定 SSH 服务器的端口号,默认为 22。
-v详细输出,显示传输过程中的详细信息。
-C启用压缩,加快传输速度。
-q静默模式,不显示进度和错误信息。

SOURCE:源文件。
DESTINATION:目标地址。

若源文件或目标地址在远程主机,那么格式为:
用户名@IP:上传到的路径

1.2 使用示例

例如,将 putstime 文件上传到 ip 为 192.168.4.69、用户名为 root 的主机 /root/linux 目录下:

scp putstime root@192.168.4.69:/root/linux/

输入命令后会要求输入密码,此时输入远程主机的用户密码即可。
若想从远程主机获取文件,则将命令中的两个参数调换顺序即可。

二、免密传输

每次使用 scp 时都需要输入密码,可以配置免密传输跳过这一步骤。

首先在发起 scp 传输的设备(虚拟机、开发板或 Windows 均可)终端中输入以下命令(若是windows 端则该命令不需要附带任何参数):

ssh-keygen -t rsa

输入命令后设备会生成密钥(这一步骤会随着设备性能不同所消耗的时间不同,若是开发板可能会需要几十秒时间)

随后会提示输入密码,这里不要输入任何密码直接敲击两次回车即可,随后系统生成密钥文件。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4PKRiFLl-1721866689221)(https://i-blog.csdnimg.cn/direct/0a98900b9eb54e16a81e0098e549a6cf.png)]
上图红框中就是秘钥文件生成的位置。

将公钥文件 id_rsa.pub 中的内容复制并追加到目标用户家目录.ssh/authorized_keys文件中即可
若没有该文件则手动创建。

最后修改.ssh与.ssh/authorized_keys的权限确保不会出现权限问题:

chmod 700 /root/.ssh
chmod 600 /root/.ssh/authorized_keys

总结

本文介绍了 scp 命令的使用以及如何配置 scp 免密传输。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值