如何给 ssh 上代理

Gavin

如果一个本地 git 仓库的 remote 是 ssh,与 remote 的通信不会走 ~/.gitconfig 指定的代理

显然要配置 ssh 走代理

这个需求可以用 nc(Netcat) 做到,这里使用了较新的 ncat

编辑 ~/.ssh/config 文件

1
2
Host *
ProxyCommand ncat --proxy-type socks5 --proxy 127.0.0.1:7891 %h %p

第一行的 * 代表我想让所有 host 走代理,改其他的比如 github.com 也没问题

第二行指定了代理用的命令,proxy-type 可以更改,如 socks4 等,proxy 后面的 IP 改成自己代理的 IP。

以上

  • 标题: 如何给 ssh 上代理
  • 作者: Gavin
  • 创建于 : 2025-11-17 00:40:00
  • 更新于 : 2025-11-18 23:32:56
  • 链接: https://gavin-blog.pages.dev/2025/如何给-ssh-上代理/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
目录
如何给 ssh 上代理