大学生活里少不了使用校园网的经历,你是否还被打开电脑后先得运行锐捷客户端才能使用网络烦恼着?在我看来,这一「拨号上网」的方式真的非常落后了。我们可以把锐捷认证放到路由器上,第一扩展了网络的可用性,第二减少了启动电脑打开锐捷客户端才能上网的麻烦。

锐捷认证程序

Mentohust 是一个支持 Window、Linux、macOS 下锐捷认证的程序。它支持锐捷客户端 V2、V3 校验算法,完全兼容锐捷。

OpenWrt 版 Mentohust

熟悉路由器使用的人都应该知道 OpenWrt1 。它是一个功能齐全又容易修改的路由器操作系统。没错就像 Android 一样,它是开源的,可修改的。有关路由器的购买指南以及刷机教程可戳《大学宿舍路由器选购指南》。

在路由器操作系统的发展上产生了一些知名的第三方路由器固件比如 Padavan、Pandorabox、LEDE。在这些第三方固件里,有的在编译时就带上了锐捷认证,固件功能齐全操作简单,如 Padavan;有的则比较简洁,需要自己动手实现。

Padavan 的管理界面

OpenWrt 版 Mentohust 现由 HustLion 接续在开发和管理2 。但是,由于路由器种类多样,一些路由器并没有现成编译好的 Mentohust 版本,因此需要自己编译。我所使用的 Mentohust 文件是对应我的路由器型号的,所以不需要另外编译。

动手实现

准备

  • WinSCP 是 Windows 上的一款开源的 SFTP 客户端,我们用 Winscp 来向路由器传输文件。
  • PuTTY 是 Windows 上的一款开源的SSH客户端,我们用 PuTTY 来 SSH 连接到路由器。

传输

WinSCP 的登录界面

1. 打开 WinSCP,在 File protocol 的选项里选择 SCP,在 Host name 输入路由器的 IP,其余不变。

2. 首次连接会弹出弹窗,选择「是 (Y)」即可。然后输入路由器的登录名和密码验证登录。

3. WinSCP 上左栏是本机电脑的文件目录,右栏是路由器的根目录,显示为 /root/。先在右栏进入到 /usr/sbin,再在左栏中找到 mentohust 文件,右键选择 Upload。

上传 mentohust 至 /usr/sbin

4. 在 /etc/ 里建立 mentohust 文件夹,将锐捷客户端安装目录里的 8021x.exe、W64N55.dll、SuConfig.dat 这三个文件上传到 /etc/mentohust

Upload 至/etc/mentohust

登录

PuTTY 的登陆界面

1. Host name 输入路由器 IP,其余不变。登陆后输入用户名和密码,大致显示如下图。

PuTTY上输入的命令

2. 输入四行命令:

chmod +x /usr/sbin/mentohust

mkdir -p /jffs/tmp

mkdir -p /jffs/etc/mentohust

mentohust

3. 根据校园网实际情况,选择网卡,输入账号密码,组播地址,DHCP方式,是否后台运行。

配置

欢迎使用MentoHUST        版本: 0.3.1
Copyright (C) 2009-2010 HustMoon Studio
人到华中大,有甜亦有辣。明德厚学地,求是创新家。
Bug report to http://code.google.com/p/mentohust/issues/list

用法:    mentohust [-选项][参数]
选项:    -h 显示本帮助信息
        -k -k(退出程序) 其他(重启程序)
        -w 保存参数到配置文件
        -u 用户名
        -p 密码
        -n 网卡名
        -i IP[默认本机IP]
        -m 子网掩码[默认本机掩码]
        -g 网关[默认0.0.0.0]
        -s DNS[默认0.0.0.0]
        -o Ping主机[默认0.0.0.0,表示关闭该功能]
        -t 认证超时(秒)[默认8]
        -e 心跳间隔(秒)[默认30]
        -r 失败等待(秒)[默认15]
        -l 允许失败次数[0表示无限制,默认8]
        -a 组播地址: 0(标准) 1(锐捷) 2(赛尔) [默认0]
        -d DHCP方式: 0(不使用) 1(二次认证) 2(认证后) 3(认证前) [默认0]
        -b 是否后台运行: 0(否) 1(是,关闭输出) 2(是,保留输出) 3(是,输出到文件) [默认0]
        -y 是否显示通知: 0(否) 1~20(是) [默认5]
        -v 客户端版本号[默认0.00表示兼容xrgsu]
        -f 自定义数据文件[默认不使用]
        -c DHCP脚本[默认dhclient]
        -q 显示SuConfig.dat的内容(如-q/path/SuConfig.dat)
例如:	mentohust -uusername -ppassword -neth0 -i192.168.0.1 -m255.255.255.0 -g0.0.0.0
-s0.0.0.0 -o0.0.0.0 -t8 -e30 -r15 -a0 -d1 -b0 -v4.10 -fdefault.mpf -cdhclient
注意:使用时请确保是以root权限运行!

这是完整的 Mentohust 配置的介绍。要修改可以参考示例输入命令修改,也可以找到 mentohust.conf 编辑。

进阶

如何设置开机运行呢?3

1. 用 WinSCP 进入 /etc/init.d/ 新建 mentohust 的文件,输入:

#!/bin/sh /etc/rc.common
START=99
STOP=10
start()
{
mentohust >/dev/null 2>&1
}
stop()
{
sync
mentohust -k >/dev/null 2>&1
}
restart()
{
stop
start
}

2. 在 /etc/rc.local 语句中的 exit 0 前插入:

if [ -x /usr/sbin/mentohust ]; then
     /usr/sbin/mentohust
fi

并保存。

3. 用 PuTTY 登陆路由器,执行命令:

chmod +x /etc/init.d/mentohust

/etc/init.d/mentohust enable

最后重启路由。

扩展网络

锐捷客户端的麻烦在于只限定一个用户登陆校园网。当你有两台电脑要接入校园网时,十分不方便。另外,虽然锐捷客户端有一个小锐 Wi-Fi 的功能来开热点,但是需要电脑开着的情况下才能使用,同样麻烦。

现在,路由器在开机后自动登陆校园网,通过路由器的两个 LAN 口可以使两台电脑同时接入校园网,通过路由器的 Wi-Fi 就能接入更多的设备了。