美文网首页程序员
和代理服务器搏斗

和代理服务器搏斗

作者: 随便写点 | 来源:发表于2013-12-12 22:55 被阅读602次

这几天挺忙的,大部分时间都浪费在折腾代理上了。因为客户的工作环境对信息安全特别看重,所有的办公机器默认都是不能上网的,如果要上,则要申请一个账号,然后配置一个代理。就是这个代理把我搞得半死。

代理有很多种使用方式,通常是为了让浏览器能够访问网站,而我现在的主要需求不是浏览器,而是所有其他非浏览器的使用,例如在Linux系统下安装配置软件、编译打包代码等等。这个代理是需要验证的,实际使用中碰到了各种麻烦,浪费了我不少时间。

其中之一就是通过apt或者yum等工具安装软件包,这个其实很好解决,只要配置http-proxyhttps-proxy两个环境变量就可以了,这两个环境变量一旦配置,Linux下很多程序都会默认使用,例如curl、wget,这是个非常不错的惯例,而且这两个变量还支持用户名和密码身份认证。如果有些ip或者域名不需要代理,可以设置no-proxy环境变量。除了wget这些工具,所有ruby、python等的包安装工具或者库都基本上会尊重系统代理设置。

但是这两个变量还没有解决所有问题。https协议的处理是一个麻烦的地方。如果代理服务器没有对https证书进行良好处理,那么你会发现很多https协议的资源你都没法正常访问,因为证书得不到验证,通常如果是本地证书验证失败,很多工具提供了不验证证书的选项,例如curl和wget都可以选择不进行证书验证(例如curl的--insecure),但是如果是代理服务端的证书验证失败,那么基本上你是没办法了。注意apt-get的一些源需要gpg证书,而这些证书往往都放在https资源上。

有一些工具是不太尊重Linux惯例的,java大概就属于其中一个。所有的java工具,如果要设置代理,大概都要通过jvm属性来设置,具体说就是通过-Dhttp.proxyHost-Dhttp.proxyPort-Dhttp.proxyUser-Dhttp.proxyPass一系列属性来设置代理信息,比如我在使用sbt的时候,就需要把这些参数附给sbt命令行工具;在使用maven的时候,则要在~/.m2/settings.xml里用maven的配置语法来设置代理信息。很遗憾的是当代理需要身份验证的时候,java的user和pass参数有时候会不工作,尤其是当代理是采用NTLM方式验证的时候。maven的文档里就明确指出NTLM代理身份验证可能是在maven下不工作的,这个时候我们就要想想别的办法。

我的解决办法就是在本地机器上在架设一个不需要验证的代理,将需要身份验证的代理作为这个代理的父级代理。这个代理是本身是支持采用身份认证方式去连接父级代理的,特别是如果有必要的话必须支持NTLM。目前很多代理工具都可以实现这一点,我选择cntlm�和polipo,这两个代理非常轻便,配置也很方便。其中cntlm还提供功能用来检测代理服务器是否采用ntlm协议,可以作为windows代理服务器和Linux代理服务器的桥梁。

总之,封闭的世界不仅闭塞了知识的流动,而且也极大的降低了工作效率,如果你不幸也在这样的环境中,希望这些经验对你有点用。

相关文章

  • 和代理服务器搏斗

    这几天挺忙的,大部分时间都浪费在折腾代理上了。因为客户的工作环境对信息安全特别看重,所有的办公机器默认都是不能上网...

  • 和蚊子搏斗

    夏天到了,蚊子的嗡嗡声也在耳边响起来了,办公室里一个年轻的姑娘感触最早,每天腿上都是蚊子咬的疙疙瘩瘩,痒痒异常,所...

  • 搏斗

    两个人对视,久久没有一个人出声。他们都明白,出声对自己没有好处,省点力气。 一个人实在等不及了,直接挥舞勾拳,想...

  • 搏斗

    我估计我要失败,熬到现在没出门是痛苦的。 脑袋里全是逛街买买买,我想身体可能分泌了什么奇怪的物质让我不能理性,身体...

  • 搏斗

    正午的太阳毫无保留地投射在面前的钢板上,但是这看起来生气磅礴的阳光无法对抗肃杀的酷寒。在短暂安静之下的斯大林...

  • 搏斗

    死亡的玫瑰与夏日搏斗了个够 在干裂的土壤中它已静静安眠 瞧 那带刺的焉瘪的茎耿直依然 而破碎的鲜红的花瓣沁入尘垢 ...

  • 搏斗

    两个狼在荒野中扔下了几个小崽出去觅食了。荒野中沙石多些,地势平坦,有着少的一些矮小的植物。远处有一片树林。两个狼在...

  • 搏斗

  • 搏斗

    一档节目中一位妈妈的故事总在不经意间想起。 一天中午与母亲一起看电视节目《妈妈咪》,一位妈妈在台上表演肚皮舞,白晃...

  • 搏斗

    一场殊死搏斗从此拉开串幕。猎豹站在那里,眼珠子骨碌碌地转着。尾巴竖起来,看起来随时都会奔跑起来! 在它...

网友评论

    本文标题:和代理服务器搏斗

    本文链接:https://www.haomeiwen.com/subject/orfctttx.html