我想知道如何授权(只允许一组命令) Linux控制台(bash)上的用户。到目前为止,我能够通过TACACS+对ssh用户进行身份验证,但授权不起作用。
这是我的tac_plus.conf文件,非常简化,用于测试:
accounting file = /tmp/tacacs.acc
#default authentication = file /etc/passwd
user=bart {
default service = deny
pap = cleartext "bart"
service = ppp protocol = lcp {
priv-lvl = 15
idletime = 10
}
cmd = telnet {
# permit specified telnets
permit 131\.108\.13\.[0-9]+
permit 128\.[0-9]+\.12\.3
}
}我如何与PAM (如果这是一种方式)接口,以便只授权用户使用TACACS指定的命令?我已经将PAM配置如下:
account sufficient pam_tacplus.so debug server=192.168.56.19 service=ppp protocol=lcp
auth sufficient pam_tacplus.so debug server=192.168.56.19
password sufficient pam_tacplus.so debug server=192.168.56.19
session sufficient pam_tacplus.so debug server=192.168.56.19 secret=testing123 service=ppp protocol=lcp另外,您是否知道这在SSH上工作,而不是在本地控制台登录上呢?
谢谢!
发布于 2014-10-24 10:16:06
经过一些研究后,我意识到我想要实现的目标似乎没有得到支持。
在linux中,通过TACACS不允许使用CLI命令级ACL,因此我最终使用TACACS进行身份验证(使用PAM和LDAP作为用户/passwd存储)和使用LDAP进行授权(组成员身份)。
https://serverfault.com/questions/632679
复制相似问题