免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3506 | 回复: 3
打印 上一主题 下一主题

[samba] 求助:samba用ads方式,认证有问题。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-04-02 14:01 |只看该作者 |倒序浏览
rhel5.4,用自带的samba-3.0.33-3.14.el5,用ads方式认证,没有问题。
后来,在同一台机子上,我下载了一个samba-3.0.33-3.14的源代码包编译,smb.conf用的是同一个,
其他的krb的配置都没动。
用编译的smbclient去登陆的时候,提示登录失败,
如果在linux下建立用户(administrator),没设密码。
然后再用编译的smbclient去登陆,就提示成功了。

这是为什么啊,看了源代码,好像这个时候还是要到本地的passwd文件中去查找用户的。
那自带的samba怎么不需要呢?
配置又都是一样的啊,奇怪奇怪。。。。

哪位高人对samba,特别是ads方式的比较懂的,不吝赐教啊。。
谢谢。

论坛徽章:
0
2 [报告]
发表于 2010-04-02 17:34 |只看该作者
呵呵,难道真没人知道么?

论坛徽章:
0
3 [报告]
发表于 2010-04-06 15:47 |只看该作者
..................,真没人知道阿

论坛徽章:
0
4 [报告]
发表于 2010-04-06 17:00 |只看该作者
从日志上看:
[2010/04/06 15:46:23, 5] lib/username.c:Get_Pwnam_internals(93)
  Trying _Get_Pwnam(), username as uppercase is CLP/ADMINISTRATOR
[2010/04/06 15:46:23, 5] lib/username.c:Get_Pwnam_internals(102)
  Checking combinations of 0 uppercase letters in clp/administrator
[2010/04/06 15:46:23, 5] lib/username.c:Get_Pwnam_internals(10
  Get_Pwnam_internals didn't find user [CLP/administrator]!
[2010/04/06 15:46:23, 5] lib/username.c:Get_Pwnam_alloc(131)
  Finding user administrator
[2010/04/06 15:46:23, 5] lib/username.c:Get_Pwnam_internals(75)
  Trying _Get_Pwnam(), username as lowercase is administrator
[2010/04/06 15:46:23, 5] lib/username.c:Get_Pwnam_internals(93)
  Trying _Get_Pwnam(), username as uppercase is ADMINISTRATOR
[2010/04/06 15:46:23, 5] lib/username.c:Get_Pwnam_internals(102)
  Checking combinations of 0 uppercase letters in administrator
[2010/04/06 15:46:23, 5] lib/username.c:Get_Pwnam_internals(10
  Get_Pwnam_internals didn't find user [administrator]!
[2010/04/06 15:46:23, 5] auth/auth.c:check_ntlm_password(273)
  check_ntlm_password: winbind authentication for user [administrator] FAILED with error NT_STATUS_NO_SUCH_USER
[2010/04/06 15:46:23, 2] auth/auth.c:check_ntlm_password(319)
  check_ntlm_password:  Authentication for user [administrator] -> [administrator] FAILED with error NT_STATUS_NO_SUCH_USER

说是找不到administrator用户,
跟踪了下源代码,最终调用了getpwnam()这个函数去取得用户名的。
man一下,
The  getpwnam()  function returns a pointer to a structure containing the broken-out fields of the record in the password  database (e.g., the local password file /etc/passwd, NIS, and LDAP) that matches the user name name.
这个函数是从/etc/passwd,NIS和LDAP的缓冲中取得用户名的。
感觉和samba最有关系的就是LDAP。
就是不知道该怎么设置了。。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP