将密钥从 Windows 带到 UNIX

将密钥从 Windows 带到 UNIX

我跨三个系统进行操作:

  • 一台远程 Unix 机器(我们称之为 Unix1),它存储一些文件
  • 本地 Windows 计算机(我们称之为 win1),它存储私人的Unix1 的关键
  • 存储进程的远程 Unix 机器(我们称之为 Unix2)。

Unix2 上的进程无法安装在 Unix1 上。理想情况下,我尝试执行以下操作:

  • 从Unix2,连接到Unix1(使用win1上的私钥)
  • 将一些文件从 Unix1 拉到 Unix2
  • 在 Unix2 上运行进程
  • 将输出文件从 Unix2 推送到 Unix1(在 win1 上使用私钥)

我在这里需要遵循什么语法?私钥的位置给我带来了很多问题。

答案1

将密钥从 Windows 带到 UNIX

从 Windows 上的私钥生成公钥,将两者复制到 unix2。

如果使用putty,则使用puttygen,然后转换,导出 openssh 密钥

私钥如下所示:(RSA 是密钥的类型)

-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCUAEAzrtuUOEMAN1vaX1GFBLoBiDba/AiIdfFkTFJeZtaKtiuIpS7
(...)
----END RSA PRIVATE KEY-----

公钥看起来像

ssh-rsa AAAAB3....abc user@hosts

在unix1上授权user2

假设 user1/user2 在 unix1/unix2 上,来自 unix2

将公钥内容附加到authorized_keys(在~user1/.sshunix1上)

将私钥放入id_rsaunix2~user2/.ssh上。

复制文件

 scp /some/file1.txt /some/file2.cmd user1@unix1:/distant/place

运行进程

 ssh -l user1 unix1 /distant/place/file2.cmd

带回结果

 scp user1@unix1:/distant/place/result.txt /some

相关内容