win10 ssh 上传密钥过程,出现 无法将“ssh-copy-id”项识别

本文档详细介绍了如何在Windows 10系统中生成SSH密钥对,并通过ssh-copy-id命令将公钥上传到远程服务器。在执行过程中遇到ssh-copy-id命令不被识别的问题,提供了PowerShell中的解决方案,即定义一个自定义函数来实现公钥的复制。此教程适用于需要进行远程服务器连接和自动化部署的开发者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

配置过程

1. 首先生成密钥对

ssh-keygen -t rsa   #-t表示类型选项,这里采用rsa加密算法

2. 上传公钥

ssh-copy-id ldz@192.168.0.1

 遇到问题

在windows10上配置时,会遇到如下错误:

ssh-copy-id : 无法将“ssh-copy-id”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。

解决方案是在powershell中,先执行以下内容:


function ssh-copy-id([string]$userAtMachine, $args){   
    $publicKey = "$ENV:USERPROFILE" + "/.ssh/id_rsa.pub"
    if (!(Test-Path "$publicKey")){
        Write-Error "ERROR: failed to open ID file '$publicKey': No such file"            
    }
    else {
        & cat "$publicKey" | ssh $args $userAtMachine "umask 077; test -d .ssh || mkdir .ssh ; cat >> .ssh/authorized_keys || exit 1"      
    }
}

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值