我这样做是为了在 Windows 和 Linux 之间复制文件。
C:\Documents and Settings\668340\My Documents\putty>pscp "C:\Documents and Settings\563456\abc.txt" "[email protected]:/home/auto/"
但它提示输入密码,我如何使用自动执行此任务私钥/公钥对Windows 和 Linux 之间
甚至winscp
可以工作,但唯一的问题是我必须在代码中使用硬编码密码,这是我不想要的。相反,我想使用私钥/公钥添加概念,但不知道在 Windows 中如何执行此操作。
编辑:我的意思是我可以使用无密码身份验证,但它仍然涉及在 Windows 中使用生成公钥、私钥(.ppk)puttygen.exe
然后将公钥复制到.ssh\authorized
linux 的手动过程。有什么方法可以自动执行此操作。
编辑:如果有任何通过在unix中运行命令的shell脚本将文件复制到windows的任何复制文件,这也可能很有用,因为我可以在unix中自动创建公钥/私钥。
答案1
由于您想在没有事先密钥交换的情况下进行身份验证,因此除了使用密码身份验证(至少第一次)之外,我没有其他选择。
因此,您需要在脚本中对密码进行硬编码。您可以pscp
通过其选项提供密码-pw
。但是,我不知道这有多安全(至少在Linux中,所有用户通常都可以看到所有进程的命令行)。
答案2
由于您不想输入密码或生成密钥,因此我建议如下:
- 禁用两台机器上的网络(安全第一!)。
- 在两台机器上启用无密码登录。
- 将软盘插入机器 A 并将文件复制到软盘上。
- 从机器 A 中取出软盘,然后走到机器 B 上。
- 将软盘插入机器 B 并将文件复制到机器 B 上。
如果您碰巧拥有一台 Win 95 计算机,那么您会很高兴知道这就是它设计的网络模型。