5

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

谢谢 !

4

3 回答 3

8

好的,我找到了答案。

首先,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

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

于 2009-01-06T15:10:06.127 回答
1

试试

ssh-keygen

命令。

于 2009-01-06T14:44:56.440 回答
0

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

这个链接帮助了我。

于 2013-04-10T12:49:41.800 回答