【Git】Git代理配置HTTP & HTTPS & SSH(SSH代理出现 kex_exchange_identification Connection closed by remote host 解决方案)

✨Git HTTP & HTTPS 代理配置

# http & https
git config --global http.proxy 127.0.0.1:7890
git config --global https.proxy 127.0.0.1:7890

# socks5
git config --global http.proxy socks5://127.0.0.1:7890
git config --global https.proxy socks5://127.0.0.1:7890

# 取消代理
git config --global --unset http.proxy
git config --global --unset https.proxy

✨Git配置多个SSH-Key

可参考

https://www.cnblogs.com/Flat-White/p/17065331.html


✨Git SSH 代理配置

macOS

以GitHub为例

使用如下命令行修改SSH配置

vim ~/.ssh/config

尝试修改配置如下

# GitHub
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa
ProxyCommand nc -X connect -x 127.0.0.1:7890 %h %p

测试回显如下

➜  ~ ssh -T git@github.com
kex_exchange_identification: Connection closed by remote host
Connection closed by UNKNOWN port 65535

出现报错kex_exchange_identification: Connection closed by remote host

可以使用 SSH over HTTPS 解决

macOS系统自带 nc 工具

修改配置如下 使用nc + http代理

# GitHub
Host github.com
HostName ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa
User git
Port 443
ProxyCommand nc -X connect -x 127.0.0.1:7890 %h %p

或者修改配置如下 使用nc + socks5代理

# GitHub
Host github.com
HostName ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa
User git
Port 443
ProxyCommand nc -X 5 -x 127.0.0.1:7890 %h %p

或者可以使用 connect 工具

使用brew安装

brew install connect

修改配置如下 使用connect + http代理

# GitHub
Host github.com
HostName ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa
User git
Port 443
ProxyCommand connect -H 127.0.0.1:7890 %h %p %h %p

或者修改配置如下 使用connect + socks5代理

# GitHub
Host github.com
HostName ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa
User git
Port 443
ProxyCommand connect -S 127.0.0.1:7890 %h %p %h %p

Windows

Windows系统并没有自带nc工具

可以安装nmap并添加安装目录到 PATH


或者既然能在Windows使用Git那么就已经安装了Git for Windows

其自带的 Git Bash 已包含 connect 工具,默认路径为:
C:\Program Files\Git\mingw64\bin\connect.exe

我把Git装在D盘 所以需要添加以下目录到 PATH

D:\Program Files\Git\mingw64\bin


修改配置如下 使用connect + http代理

# GitHub
Host github.com
HostName ssh.github.com
PreferredAuthentications publickey
IdentityFile C:\Users\${UserName}\.ssh\github_id_rsa
User git
Port 443
ProxyCommand connect -H 127.0.0.1:7890 %h %p

或者修改配置如下 使用connect + socks5代理

# GitHub
Host github.com
HostName ssh.github.com
PreferredAuthentications publickey
IdentityFile C:\Users\${UserName}\.ssh\github_id_rsa
User git
Port 443
ProxyCommand connect -S 127.0.0.1:7890 %h %p

✨SSH over HTTPS

SSH over HTTPS 是一种通过 HTTPS 端口(443)传输 SSH 流量的技术,主要用于绕过网络限制(如防火墙封锁了默认的 SSH 端口 22)。


  1. 什么是 SSH over HTTPS?
  • 常规 SSH 连接:使用 22 端口,容易被防火墙检测并拦截。
  • SSH over HTTPS:将 SSH 流量伪装成 HTTPS 流量,通过 443 端口传输(因为 HTTPS 流量通常不会被封锁)。

  1. 为什么需要它?
  • 突破公司/学校网络对 SSH 的封锁
  • 在限制严格的网络环境(如机场、酒店)中使用 SSH
  • 解决 kex_exchange_identification: Connection closed by remote host 等连接错误

✨HTTP & SOCKS5 代理区别

  1. 协议层与工作原理
特性 HTTP 代理 SOCKS5 代理
协议层 应用层(HTTP/HTTPS) 传输层(TCP/UDP)
工作方式 只能代理 HTTP/HTTPS 流量 可代理任意流量(SSH、FTP、游戏等)
身份认证 支持 Basic/PASV 认证 支持用户名/密码认证
加密 依赖 HTTPS 加密 本身不加密,但可配合 TLS(如 SOCKS5 over TLS)

  1. 功能对比

HTTP 代理的特点:

  • 仅处理 Web 流量
    适用于浏览器、curlgit clone https:// 等 HTTP(S) 请求。
  • 能解析 HTTP 头部
    可以修改、过滤或缓存 HTTP 请求(如公司代理过滤网页内容)。
  • 不支持非 HTTP 协议
    无法代理 SSH、RDP、游戏等非 HTTP 流量。

SOCKS5 代理的特点:

  • 全协议支持
    可代理 任意 TCP/UDP 流量(如 SSH、BitTorrent、游戏连接)。
  • 无协议解析
    直接转发原始数据包,不修改内容,隐私性更好。
  • 支持 UDP
    适用于 VoIP、视频流等 UDP 应用(HTTP 代理仅支持 TCP)。

  1. 性能与隐私
维度 HTTP 代理 SOCKS5 代理
速度 较慢(需解析 HTTP 头部) 更快(直接转发原始数据)
隐私性 代理服务器能看到 HTTP 请求内容 仅知道连接目标,不解析内容
兼容性 仅限 HTTP 工具(如浏览器) 几乎所有网络工具均支持

  1. 典型应用场景

HTTP 代理适合:

  • 网页浏览(Chrome/Firefox)
  • 下载文件(wgetcurl
  • Git 的 HTTPS 协议(git clone https://...

SOCKS5 代理适合:

  • SSH 连接(git clone git@...
  • 远程桌面(RDP/VNC)
  • 游戏联机(如 Steam)
  • P2P 下载(BitTorrent)
  • 绕过网络审查(全局代理)

  1. 如何选择?
  • 用 HTTP 代理如果:
    你只需要浏览网页或访问 HTTP(S) 服务。
  • 用 SOCKS5 代理如果
    你需要代理 SSH、游戏、UDP 等非 HTTP 流量,或追求更高隐私性。

⭐转载请注明出处

本文作者:双份浓缩馥芮白

原文链接:https://www.cnblogs.com/Flat-White/p/18867411

版权所有,如需转载请注明出处。

posted @ 2025-05-09 01:21  双份浓缩馥芮白  阅读(568)  评论(0)    收藏  举报