有一种方法可以将我的私钥转发到我使用该ssh -A
选项连接的服务器。有没有办法转发 .ssh/config 文件?这是我保存主机别名和默认用户名的地方。由于它们是共享帐户,因此无法在这些服务器上写入 .ssh/config。
答案1
由于您无法覆盖/.ssh/config
,请添加您自己的别名并引用它,如下所示:
jake@localhost: scp .ssh/config remoteserver:/home/jake/.sshjake/
jake@localhost: ssh remoteserver
jake@remoteserver: alias ssh='ssh -F ~/.sshjake/config'
jake@remoteserver: ssh someotherserver
答案2
不,据我所知,没有办法通过任何标准 ssh 客户端来做到这一点;如果存在具有这种功能的客户端,我会感到惊讶,因为这是一种超出范围的“功能”。
鉴于它是一个共享帐户(哎哟),我一开始就不想在那里拥有任何此类配置数据,但这是你的决定:)
答案3
不是直接的,但是如果您想管理共享配置文件(例如,您想将配置文件存储在本地 git 存储库中),您可以执行以下操作:
mkdir -p cfg/ssh
cp .ssh/config cfg/ssh/config
rm .ssh/config
ln -s cfg/ssh/config .ssh/config
将原始文件(现在是 ~/cfg/ssh/config)检入到您的 repo 中,然后在您的其他机器上检出一份副本并以相同的方式进行设置。
只需记住确保您在 ~/cfg 目录上设置权限,以便您不想让别人窥探其中的内容。600 或 700 通常就可以了。
答案4
我使用复制命令将多个 config-a config-b 文件合并到配置文件中,只需记住在子文件中进行编辑。
cp 配置-* 配置