在使用这篇文章之前,我已经用PAM和Berkeley DB设置了VSFTPD。 这是一篇很棒的文章,通过设置它非常容易。
现在我正在设置桑巴,我想要做同样的事情。 我已经看过关于在Samba中使用PAM的信息,但是没有关于Berkeley DB的信息。 如果这是不可能的,即使只是实施PAM将是很好的,但是那里的文章不是那么容易遵循…反正我。
任何人都可以在这里创build一个快速教程,我将能够使用设置Samba + PAM + Berkeley DB或Samba + PAM?
链接到一个很好的教程也可以。
更新:
我已经为PAMconfigurationvariables使用以下设置Samba smb.conf。
#security = user (Commented out, not sure if it should or shouldn't be with PAM) pam password change = no obey pam restrictions = yes encrypted passwords = no
使用vusers.txt和db4.8_load -T -t hash -f vusers.txt samba-virtual-user.db在VSFTPD文章的后面创build一个samba-virtual-users.db文件db4.8_load -T -t hash -f vusers.txt samba-virtual-user.db
并设置/etc/pam.d/samba如下:
#%PAM-1.0 auth required pam_userdb.so db=/etc/samba/samba-virtual-user account required pam_userdb.so db=/etc/samba/samba-virtual-user session required pam_loginuid.so
这个设置似乎与VSFTPD相当接近,我认为它应该起作用。 只要samba使用PAM和默认使用的/etc/pam.d/samba文件,那么所有/etc/pam.d/samba文件所需要做的就是将授权方法声明为使用.db创build的文件。
这对任何人都有意义吗? 任何人都可以看到任何理由为什么这是行不通的? 提示事情可能会尝试?
更新:
该机器现在在networking上显示,但是我无法login。 有没有什么办法来检查桑巴使用的身份validation方法? 任何与validation设置或当前使用的设置有关将是有益的…
Samba不能使用PAM,因为SMB协议指定了一组不兼容的散列,这些散列不能与PAM一起使用(需要明文密码或密码的某些哈希版本)。
这是我前一段时间向我解释的,当我试图完成同样的事情。
Samba需要使用“–with-pam”来构build,并安装了pam-devel软件包。 然后如问题中所述,将samba选项添加到pam.d并禁用encryption的密码。
此外,客户必须按照以下信息禁用encryption密码: http : //www.pctools.com/guides/registry/detail/68/
XP说明也适用于Win7。 在安装SP1之后,需要将registry项重新应用于Win7。
此外,由于Microsoft修补程序MS11-043,您必须使用超过7个字符的工作组名称,并使用最新版本的Samba(3.5.11或更高版本),其中包含修复MS11-043
这是来自Samba的howto :“在smb.conf中有一个叫做obey pam限制的选项,下面是来自SWAT中这个选项的在线帮助:当Samba被configuration为启用PAM支持(即–with-pam ),该参数将控制Samba是否遵守PAM的帐号和会话pipe理指令,默认行为是使用PAM进行纯文本authentication ,忽略任何帐号或会话pipe理,在这种情况下,Samba始终忽略PAM进行authenticationencryption密码= yes,原因是PAM模块不能支持在SMB密码encryption的情况下需要的质询/响应authentication机制默认:obey pam restrictions = no“