Categories
技术讨论

利用phproxy建立web proxy

相信大家对下面这个画面非常的熟悉,访问某些网页的时候经常会提示说“到服务器的连接被重置”,原因大家都很清楚。phproxy-0.54-wiki-direct

这给我们带来了一些不必要的麻烦。采用phproxy建立一个web proxy则可以在一定程度上解决这个问题。

首先介绍一下phproxy,顾名思义,它是用php写的一个web proxy程序,当前最新的版本是phproxy-0.5 beta2,更新日期是2007-1-20。值得注意的是,不要将phproxy于phpproxy(PhpProxy)混淆。PhpProxy是另外一个web proxy程序,最新程序是2.1,发布于2004年,目前没有继续更新,所以存在不少的bug。

phproxy的使用非常简单,下载,解压释放到web服务器的一个目录即可。为了防止被滥用,可以通过.htaccess来设置该目录的访问权限。

phproxy-0.5b2 相对于以前的 0.4 版本来说做了很多改进,详情可以参考软件包内文档。整个程序界面简介大方,并且提供了一些配制参数。

Categories
技术讨论

“通天塔”路线图

进来ISA服务器又进行了升级,导致原始版本的“通天塔”计划受挫,在dy同志的重大发现之后,明白了其中的奥妙。为了带火种于人间,普罗米修斯要做出重大的冒险,那就是新版的“通天塔”计划。

“通天塔”计划完成以后,将打破天界之对火种的垄断,构造一个和谐的世界。

“通天塔”计划第一期包括“通天塔1号线”和“通天塔2号线”,到达终点分别需要8个节点和7个节点,路途险阻。

在此共享“通天塔”之路线图于世界,以期更多火种点燃。

通天塔路线图

Categories
技术讨论

使用VPN来保证网络监控下的信息安全

在去年11月的时候写了一篇“突破公司网络封锁,畅游无限网络”的文章,说明了在某公司那种严酷条件下如何上网。但是目前局域网监控日益流行,采用前面所述的裸奔的方法很难保证信息的安全。

在不加密的情况下,浏览的网页、收发的邮件以及聊天记录都会一览无余。msn和gtalk都是明文传输的,如何避免这个问题?

那就是在电脑和公司网络之外的服务器之间的数据进行加密。VPN是一个优秀的选择,如果服务器是Windows2003之类的操作系统,OS本身就提供的VPN功能,在此不展开说明。

如果是其他的系统,可以采用OpenVPN这个软件来搭建VPN服务器。OpenVPN是一个开放的免费软件,官方主页在http://www.openvpn.net,上面有详细的说明文档。OpenVPN有两种模式,分别是Bridge和Route方式,各有优缺点。

按照常理来说,采用vpn的tunnel之后,通过修改路由就可以直接上网,可以兼容各种协议而不需要在软件里面设置代理。但是在我的实际应用过程中,由于是安装了Microsoft ISA client,然后通过ISA Server出去,所以无论是Birdge还是Route的方式,所有的网站都可以ping通,但是除了vpn服务器之外,连接其他服务器的任何端口都会接失败。利用tracert来跟踪路由也是失败,所以不得已只好在服务器上再开ccproxy。

利用vpn的优点就是,只有vpn在ISA所开放的25或者110端口上跑,ccprxoy的代理服务则可以在任意端口都可以。这样对于服务器在另外一个私网内的情况来说,只需要在路由器上转发一个端口就可以了,从而也保证了代理服务器的安全性。

关于OpenVPN的安装以及配置在网上随便一搜就会有很多,不过还是推荐看官方网站的Mannual和HowTo,基本上所有的问题都解答了。当然我这个除外,如果有谁知道问题的解决办法,还请赐教。

Categories
技术讨论

突破公司网络封锁,畅游无限网络

2010.06.10补充:随着vps的价格降低,现在采用vps方案进行解决已经更加经济和合理。这样可以保持一台24小时在线的服务器,有着固定ip和更多的功能。

具体可参考下文,只需要在其中定制对应的代理端口即可。

在VPS上用3Proxy架设http代理和socks代理(Ubuntu)

——————-补充结束,以下为以前旧文———————————–

似乎现在总是喜欢来点噱头,不管怎么样下面总结一下怎么突破公司的BT网络限制实现自由上网的方法,希望不会被领导看到,也不要被同事们发扬广大。

公司是由科研院所改制的股份制企业,很多地方都体现着一种呆板和守旧,网络也不例外。

在公司局域网上网需要通过统一的ISA服务器(10.0.0.1)并以域帐号验证身份。对于大多数普通员工而言,只开放了smtp和pop的端口(这还是在2006年新年以后的恩赐,当时年终总结的时候,我在总结报告里提出作为程序研发人员,连email的权限都没有实在严重影响工作等等,反正后来就开放了,不知道是不是因为我提的原因),我当然也不例外。即使对于某些可以上网的同事,也是需要设置10.0.0.1:8080的代理才可以。

Microsoft的ISA防火墙还是非常强大和完善的,它通过在客户端安装ISA Firewall client,劫持socks通讯到ISA服务器,通过基于域帐号的身份验证和预设的规则决定是否允许通讯。详细资料参考Microsoft ISA Server: Integrated Edge Security Gateway Product。这样的体系几乎没有办法强制的绕过,所以只有变通处理。

由于开通了SMTP和POP的权限,也就是说,如果没有进行内容过滤的话,25和110端口应该是开放的,所以如果在外部在上述端口上开设代理服务器,那不就骗过去了?

由于这些端口具有明确用途,网上的公共代理没有开设在上述端口的代理服务器的,所以只好自己动手,拿自己家的电脑顶上。

代理软件有很多,最简单的就是CCProxy了,从网上下载回来,最新的版本是6.3.9,演示版支持3个用户,自己用就够了。启动CCProxy,在服务设置里面打开的http和socks两种代理,并分别把服务端口设置在25和110。同时在用户设置了帐户密码,禁止匿名使用。

在公司电脑上,启动ISA firewall client,打开ie,设置好代理为 221.111.33.123端口25,地址栏输入http://www.ucosoft.com,成功了。然后测试socks代理,flashget下载,cterm上bbs都没有问题,但是在使用msn上碰到了问题,发现不论是使用http代理或者是socks代理,都不能登录,或者登录之后不能显示联系人名单,不知道是否ISA服务器上做了特殊的限制,只好拿Google Talk(gtalk)代替,效果不错。

后来发现使用http代理,在访问某些https网站时可能白屏,不知道时ccproxy的bug还是其它原因,利用FreeCap封装利用socks代理则没有问题。

最后,由于服务器时adsl拨号,每次的ip都会变,为了不要每次都抄录ip,采用了花生壳的DDNS客户端软件,当前版本是3.9。

总结:

利用25和110端口在公司外部利用CCProxy开设代理服务器,在公司通过http、socks代理访问网络,对于不支持代理的软件,可以利用FreeCap来进行封装利用socks代理。同时利用花生壳的DDNS软件动态更新域名的ip,省却记忆ip的烦恼。

后记:

曾经想过一个问题,为什么现在才想到这些呢?原因似乎只有一个,现在需要