被拦了怎么办(校园网知识普及)

ultmaster edited 6 年,1 月前

因为众所周知(?)的原因,校园网时不时会进入半关闭半开放的状态。这就对我们的 Proxy 技术提出了高要求,(既)能往里翻(,又能往外翻)。

最蠢的办法

使用学校给的客户端,学校给的说明,按部就班,连上了。

但这个客户端除了众所周知的长得丑之外,几乎没什么优点。

缺点包括:不方便;不支持代理转发(所以要一会连一会断,一会需要了再连);经常会莫名其妙连不上;隐藏一切技术细节连不上也不知道为什么(就像女朋友)。

Try Openconnect

Openconnect 其实是个不错的东西,除了(似乎)不支持 Windows。*nix 系的用户可以使用 openconnect。

openconnect vpn-cn.ecnu.edu.cn -u YOUR_STUDENT_ID --passwd-on-stdin

然后输出密码。

技术说明可以参看 文档

转发

Openconnect 实际上是不方便的。因为代理只能全局(会修改网关),所以不能设置规则,不能共享。:(

可以将 Openconnect 转发成 socks 代理。需要使用 ocproxy。

openconnect -b --script-tun --script "ocproxy -D YOUR_PORT -g -k 15" vpn-cn.ecnu.edu.cn -u YOUR_STUDENT_ID --passwd-on-stdin

技术说明可以参看 文档

-b 表示在后台运行,你就不用管啦。可以挂在服务器也可以挂在本地。我更倾向于服务器,因为更没有负担。

然后你就可以通过经典的 SwitchyOmega 设置 socks5 代理了。openconnect 挂在后台就不用管它了,全天候开着。(会不会出什么问题还有待观察)

(我被阿里云的安全组规则坑了好久。)

UPD: 2017/2/24

自动重连脚本:传送门

#!/bin/sh
while true; do
    openconnect --script-tun --script "ocproxy -D YOUR_PROXY_PORT -g -k 15" vpn-cn.ecnu.edu.cn -u YOUR_STUDENT_ID --passwd-on-stdin <<EOF
YOUR_STUDENT_PASSWORD
EOF
    sleep 1
done

安装依赖:

sudo apt-get install openconnect ocproxy

下一步

最好,最好,是能把 EOJ 迁出去。

次好的方法是能建一个站,然后全站走代理转发进来。

不过这些都是以后的事了,现在看来也没什么需求。

新年快乐。

Comments

妈耶

除夕快乐

10175102223

除夕快乐

不知道这个人是谁

除夕快乐

爱丽丝_青贝尔克

除夕快乐