尝试使用Radius Server进行身份验证时,cakephp app无法正确重定向

时间:2017-11-15 23:31:56

标签: cakephp radius

我是一个我试图建立的cakephp应用程序。它是管理使用FreeRadius进行身份验证的wifi热点。我试图做到这一点,以便当用户尝试通过热点(NAS?)连接到互联网时,他们会被重定向到例如www.example.com/connect上的外部登录页面。该网址上的代码将确保用户已付费,或检查他们是否未列入黑名单。一旦我的代码很满意,据我所知,我应该在radius数据库中创建一些记录。

我总共制作了8条记录:

$sql = "INSERT INTO radcheck (`username`,`attribute`,`op`,`value`) VALUES ('$sid', 'Password','==','$password_encry')";
$sql = "INSERT INTO radusergroup (`username`,`groupname`,`priority`) VALUES ('$sid', 'TestGroup','1')";
$sql = "INSERT INTO radreply (`username`,`attribute`,`value`,`op`) 
$sql = "INSERT INTO radreply (`username`,`attribute`,`value`,`op`) 
$sql = "INSERT INTO radreply (`username`,`attribute`,`value`,`op`) 
$sql = "INSERT INTO radreply (`username`,`attribute`,`value`,`op`) 
$sql = "INSERT INTO radreply (`username`,`attribute`,`value`,`op`) 
$sql = "INSERT INTO radreply (`username`,`attribute`,`value`,`op`) 

然后据我所知,我的意思是在网址中使用用户名和密码重定向回热点控制器,它应该尝试使用radius服务器进行身份验证。

我知道半径服务器设置正常,因为我重写(在蛋糕应用程序中)已故同事的一些代码并且他的代码工作正常。似乎可能是cakephp如何重定向事物的问题?以下是我在cakephp代码中使用的内容。它与旧代码中的版本完全相同(用户名和密码可能不同!)

$link = $mikrotik_link_login_only . "?dst=" . $redirect ."&username=" . $sid . "&password=" .$pass;
header("Location: ".$link);

以上适用于旧代码。自动半径数据库中还会有两个记录。其中一个在radacct表中,另一个在radpostauth表中。 $ mikrotik_link_login_only是控制器的IP地址。它使用用户名和密码对radius服务器进行身份验证,但是对于我的代码,当代码点击该重定向时,它最终会在我的应用程序中的另一个页面上,如果我签入服务器日志,则似乎没有尝试进行身份验证。在我已故的同事代码中,在进行重定向后,radius数据库中会有更多条目,代码现在将允许用户访问互联网。

我无法看到他的代码所做的其他事情,我不会以某种方式假设它的蛋糕?

如果有人能给我任何建议或指示,我真的很感激。在这里敲我的头几天。

0 个答案:

没有答案