我最近的任务是监督使用Windows和Linux机器的小型(< 25用户)网络的管理。域控制器是运行Samba 4.1.0作为ADDC的RHEL 6.4计算机。到目前为止,非常好。
我的一个任务是创建一个策略,如果他们输入密码错误5次,就会锁定用户帐户。管理层坚持认为这种功能曾经发挥作用,但已经持续了几个月。在做了一些研究之后,我发现pdbedit
应该能够做我想做的事情。运行pdbedit -P "bad logon attempts" -C 5
似乎运行正常,并通知我该值已更改为5.但是,我重新启动域控制器并尝试锁定我的测试域帐户,它仍然允许我输入尽可能多的错误密码想要并让我登录。
更多的谷歌搜索,我有机会samba-tool
似乎做了许多与pdbedit
相同的事情。运行samba-tool domain passwordsettings show
会显示一些我可以操作的密码设置,例如minimum password length
和maximum password age
,但没有关于锁定策略的设置。我将maximum password age
属性从60天更改为90天只是为了查看更改是否表现出来,而且确实如此。登录到Linux框会提示我在比我更改之前的30天内更改密码。因此,域似乎尊重samba-tool
但不是pdbedit
的密码设置。
现在我知道这两个实用程序都“指向”同一个数据库。运行samba-tool user list
和pdbedit -L
都显示相同的用户,添加一个实用程序的用户会使其显示在另一个实用程序中。
我试图让这个锁定政策正常工作,我已经在墙上撞了两天。我是一名开发人员,所以我对samba和系统管理一般都不太熟悉。有人能指出我正确的方向吗?
我的smb.conf,万一有帮助...
[global]
workgroup = LAB
realm = LAB.MY.COMPANY.NAME
# security = ads
netbios name = HOSTNAME
server role = active directory domain controller
idmap_ldp:use rfc2307 = yes
kerberos method = system keytab
name resolve order = host wins bcast
template shell = /bin/bash
dns forwarder = MY.DNS.IP.ADDRESS
log file = log.%m
log level = 1
winbind use default domain = yes
acl:search = no
client use spnego = no
passdb backend = tdbsam
idmap config * : range = 1000000-1999999
idmap config LAB : range = 100000000-199999999
idmap config LAB : default = yes
idmap config LAB : backend = rid
create mask = 0660
directory mask = 0770
force create mode = 0660
[all]
[my]
[shares]
答案 0 :(得分:0)
我猜你只需要一个较新版本的samba。我运行4.5.12并从samba-tool获得锁定选项。
答案 1 :(得分:0)
这里我使用的是samba版本4.7.6,正确的命令是:
sudo pdbedit -P "bad lockout attempt" -C 5 # (5 attempts)
sudo pdbedit -P "lockout duration" -C 1440 # (in minutes, for one day)