Linux 让终端走代理的集中方法#
通过让终端走代理的方式来加快gitclone的速度。
前期准备#
认识代理的方式:代理是通过客户端与服务端通信,传输服务端能够访问到的资源文件,再由服务端客户端通信返回给客户端,从而间接访问服务端能够访问的资源
首先确定自己服务端代理的通讯协议。 socks,http,https
方法一:#
直接在终端中运行:
export http_proxy=http://proxyAddress:port
这里的proxyAddress替换为代理服务器的ip,如果客户端支持本地监听就替换为127.0.0.1
port端口替换为代理端口
Examples:#
export http_proxy=http://127.0.0.1:1080
export https_proxy=http://127.0.0.1:1080
export http_proxy=socks5://127.0.0.1:1080
这种方法的好处是只对当前打开的终端生效,当终端关闭代理就取消了
方法二:#
如果有永久保存代理服务器的需求
把代理服务器地址写进shell配置文件 .bashrc或者.zshrc
export http_proxy="http://localhost:port"
export https_proxy="http://localhost:prot"
可将冒号内的http替换为socks5
或者干脆
export ALL_PROXY=socks5://127.0.0.1:1080
最后执行命令使之生效
source ~/.bashrc
方法三:#
Proxychains软件解决 Arch安装
sudo pacman -S proxychains
安装完成后编辑/etc/proxychains.conf
注释掉proxy_dns这行,防止DNS污染
在文件最末添加
socks5 127.0.0.1 1080
以后每次需要执行需要代理的命令时,就在命令前添加proxychains
方法四:#
修改对应工具的代理配置
例如git
git config --global http.proxy 'socks://127.0.0.1:1080'
git config --global https.proxy 'socks5:127.0.0.1:1080'
取消代理
git config --global --unset http.prox
git config --global --unset https.proxy
以上解决的是git使用http协议的代理
ssh代理与之不同
vim ~/.ssh/config
#添加
# 这里必须是 github.com,因为这个跟我们 clone 代码时的链接有关
Host github.com
# 如果用默认端口,这里是 github.com,如果想用443端口,这里就是 ssh.github.com 详见 https://help.github.com/articles/using-ssh-over-the-https-port/
HostName github.com
# User git
# 如果是 HTTP 代理,把下面这行取消注释,并把 proxyport 改成自己的 http 代理的端口
# ProxyCommand socat - PROXY:127.0.0.1:%h:%p,proxyport=20171
# 如果是 socks5 代理,则把下面这行取消注释,并把 6666 改成自己 socks5 代理的端口
# ProxyCommand nc -v -x 127.0.0.1:20170 %h %p
以上至此