Archive for March, 2011

March 23rd, 2011

对ssh和vpn代理服务进行二次中转的探讨

  现有北京和美国VPS各一个分别为VPS_BJ和VPS_CA,流量和配置都比较给力,xen虚拟化,从我所在的客户端直接访问北京VPS非常极速,但访问美国VPS有点偏卡,主要原因是我客户端所在的接入网不给力。另一方面,国内最近对https盯的很严,特别是对翻墙小白来说,访问Gmail等服务有点困难。人家方sir有6个vpn,俺不能比,俺只能把手头有限的几个服务发挥到极致。

  想法一:能通过53端口的OpenVPN蹭网,并且能蹭上后让翻墙小白无障碍访问Gmail等服务。做法是在VPS_BJ上搭建53端口的OpenVPN实现蹭网。然后在此VPS_BJ上另跑一个ssh -D进程连接到VPS_CA,实现动态端口转发,从而在VPS_BJ上创建了一个Socks5代理。客户端只要通过此OpenVPN蹭上网后,然后设置代理为VPS_BJ上创建的代理端口即可无障碍访问Gmail等服务。

 image

  其中VPS_BJ上的ssh进程参数是

1
ssh –CND 10.0.0.1:23 username@vps_ca

  这里有几点是需要注意的:首先,bind_address一定要写成VPN内网IP,这样Socks5代理就只在内网中有效,保证了这个代理只有连上OpenVPN后才能使用,极有效的防止了滥用。其次端口最好绑定一个1000以内的常见但不用的端口,如23 telnet,原因你懂的,不过绑定1024以内的端口需要root权限,谨慎操作。最后,为了防止这个ssh连接死掉或者网络故障挂掉,非常有必要结合inittab中的respawn或者自己写expect脚本实现ssh的自动重连,本文在此不做讨论。

  想法二:我从客户端直接ssh -D连接到VPS_CA有点卡,经常掉线很郁闷。希望VPS_BJ能在中间起个中转的作用,看似绕了一个弯,但实际上速度却更快。实现方法也非常简单明了,直接在VPS_BJ上起一个ssh -L的本地端口转发进程即可,千万不要忘了-g参数,以在所有的interfaces上监听被转发的端口:

1
ssh -g -L 7001:vps_ca:22 username@vps_ca

  之后从PC照旧ssh -D连接VPS_BJ的被转发端口即可。

image

  上述解决方案从VPS_CA通过ssh -R反向连回来也行,如下操作:

1
ssh –R *:7001:localhost:22 username@vps_bj

  需要注意的是,因为ssh -R也是默认只监听lookback这个网口的,需要修改VPS_BJ的sshd_config打开GatewayPorts,同时bind_address参数要写成*才行。

image

  显而易见,从复杂性上,反向远程端口转发不如正向的本地端口转发的方案。另外,上述两个方案也同样需要有对ssh连接进行断线或定时自动重连的考虑。

Tags: , , , , , ,

March 5th, 2011

Bicycle Driving to 798

  早晨10点多睡起来,宿舍的雄提议,骑车刷街去798,带头大哥和我立马响应,给力啊!这几天北京的天气不错,加上郁闷了一个冬天了,本来就特别想出去放放风。

  提前在Google地图上规划了路线。三环辅路的自行车道上经常停着机动车,而四环因为隔离出了独立的自行车道而且没什么停车,也没有三环堵,所以就走的四环,然后从四元桥沿机场高速走没多久就到798了。算了一下单程大概十七八公里,来回共35公里吧。

  去的路大半程都很顺利,特别是路过北辰桥时,速度可以提到30km/h多,温暖的阳光洒在路上,三个追风的男孩儿,非常美。从四元桥往京密路拐的时候颇费了些周折,因为路牌标识基本都是给机动车准备的,然后自行车和机动车道又是分开的,加上四元桥又拆成了东西两座桥。不过还好我们手机中有地图和GPS。

  798一如往常,各种艺术品,各种文艺青年,各种好车,在里面穿插逗留了大概一个小时左右,计划从原路返回。路过奥体中心时,总觉得这么回去还有点遗憾,雄又临时提议绕一圈奥体公园和森林公园,结果又是一呼两应,给力啊!

  果然给力,在五环上的一段和奥林东路上借着两个下坡,码表速度显示已经飙到了38.5km/h和39km/h,太刺激了!特别是第二段,我极力的加速,虽然仍然没有突破40km/h,不过已经非常cool了,后来mm说都快赶上她开车的速度了,哈哈。

  最后满足的回了学校,加上中间逗留时间,共费时3:52:35,极速39.0km/h,总里程52.47km,差不多正好从我们家到蓝村火车站的车程。感谢雄,感谢带头大哥,朋友神马的最给力!

bicycle_driving_798

bicycle_driving_798_sigma