Albo źle szukałem, albo nie ma odpowiedzi na moje pytanie. Podam może więcej szczegółów:
Mój plik smb.conf
Kod: Zaznacz cały
[global] workgroup = TEST
netbios name = ubuntusrv
server string = Zasoby domeny
preferred master = Yes
domain master = Yes
domain logons = Yes
map to guest = Bad User
map to guest = Bad Password
security = user
enable privileges = yes
encrypt passwords = true
null passwords = no
passdb backend = ldapsam:ldap://127.0.0.1
ldap admin dn = cn=admin,dc=ubuntusrv,dc=com
obey pam restrictions = yes
pam password change = yes
#pam password change = Yes
ldap delete dn = Yes
ldap user suffix = ou=Users
ldap group suffix = ou=Groups
ldap idmap suffix = ou=Users
ldap machine suffix = ou=Computers
ldap suffix = dc=ubuntusrv,dc=com
ldap ssl = off
idmap backend = ldap:ldap://127.0.0.1
idmap uid = 10000 - 20000
idmap gid = 10000 - 20000
#vfs objects = acl_xattr
nt acl support = Yes
#profile acls = Yes
add user script = /usr/sbin/smbldap-useradd -m "%u"
delete user script = /usr/sbin/smbldap-userdel "%u"
add machine script = /usr/sbin/smbldap-useradd -w "%u"
add group script = /usr/sbin/smbldap-groupadd -p "%g"
add user to group script = /usr/sbin/smbldap-groupmod -m "%u" "%g"
delete user from group script = /usr/sbin/smbldap-groupmod -x "%u" "%g"
set primary group script = /usr/sbin/smbldap-usermod -g '%g' '%u'
ldap passwd sync = yes
unix password sync = no
passwd program = /usr/sbin/smbldap-passwd %u
passwd chat = "Changing password for*\nNew password*" %n\n "*Retype new password*" %n\n"
username map = /etc/samba/smbusers
time server = yes
log level = 2
syslog = 0
log file = /var/log/samba/log.%m
max log size = 100000
hide unreadable = yes
hide dot files = yes
guest account = nobody
#name resolve order = wins lmhosts hosts bcast
max open files = 500
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=8192 SO_RCVBUF=8192
logon script =
logon path =
os level = 34
#wins support = yes
wins server = 172.17.24.1
create mask = 0700
guest ok = Yes
hosts allow = 127.0.0.1;172.17.24.0/255.255.255.0;192.168.0.0/255.255.0.0
#write cache size = 65536
#kernel oplocks = no
#oplocks = no
#level2 oplocks = no
veto oplock files = /*.pdf/*.PST/
Z tego co wyczytałem, to mógłbym skorzystać z pam_cracklib.so i opcji reject_username, ale to chyba działa dla hasła, a nie dla smbldap-passwd. Starałem się wyszukać też opcji w plikach .ADM dla Win
dows NT, aby odpowiednie zabezpieczenia importować do samby, ale też poniosłem klęskę.
Dodałem jedną opcję do pliku /usr/sbin/smbldap-passwd, mianowicie:
Kod: Zaznacz cały
if ($pass eq $user) { print "New password is equal or the same as login!\n";
exit (10);
}
Ale to działa tylko w przypadku gdy zmieniam hasło
użytkownika z poziomu ssh, a mnie interesuje ten wyjątek aby działał przy zmianie hasła przez Ctrl + Alt + Del z poziomu Windowsa.
Czy istnieje jakiś sposób jak to ustawić? Synchronizacja haseł Win
dows -> Samba -> Win
dows działa poprawnie. Bardzo proszę o pomoc.
Podam jeszcze wersję samby i ldap:
Samba: 3.6.3
LDAP: 2.4.28