当使用默认的sambaconfiguration启动时,需要更改哪些设置以使samba通过pam对其用户进行身份validation?
我试图通过pamvalidationsamba用户,特别是pam_pwdfile。 我遇到的麻烦是与桑巴configuration文件,我似乎无法得到正确的文件的全球部分的设置组合。
这是来自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“
当使用默认的sambaconfiguration启动时,需要更改哪些设置以使samba通过pam对其用户进行身份validation?
啊,这听起来像是你在马前面有车。 听我一会儿…
有很多信息在这里丢失 – 我正在假设,当你的意思是“身份validation”,你的意思是“我的networking文件共享客户端(通常是基于Windows)试图连接到由Samba提供的共享或资源和所呈现的凭证需要使用本地/etc/passwd文件进行validation。“ 在这种情况下,你不能从这里到达那里…没有很多的箍。 我也不知道你需要使用多less个服务器,如果他们运行的是Windows,BSD,Linux或者你所拥有的。 我不知道最终目标是什么 – 如果你只是向局域网上的本地用户提供服务,或者你打算以其他方式使用它。
Samba通常拥有自己的身份validation钩子,不依赖于/etc/passwd因为存储NTLM散列规定的要求。 没有哈希=没有authentication。 所以有一个问题。 幸运的是,有几个解决scheme。
首先是使用现有的Active Domain控制器。 通常情况下,你build立了Winbind,并为用户和组在/etc/nsswitch.conf设置了一个垫片,这可以解决这个问题(winbind然后处理authentication请求,而不是pam)。 这需要一些手工操作,但最容易设置,因为用户帐户是由Windows Server控制和维护的,而且您需要基本上不需要Samba干预。
第二个是使用LDAP。 我没有使用这种方法,但我听说它是相当受欢迎的。 它仍然需要另一台服务器。
第三个是把你的Samba安装到PDC中。 如果您没有外部AD控制器,则可以使用您正在使用的Samba安装来设置自己的NT4风格的PDC,尽pipe您仍然需要通过*.tdb文件对用户进行身份validation 。 smbpasswd命令用于此目的。