您的位置:首页 > 运维架构 > Linux

proxy 在centos7上的使用方法 (不定期更新)

2016-07-26 10:45 387 查看
yum:
编辑/etc/yum.conf
追加proxy=socks5://127.0.0.1:1080
或者
proxy=http://127.0.0.1:8118

p.s. 当proxy为http类型时候,yum下载repo文件时候dns解析默认走代理(即resolv.conf文件不配置dns server也行)。
但是socks5类型代理必须配置dns server。

pip:
pip --proxy  192.168.10.100:8118
仅支持http/https,不支持socks5
tips:
可以把alias pip="pip --proxy 192.168.10.100:8118" 写入bash_profile

docker:
暂时不支持socks proxy
但是:可以把socks5代理转换成http代理
然后docker就可以间接使用socks代理了。
具体转换方法可以参考下列链接: http://blog.csdn.net/onlyellow/article/details/52441915
docker使用http代理方法如下:
# cat /etc/sysconfig/docker |tail -n2
HTTP_PROXY=http://127.0.0.1:8118
export HTTP_PROXY

然后systemctl restart docker
docker pull就能走代理下载了

最新版的docker没有/etc/sysconfig/docker这个文件了。需要另外方法配置代理。
引用stackoverflow的一个回答(亲测有效): http://stackoverflow.com/questions/23111631/cannot-download-docker-images-behind-a-proxy
git:
git config --global http.proxy 'socks5://127.0.0.1:1080' 
git config --global https.proxy 'socks5://127.0.0.1:1080'

git config --global --unset http.proxy
git config --global --unset https.proxy

这里说明下windows上设置git 与centos7不一样:
git config --global http.proxy  127.0.0.1:1080
git config --global https.proxy  127.0.0.1:1080

不需要socks5://前缀。 蛋疼。

go:
go内部实际上用git下载依赖。所以同git

curl:
socks需要用户名/密码
$ curl --proxy-user sockd:sockd --socks5 127.0.0.1:1080 'http://check-host.net/ip'

$ curl --proxy-user sockd:sockd --socks5-hostname 127.0.0.1:1080 'http://check-host.net/ip'

socks无用户名/密码
curl --socks5 192.168.0.1:1080 http://example.com/
curl--socks5-hostname 192.168.0.1:1080 http://example.com/
curl http proxy一次性设置
curl -x 192.168.10.100:8118 ip.gs (仅仅适用于http proxy。 socks proxy参考前文)
curl支持全局http_proxy设置
[root@k8s-master ~]# curl ip.gs
当前 IP:* 来自:中国江苏南京 电信
[root@k8s-master ~]# export http_proxy=http://192.168.10.100:8118
[root@k8s-master ~]# curl ip.gs
当前 IP:* 来自:美国加利福尼亚州洛杉矶
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: