软路由设置代理后 git pull/push 无法连接

2023-06-08 22:18:43 +08:00
 yuyuf

我在软路由上加了代理后,git pull/push 无法连接,仓库是 github, 大伙们知道咋回事吗。

路由器系统是 OpenWrt,代理软件用的 PassWall 。

如果设置 github 不走代理就可以正常使用。

3352 次点击
所在节点    程序员
23 条回复
totoro52
2023-06-08 22:38:25 +08:00
我昨天也遇到你这个问题了,我捣鼓了很多方法都没办法解决,最后的解决方案是放弃 ssh ,改用 https
mohumohu
2023-06-08 22:38:54 +08:00
可能是你的节点不允许连接 22 端口。用 https clone 试试。
totoro52
2023-06-08 22:40:10 +08:00
@mohumohu 有可能,也可以改用 443 端口,还不行的话,改用 https 吧
BaseException
2023-06-08 22:46:18 +08:00
我一直用 ssh port 443 clone

```
Host github.com
HostName ssh.github.com
IdentityFile /Users/xxx/.ssh/xxx_id_rsa
User git
Port 443
ProxyCommand nc -v -x 10.10.10.1:7890 %h %p
```

10.10.10.1:7890 是我 openWrt 软路由的透明代理,用的是 Shadow. socks R Plus +
ncepuzs
2023-06-08 22:51:32 +08:00
机场节点屏蔽 22 端口,参考楼上设置,配置文件为 ~/.ssh/config
amlee
2023-06-08 23:39:13 +08:00
作为程序员,问题最起码搜索一下站内吧,我都发过好几次这个帖子链接了。。。。。

https://v2ex.com/t/843383
yolooo
2023-06-08 23:49:26 +08:00
@amlee #6 太长不看......
指标不治本
yolooo
2023-06-08 23:52:12 +08:00
一看就是用 openwrt openclash 导致的

一行代码解决这个问题

openclash -> 全局设置 -> 规则设置(访问控制)-> 勾选 自定义规则(访问控制)

在第一个 textarea ,rules: 下面加这一行

```
- DST-PORT,22,GLOBAL
```

保存设置即可
bjzhou1990
2023-06-08 23:54:05 +08:00
@yolooo #8 应该是- DST-PORT,22,DIRECT
yolooo
2023-06-08 23:54:14 +08:00
不过 OP 是 Passwall ,不是 openclash ,不过原理一样的

设置自定义规则,指定 22 端口走代理即可
CEBBCAT
2023-06-08 23:54:18 +08:00
@amlee #6 可以贴一下你用的关键词吗?我使用 “代理 无法 git github site:v2ex.com”在首页找不到相关的帖子。

关于这个问题本身,也就是机场 dump tcp.port==22 的包,太难排查了,而机场也不明示哪些端口不能代理(至少我用的那个是这样子的)
yolooo
2023-06-08 23:55:24 +08:00
@bjzhou1990 #9 如果直连可以的话 DIRECT 也可以,我直连巨慢,索性直接全走 GLOBAL ,速度快的一笔
pC0oc4EbCSsJUy4W
2023-06-09 00:28:08 +08:00
鸡场 封 22 大部分机场都封
FrankAdler
2023-06-09 01:41:28 +08:00
我再补充一点,通过代理连接 22 ,看起来像是机场的机器大量对外连接 22 ,会导致他们收到惩罚,认为是在扫描肉鸡、攻击等行为,所以机场会禁止 22 出口。以及用机场下 BT 、PT 也可能导致他们收到处罚,所以也可能会禁止,部分 GOV 网站禁止访问也是因为被罚过。
amlee
2023-06-09 01:41:34 +08:00
@yolooo #7 你有本事去把墙给扒了吧,那个治本
amlee
2023-06-09 01:50:50 +08:00
@CEBBCAT site:v2ex.com/t github 代理
Anarchy
2023-06-09 03:08:50 +08:00
机场问题,改用 443 吧。具体可以看这个 https://github.com/vernesong/OpenClash/issues/1960
Jirajine
2023-06-09 05:37:09 +08:00
几年不看,连 22 端口大部分机场都封了?
从禁轮子,到禁政治网站,到禁外媒网站,到禁 tor 官网,到禁 smtp ,到禁含 torrent 关键词的网站,到禁金融网站,到禁矿池,国人在造墙这个领域总是如此跃进。然而我仍然预想不到,连 22 端口 ssh 都能禁?这机场是只卖给看流媒体的不卖给程序员了?
ncepuzs
2023-06-09 07:38:08 +08:00
@yolooo 你不会只知道个 dst-port 吧,我觉得你才是治标不治本。而且,这跟 openclash 有什么关系?
机场或者本地防火墙封 22 端口的话,你这样设置有什么用?
还有其他情景:
如果是 git over https 的话,这样没用;
如果是 git over ssh 且端口是 443 的话,这样没用;
连接改了 ssh 端口的 vps ,这样没用……
totoro52
2023-06-09 08:34:13 +08:00
@Jirajine 机场一般都是服务海外看流媒体或者查文献的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/947117

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX