我需要创建一个自动设置ssh隧道的脚本。我认为没有密码的专用ssh密钥是一个良好的开端,但我无法找到这是否可能以及如何做到这一点。 此密钥应具有有限的权限(仅设置隧道)但我需要另一个私钥(带密码)。

谢谢!

有帮助吗?

解决方案

好的,我找到了答案。

首先, ssh-keygen -f theNewPrivateKey 否则它将覆盖旧的私钥。 第二, ssh -i theNewPrivateKey me @ mycomputer -i 选项更改用于身份验证的私钥。

现在我可以试试我的剧本了。


编辑:我的新密钥如何具有有限的权限:

将公钥复制到目标计算机的$ HOME / .ssh / authorized_keys2文件时,我添加了这个:

command="sleep 99999999999" ssh-dss AAAAB3NzaC1kc3MA...
(+ the rest of the key)

然后唯一允许的命令是永远等待。 由于创建此密钥的目的是创建一个反向ssh隧道,这应该没问题。 然后我创建隧道:

ssh -T -R 7878:localhost:22 -i .ssh/mynewkey  me@myhomecomputer

最后我可以从我的家用电脑登录:

ssh myworklogin@localhost -p7878

我希望这没有安全问题。如果这是一件坏事,请告诉我!

其他提示

试试

<代码> SSH-密钥生成

命令。

我有类似的情况,我必须自动同步服务器内容,而不必在我的robocopy脚本中保存密码。

这个链接帮助了我。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top