Windows 和 Linux 之间互传文件

本质上是通过 Windows 和 Linux 互相之间的 SSH 连接 来实现文件传输

流程:

  1. Windows 机器生成 SSH 密钥并将公钥复制到 Linux 机器。
  2. Windows 使用 scp 进行文件传输时,利用免密码登录。

详细步骤:

1. 在 Windows 上生成 SSH 密钥对

首先,在 Windows 上生成一个 SSH 密钥对(如果你还没有,默认情况下,它会将密钥存储在 C:\Users\<用户名>\.ssh\id_rsa):

ssh-keygen -t rsa -b 2048
2. 将公钥复制到 Linux 上

在 Windows 上,我们需要将公钥复制到 Linux 主机的 ~/.ssh/authorized_keys 文件中。你可以手动复制:

  1. 打开 Windows 上的公钥文件:

    type C:\Users\<用户名>\.ssh\id_rsa.pub
    
  2. 复制输出的公钥内容。

  3. 然后,通过 SSH 登录到你的 Linux 主机:

    ssh user@remote_host
    
  4. 在 Linux 上编辑(或者创建) ~/.ssh/authorized_keys 文件:

    nano ~/.ssh/authorized_keys
  5. 将从 Windows 复制过来的公钥粘贴进去并保存。

  6. 设置正确的权限:

    chmod 600 ~/.ssh/authorized_keys
3. 确保 SSH 配置允许公钥认证

如果没有特殊配置,Linux 默认允许公钥认证,但可以检查一下 /etc/ssh/sshd_config 文件,确保有以下配置:

PubkeyAuthentication yes
4. 使用 scp 进行免交互文件传输

完成上述配置后,你可以在 Windows 上直接使用 scp 命令进行文件传输了。由于 SSH 免密配置已经成功,scp 不会再要求输入密码。

  • 从 Windows 向 Linux 上传文件:

    scp C:\path\to\file user@remote_host:/path/to/destination
    
  • 从 Linux 向 Windows 下载文件:

    scp user@remote_host:/path/to/file C:\path\to\destination

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值