武汉城市职业学院校园网OpenWrt自动认证

针对武汉城市职业学院校园的自动认证shell

密码URL编码

在编写脚本前你需要将你的校园网密码进行URL编码并保存编码后的结果,如果你的密码并没有存在特殊字符,那么编码后的结果与编码前的结果是一样的。

依赖下载

 opkg update    #更新软件列表
 opkg install curl  #下载curl

脚本编写

cd /root    #切换到root目录
touch login.sh  #创建脚本文件
vim login.sh    #编辑文件

将下面代码复制进login.sh并配置文件中的accountpassword信息

#!/bin/bash

ACCOUNT='你的校园网账号'
PASSWORD='编码后的密码'
LOG_FILE="/var/log/campus_net_login.log"

IP=$(ifconfig wan | grep 'inet addr' | grep -oE '([0-9]{1,3}.){3}[0-9]{1,3}' | head -n 1)

ping -c 1 -W 5 www.baidu.com > /dev/null

if [ $? -ne 0 ]; then
    echo "$(date): 网络不通,尝试登录。" >> "$LOG_FILE"
    echo "获取到IP地址: $IP" >> "$LOG_FILE"

    curl "http://10.1.20.14:801/eportal/portal/login?callback=dr1003&login_method=1&user_account=%2C0%2C$ACCOUNT&user_password=$PASSWORD&wlan_user_ip=$IP&wlan_user_ipv6=&wlan_user_mac=000000000000&wlan_ac_ip=&wlan_ac_name=&jsVersion=4.2&terminal_type=1&lang=zh-cn&v=5343&lang=zh"

    service network restart >> "$LOG_FILE" 2>&1
else
    echo "$(date): 网络状态正常。" >> "$LOG_FILE"
fi

添加计划任务

crontab -e  #编辑计划任务文件

在文件中另起一行添加

* * * * * /root/login.sh #每分钟触发一次 检测认证是否掉线

至此校园网自动认证就部署完成了!

脚本说明

执行逻辑:脚本每分钟执行一次,执行时会检测当前网络是否正常,如果网络断开,将自动发送get请求完成身份认证,发送请求后会自动重启以太网服务,重启时间由设备决定,正常大概在一分钟之内。

日志文件:脚本每次执行都会将当前网络状态输出至日志文件,你可以通过以下命令查看日至文件

cat /var/log/campus_net_login.log #查看日志文件

返回主页<<<

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
下一篇