准备工作:

 (1)一个可以刷openwrt固件的路由器,如大多人使用的crazybox版本的路由.

 (2)一个可用的edu账号.

 (3)一个浏览器(firfox,chrome)

下面开始:

    一:刷openwrt固件,如下:

      )去openwrt官网查看 你路由型号的固件版本,然后下载。

      )刷固件到路由器,相应的crazybox都有一个breed控制台(如果不是crazybox,你就得给路由器刷一个breed或者不死uboot).

      )安装wget,路由器自带的wget是简版的

    至此路由器准备成功

    二:分析认证服务器需要的用户信息:

      表面需要的是用户名和密码,但是其实不止这些,我们可以用浏览器来看看,到底发送了什么信息:

         按F12调出开发者工具,然后点击登录

至此我们可以看到请求头,请求url,以及发送的数据,我们点击编辑和重发可以看到如下图片,我们要的就是请求主体里面的东西:

类似如下的格式(这里很重要):

请求URL:http://172.16.245.50/include/auth_action.php

请求主体:action=login&username=123456789@yd&password=123456&ac_id=2&user_ip=10.26.16.7&nas_ip=&user_mac=&save_me=1&ajax=1

我多次拿wget工具模拟登录时发现,web认证只需要这个  请求主体  以及  请求url(这是在路由器里面时)

但是在我自己的电脑上(debian 9.5)需要加请求头,具体的原因不明,也没有去研究。这里为了路由器就只加 请求主体

其中有一点对写shell脚本是一个重点:user_ip=10.26.16.7,这个需要自己写脚本获取当前路由器连接edu获取的ip

 现在一切准备就绪,可用电脑的wget试一下,格式如下(红色部分字体分别填写自己的账号,密码,自己电脑从edu获取的ip地址):

wget  --post-data="action=login&username=@yd&password=&ac_id=2&user_ip=10.26.17.14&nas_ip=&user_mac=&save_me=1&ajax=1" http://172.16.245.50/include/auth_action.php

当然如果你需要加上请求头,可自行查看wget的用法,如下面部分http的用法:

编写脚本让路由器启动时自动登录(当然请求url,账号,密码自己改):

#!/bin/sh
ip=`ifconfig | grep 'inet addr'| grep -vE '(192|127)' | awk '{print $2}' | awk -F ':' '{print $ 2}'`
sleep
wget --post-data="action=login&username=123456789@yd&password=123456&ac_id=2&user_ip=$ip&nas_ip=&user_mac=&save_me=1&ajax=1" http://172.16.245.50/include/auth_action.php
rm -f /root/auth_action.php

更改脚本的权限:

#脚本名因人而异
chmod login.sh

最后添加,为启动后自己运行:

打开 /etc/rc.local文件,加入脚本运行命令: sh /root/login.sh

当然脚本路径因人而异

ps:至此整个自动登录完成,后续可以将脚本更加优化,使其能够断网自连

