Chinaunix首页 | 论坛 | 博客
  • 博客访问: 591322
  • 博文数量: 135
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1654
  • 用 户 组: 普通用户
  • 注册时间: 2013-07-09 16:16
个人简介

围城

文章分类

全部博文(135)

文章存档

2019年(3)

2018年(7)

2017年(14)

2016年(15)

2015年(34)

2014年(9)

2013年(53)

我的朋友

分类: LINUX

2015-05-18 17:53:43

玩openwrt的人都会知道LuCI,因为每次进入系统的时候会有大大的字显示了luci interface configuration,有了这个接口确实不错,方便傻瓜般的配置我们的界面。
最近把802.1x认证给弄进去了,为了实现能卖出去的目标,实现LuCI的界面配置还真的挺重要的。
网上一找,还真的傻眼了,没有啊没有。就百度一篇,那人写的还让人相当纠结,看不懂。
那就去官网看吧 http://luci.subsignal.org/

在官网的resource中可以找到一个

别的先不说,直接就奔我们的主题吧

硬是要翻译的话,就是怎么写一个模块,ok,我就是想要写802.1x的认证模块

按照官方的说法,要完成一个模块并用到里面需要两个东西,

第一个我们先找到usr/lib/lua/luci/controller在里面建立一个文件夹,也就是我们的模块名称,就叫smustar吧

在smustar下面再写我们模块的主文件就叫smumodule.lua吧

参考官网,我们的模块写法应该是这样子的

module(“luci.controller.smustar.smumodule”, package.seeall)

function index()
entry({“admin”, “network”, “802.1x”}, cbi(“smustar-smumodule/netifaces”), “Network interfaces”, 30).dependent=false
end

第一句话是声明一下这个模块了,没什么可说的。

第二句话就是我们模块的主函数,其中呢要告诉它我们的入口,与其说入口,不如说就是告诉它是要admin登录才能用的,是在network这个菜单下,名字呢,叫做802.1x。模块执行的程序呢在smustar-smumodule/netifaces这里。

好了各位又郁闷了smustar-smumodule/netifaces是什么东西,这是我们要建立的另外一个文件,上面不是说要两个么

我们找到路径/usr/lib/lua/luci/module

在下面建立文件夹smustar-smmodule建立文件netfaces.lua

好了接下来就是要在netfaces.lua写我们的程序了,参考官网所说的这个什么luci最酷的地方,也就是修改config文件

不要说你不懂什么是config文件了,最简单的比如network。

我们在/etc/config下面建立一个配置文件叫smuset吧

那这就是一个config文件的写法

config  ‘interface’  ‘smustar’

option ‘user’ ‘youruser’
option ‘pass’ ‘yourpass’

ok这个config文件就是这样子了接下来写netfaces.lua

m = Map(“smuset”, “smustar”) — We want to edit the uci config file /etc/config/smustar 这里是我们要配置的文件了,默认的路径它已经能够区别的,不用管了
s = m:section(TypedSection, “interface”, “smustar”) — Especially the “interface”-sections读出里面的interface区域来
s.addremove = true — Allow the user to create and remove the interfaces

s:option(Value, “user”, “youruser”)这个能就是一个input即一个输入框了读取的是smuset中的user项。youruser是提示语罗

key=s:option(Value, “pass”, “your password”)

key.password=true; 设置为星号的密码输入框

return m — Returns the map
好了文件就完成了,之后我们进入luci配置界面

在network下可以看到了802.1x选项

进入后有账号和密码输入框 改一下之后

save&apply一下,发现密码被修改了。我们的802.1x配置界面就做好了!

阅读(1526) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~