首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pam_tacplus.so和sshd:跳过用户验证吗?

pam_tacplus.so和sshd:跳过用户验证吗?
EN

Unix & Linux用户
提问于 2014-08-20 18:51:48
回答 1查看 2.2K关注 0票数 1

我正试图作为客户端在freebsd盒上实现tacacs身份验证。这个盒子实际上是一个网络设备,它应该将这个配置内置到它的cli/ui中,但是没有,因为它是在freebsd上构建的,所以它内置了帕姆_tacplus.so库。

我的问题是,我希望通过我们的tacacs服务器进行身份验证,但我不希望在设备上配置本地帐户。下面是pam.conf文件:

代码语言:javascript
复制
su      auth        sufficient  pam_rootok.so
su      auth        sufficient  pam_unix.so

login   auth            required        pam_unix.so
login   account         required        pam_unix.so
login   password        required        pam_permit.so
login   session         required        pam_permit.so

ftpd    auth            required        pam_unix.so

sshd    auth            sufficient      pam_tacplus.so  template_user=testuser      
sshd    auth            required        pam_unix.so
sshd    account         required        pam_unix.so
sshd    password        required        pam_permit.so
sshd    session         required        pam_permit.so

telnetd auth            required        pam_unix.so

passwd  password        required        pam_unix.so     no_warn try_first_pass nullok

other   auth            required        pam_unix.so

tacacs服务器的ip地址存储在/etc/tacplus.conf中,由于我在tacacs服务器的日志中看到了故障,我相信通信是成功的。此外,我还可以在端口49上建立TCP会话到服务器。

当我试图以jimbob的身份通过ssh登录时,我在/var/ log /auth.log中看到了以下内容:

代码语言:javascript
复制
<auth.info> Lab-2 sshd[4952]: Invalid user jimbob from 10.0.0.1
<auth.info> Lab-2 sshd[4952]: input_userauth_request: invalid user jimbob
<auth.info> Lab-2 sshd[4952]: Failed none for invalid user jimbob from 10.0.0.1 port 52069 ssh2
<auth.info> Lab-2 sshd[4952]: Failed publickey for invalid user jimbob from 10.0.0.1 port 52069 ssh2
<auth.info> Lab-2 sshd[4952]: Postponed keyboard-interactive for invalid user jimbob from 10.0.0.1 port 52069 ssh2
<auth.info> Lab-2 sshd[4952]: Postponed keyboard-interactive/pam for invalid user jimbob from 10.0.0.1 port 52069 ssh2
<auth.err> Lab-2 sshd[4953]: error: ssh_msg_send: write

在四处搜索之后,似乎适用。然而,这涉及到由nsswitch.conf控制的NSS,它并不存在于这个系统中。NSS似乎没有一个tacacs插件;我不确定在我的例子中,如果有,这会不会有什么关系。

那么,在访问pam_tacplus.so库之前,是否有一种方法可以跳过检查用户的本地passwd文件?我猜想,如果存在,template_user=选项将启动并尝试使用“testuser”,这是作为本地用户存在的:

代码语言:javascript
复制
pw user show testuser
testuser:*:1003:1003::0:0:User &:/home/testuser:/usr/bin/bash
EN

回答 1

Unix & Linux用户

发布于 2017-07-13 15:03:21

你可以像我一样很容易做到这一点。你说得对,你应该使用nsswitch.conf文件。然而,您将不得不安装一个第三方程序libnss,它代表所有对一。它将根据配置好的tacacs+服务器验证非本地用户,然后按照您的意愿进行操作。

您可以在这里获得该包及其详细信息:https://github.com/donapieppo/libnss-ato

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/151229

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档