实现路由器自动登录校园网(edu)的更多相关文章

  1. ubuntu设置mentohust开机自动登录校园网

    设置环境: ubuntu14.04  64位 无法忍受校园网ubuntu锐捷客户端登录每次开机都要输一大串命令 step1 首先下载mentohust,链接http://code.google.com ...

  2. 在CMD下启动vmware、Xshell连接虚拟机以及控制Chrome浏览器自动执行js登录校园网

    标题有点长,主要是写个bat出来玩玩, (1)不用每次都手动关闭mysql服务(我不想把它设为手动启动,有强迫症) (2)然后希望每次vmware能自动连上虚拟机 (3)以及每次Xshell都能自动启 ...

  3. python 脚本自动登陆校园网

    学校的校园网每次重开电脑时都要重新打开浏览器进行网页登录,繁琐的操作比较麻烦,于是便写了个python的脚本进行自动登录,下面说下具体的操作过程: 1. 方法说明 博主采用的python的 reque ...

  4. 如何修改路由器的登录IP地址?

    如何修改路由器的登录IP地址? 因为有多个路由器,为了区分不同路由器,我们可以修改它的登录IP,而且修改后,可以在连接的电脑上直观地知道所连接的是哪一台路由器 买回来的路由器,一般默认的登录地址是19 ...

  5. Linux开机自动登录(文本模式)

    • Linux系统启动登录过程 以RedHat/CentOS为例,Linux系统Level3模式下从启动到登录的整个过程大致如下: 1> 加载BIOS信息:包含了CPU/显卡/内存/硬盘/网卡等 ...

  6. expect实现自动登录

    自动登录主机(ssh) 建脚本item2login.sh,包含如下内容 #!/usr/bin/expect set timeout 30 spawn ssh -p [lindex $argv 0] [ ...

  7. cookie自动登录的实现

         cookie自动登录是指把用户登录的信息按期限(自定)保存在客户端,当用户请求登录时判断客户端用没有cookie对象,有的话填充值,否则登录界面的输入框为空,不进行填充.      登录界面 ...

  8. windows 2003自动登录的具体步骤

    在win2003系统中,使用最多的可能就是远程操作了,关于远程操作的那些事很多用户还是有些迷茫的.如果win2003系统远程重启后,要重新登录系统十分的麻烦,如何才能实现重启后的自动登录呢?让高手告诉 ...

  9. 如何设置phpMyAdmin自动登录和取消自动登录

    如何设置phpMyAdmin自动登录? 首先在根目录找到config.sample.inc.php复制一份文件名改为config.inc.php(如果已经存在 config.inc.php 文件,则直 ...

随机推荐

  1. HDU 1515

    简单题,直接用STACK模拟整个过程. 模拟出栈时,应注意保护现场,等到递归完成后返回. #include <iostream> #include <string.h> #in ...

  2. 自定义控件三部曲之动画篇(四)——ValueAnimator基本使用

    前言:不要让别人的无知断送了你的梦想,永远坚信你所坚信的. 相关文章: <Android自定义控件三部曲文章索引>:http://blog.csdn.net/harvic880925/ar ...

  3. Linux - 进程管理,ps与top

    一个运行的程序,可能有多个进程. PID进程ID. UID启动进程的ID. 进程所属组GID. 进程的状态R运行.S睡眠.Z僵尸. 父进程管理子进程,父进程终止的时候子进程也会终止. 常用的组合为: ...

  4. 淘宝CDN系统架构

         存储与架构分论坛上,淘宝网技术委员会主席,淘宝网核心工程师章文嵩向我们详细介绍了淘宝网图片处理与存储系统的架构.章文嵩博士的演 讲日程包括了 淘宝的整个系统架构.淘宝图片存储系统架构,淘宝网 ...

  5. subprocess学习

    转自http://blog.csdn.net/imzoer/article/details/8678029 subprocess的目的就是启动一个新的进程并且与之通信. subprocess模块中只定 ...

  6. Open CASCADE Technology(OCCT)概述

    OCCT模块结构图 基础类: Foundation Classes module underlies all other OCCT classes; 模型数据: Modeling Data modul ...

  7. 基本的Mysql语句

    操作文件夹(库) 增 create database db1 charset utf8; 查 # 查看当前创建的数据库 show create database db1; # 查看所有的数据库 sho ...

  8. ROS-TF-广播

    前言:将海龟的坐标系变换广播到TF. URDF文件的描述是在相对坐标上进行的,运动起来就需要考虑机器人各个连杆的相对位置关系.TF的诞生就是为了自动管理这些相对关系下的坐标变换的,而我们需要做的就是给 ...

  9. BZOJ 1537 cdq分治

    思路: 我只是想写一下cdq-- 二维偏序 一维排序 一维cdq分治 (我忘了归并排序怎么写了,,,) 写了个sort- 复杂度是O(nlog^2n) //By SiriusRen #include ...

  10. 关于用户禁用Cookie的解决办法和Session的图片验证码应用

    当用户通过客户端浏览页面初始化了Session之后(如:添加购物车,用户登陆等),服务器会将这些session数据保存在:Windows保存在C:\WINDOWS\Temp的目录下,Linux则是保存 ...