机器A(ubuntu22.04,192.168.1.123)能上网,机器B(ubuntu22.04,192.168.1.122)不行,但在同一个交换机内,互相之间是能够访问的。因此目前机器B是通过机器A的http代理服务器访问。B机器是通过下述命令配置代理。

export http_proxy=http://proxy_server_ip:port

校园网封锁github,所以必须得通过git clone git@github.com 这种方式来拉去具体的项目。这里需要在本地创建一个秘钥对,然后把公钥丢github上,私钥要放到~/.ssh/ 目录下,这部分网络上教程很多按下不表
例如:

git clone git@github.com:unslothai/unsloth.git

这里重点来了,这个方式其实是通过ssh连接到github的服务器上,然后再拉取项目。然后ssh默认是不走http代理的,需要我们手动配置,在~/.ssh/config 中配置,这个文件不存在就要创建,我的配置文件如下:

Host github.com
   Hostname ssh.github.com
   Port 443
   User git
   ProxyCommand ssh -W %h:%p root@192.168.1.123

这边值得注意的是这个Hostname,必须是ssh.github.com,而不是github.com, ProxyCommand 就是用ssh做一个代理,这样就会让你先输入代理服务器的密码,然后再进行git clone了。如下图:
image.png


V
1 声望0 粉丝