在freeradius中将routeros中的拨号用户踢下线的方法
经过反复试验,终于可以在freeradius中将routeros 中的拨号用户强制踢下线,方法介绍如下:先在ros的终端中输入
/radius incoming set accept=yes
这样将开启routeros的断线请求消息,并监听在端口udp 1700。
然后使用radclient构造一个踢人的数据包。
格式如下:
echo "Acct-Session-Id=8100000c" > packet.txt
echo "User-Name=gtr" >> packet.txt
echo "Framed-IP-Address = 10.12.255.248" >> packet.txt
cat packet.txt | radclient -x 192.168.50.180:1701 disconnect 123
解释如下:
Acct-Session-Id=8100000c ,8100000c 是freeradius使用的数据库中radacct表的AcctSessionld字段的值,表示这个拨号用户的会话ID。
User-Name=gtr ,gtr是拨号用户的用户名。
Framed-IP-Address = 10.12.255.248 ,10.12.255.248是此拨号用户获取的IP地址。
radclient -x 192.168.50.180:1701 disconnect 123中,192.168.50.180:1701是routeros的IP地址和监听的端口,disconnect 表示发送断线消息,123是与radius与routeros 的通信密钥。
当执行此命令后,输出:
# echo "Acct-Session-Id=8100000c" > packet.txt
# echo "User-Name=gtr" >> packet.txt
# echo "Framed-IP-Address = 10.12.255.248" >> packet.txt
# cat packet.txt | radclient -x 192.168.50.180:1701 disconnect 123
Sending Disconnect-Request of id 83 to 192.168.50.180 port 1701
Acct-Session-Id = "8100000c"
User-Name = "gtr"
Framed-IP-Address = 10.12.255.248
rad_recv: Disconnect-ACK packet from host 192.168.50.180:1701, id=83, length=36
NAS-Identifier = "MikroTik"
NAS-IP-Address = 192.168.50.180
#
马上就可以看到拨号用户被踢下线。:) 顶。 好!。。 嘿嘿,这招够恨的啊 顶顶 OK ,不错 。支持一下。 顶!
是够狠的,呵呵
:L........... :L猛--狠--狂
哈哈哈,厉害 我到现在连freeradius都没装上,老大帮忙啊. 直接在 IP--Addresses--选择踢下线用户--Remove 就可以啦
radclient怎么用啊?
我现在用的是FREERADIUS,LINUX下的。但我的管理代码是ASP的。我想问一下,我怎么才能在ASP代码加上你说的下线请求啊?
还有RADCLIENT是不是需要安装啊?
我在我的RADIUS里没有找到这个命令啊。。。 想用编程实现,就是不知道怎样构造这个数据包 高手 晕..没看懂.
页:
[1]
2