FreeBSD tacacs+ 客户端

FreeBSD tacacs+ client

我一直在尝试 运行 FreeBSD 9.2 上的 tacacs+ 客户端,但它不起作用。服务器在 windows 使用 tacacs.net。我知道服务器正在工作,因为我可以让客户端在思科路由器上工作。但我无法让它在 FreeBSD 上运行。

这是我的 /etc/pam.d/tacacs 文件:

auth        sufficient    /usr/lib/pam_tacplus.so     debug    server = 10.0.0.9    secret=somesecret
account     sufficient    /usr/lib/pam_tacplus.so     debug    server = 10.0.0.9    secret=somesecret    protocol=login
session     sufficient    /usr/lib/pam_tacplus.so     debug    server = 10.0.0.9    secret=somesecret    protocol=login

和/etc/pam.d/login:

auth        include        tacacs
account        include        tacacs
session        include        tacacs

和/etc/tacplus.conf:

10.0.0.9        "somesecret"        15

问题是没有关于如何做到这一点的任何好的教程,我所做的一切都是基于一些论坛,我不确定它们是否正确。

如果你能帮助我,我将不胜感激。 谢谢,

编辑:我关闭了 windows 上的防火墙,现在可以连接了。但是现在当我尝试登录时,它提示我输入密码大约 5 次,然后它说“登录不正确。但密码是正确的。

EDIT2:我发现它验证正确并且 FreeBSD 得到它,但仍然没有登录。我的猜测是 "login" 服务正在其他地方寻找登录信息,但找不到 TACACS+ 用户。我已经阅读了 login.conf 文件,但还不能理解它。

好吧,我找到了如何让它发挥作用。在所有这些配置之后,您需要在客户端系统上本地添加您想要登录的 TACACS+ 用户。例如,您在 TACACS+ 服务器上有一群用户,现在您想使用用户 "one" 登录客户端。您需要在本地添加此用户,无需任何进一步配置,您将被设置。 问题是,您无法知道 TACACS+ 服务器上的所有用户;所以我还在寻找更好的方法。

更新 更好的方法是使用 pam_exec.so。您可以编写一个将用户添加到系统的脚本;并让 pam_exec 执行它。