在SSH配置中取消特定主机的参数

4
.ssh/config中,我已经为给定域中的所有主机设置了一个RemoteForward
Host *.[domain]
   RemoteForward [remote-port] 127.0.0.1:[local-port]

我如何在某个特定域名下(例如,git.[domain])取消设置某个参数?


ssh_config 的 manpage 提到了使用否定来排除某些主机,但仅适用于 .ssh/authorized_keys 中的密钥。尝试在 .ssh/config 中尝试类似的组合,但没有成功。 - Gingi
从manpage上来看,我期望Host !git.[domain],*.[domain]可以实现你想要的效果。你尝试过哪些组合呢? - dave4420
1个回答

7

尝试使用ClearAllForwardings设置:

Host *.[domain]
   RemoteForward [remote-port] 127.0.0.1:[local-port]

Host git.[domain]
   ClearAllForwardings yes

git是否像scp和sftp一样自动设置ClearAllForwardings=yes呢?

1
似乎不行。我在~/.ssh/config的顶部设置了RemoteForward 52698 127.0.0.1:52698,以便在所有域上使用rsub,但是当连接到GitHub时开始收到“Warning: remote port forwarding failed for listen port 52698”(因为它显然不允许转发端口)。在Host github.com下加入ClearAllForwardings=yes后,错误消失了。 - Ville

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接