服务器使用命令行连接校园网(easyconnect),北京信息科技大学版。
服务器连接校园网的作用包括但不限于课程表开发、校园论坛开发。北京信息科技大学使用深信服开发的 EasyConnect 作为校园网连接软件,虽然 EasyConnect 拥有 Linux 桌面版程序,但是安装 Linux 桌面程序不仅会占用大量系统资源,而且 EasyConnect 在使用期间经常会无缘无故掉线,无法提供稳定服务。
在通过一些咨询与寻求帮助之后,我得知已经有大神将 EasyConnect 封印在 Docker 里,实现了命令行操作与自动登录(永不掉线),项目在 GitHub 开源,所以在接下来我将围绕如何在 Linux 命令行下使用 Docker 实现校园网自动登录并对外暴露端口提供思路。
搭建前准备:
- Docker
- 云服务器(我以腾讯云 Centos7 为例,Ubuntu 使用方式类似)
大致架构:
- 用户请求服务器 1080 端口。
- 服务器将请求转发至 Docker 容器内部 1080 端口。
- 容器访问校园网,获得数据并原路返回。
步骤:
第一步:安装 Docker
登录服务器,安装 Docker ,依次执行以下指令(如果服务器已经安装 Docker 的同学可以跳过这一步):
- 安装 Docker
- 启动 Docker
- 设置 Docker 自启动
yum install -y docker
systemctl start docker
systemctl enabledocker
第二步:运行 EasyConnect 命令行版
在服务器命令行中输入以下语句,Docker 将自动下载并运行 EasyConnect 命令行版(其中请修改成你自己的学号和校园网密码)。
docker run --cap-add NET_ADMIN --device /dev/net/tun -ti -p 0.0.0.0:1080:1080 -e EC_VER=7.6.8 -e CLI_OPTS="-d 222.249.253.5 -u 你的学号 -p 你的校园网密码" hagb/docker-easyconnect:cli
Docker 部分命令详解:
- –device /dev/net/tun:绑定网络设备。
- –cap-add NET_ADMIN:授予绑定网络设备的权限。
- -p 0.0.0.0:1080:1080:将服务器 1080 端口映射至容器 1080 端口。
- -d:校园网地址(必须为 ip 形式!)。信息科大的校园网远程登录地址是
https://vpn.bistu.edu.cn
,经查 ip 指向222.249.253.5
。 - -u:你的学号。
- -p:你的校园网密码。
登录之后,如果出现这个界面则表示你已经将服务器连接至校园网!不过要想使用我们还有最后一步。
第三步:开放服务器安全组限制
登录腾讯云服务器网页,选择管理 → 安全组管理 → 手动添加安全组规则 → 开放 1080 端口。
(安装结束)
本地测试
在你的本地计算机(不再使用云服务器)打开命令行输入以下语句使用云服务器作为代理访问校园网服务,其中将备注处修改为你的云服务器 ip 地址,按回车执行。
curl --socks5-hostname socks5://你的云服务器ip地址:1080 https://info.bistu.edu.cn/
如果你能看到下述页面,说明你已经成功将 EasyConnect 运行在服务器上(永不掉线),让我们欢呼一下吧!!!
版权归原作者 ThinkStu 所有, 如有侵权,请联系我们删除。