Задача произвольной проверки сложности пароля пользователя при задании его из Windows можно решить скриптом, заданным параметром
'check password script (G)' в smb.conf.
При попытке изменения пароля пользователя из Windows новый пароль передается данному скрипту в STDIN. Код выхода '0' считается одобрением нового пароля, всё остальное - отказом от его смены. В GUI Windows при этом появляется окно с кратким описанием причин отказа по мнению Windows (слишком маленькая длина пароля, повторное задание того же пароля и т.п.).
Пример скрипта:
#!/usr/bin/perl -w
# Script for checking password complexity.
# Returns 0 on good password or any other on week.
#
# Should be attached to samba via smb.conf directive
# check password script = /var/lib/samba/scripts/check_passwords.pl %U %D %m %I %T
#
# Our policy for using passwords is:
# - length not less 8 symbols
#
#
use strict;
my $log = '/var/log/samba/check_passwords.log';
my $user = "$ARGV[0]" || "unknown_user";
my $domain = "$ARGV[1]" || "some_domain";
my $pc = "$ARGV[2]" || "some_pc";
my $ip = "$ARGV[3]" || "unknown_ip";
my $stamp = "$ARGV[4]" || `date`;
chomp $stamp;
my $pass = <STDIN>;
open LOG,">>$log" || die "Cann't open log file $logn";
print LOG "$stamp: user $user@$domain tried to change password from $pc($ip)n";
if (length($pass)<8) {
print LOG " Password rejected: too short!n";
close LOG;
exit 1;
}
print LOG " New password was accepted.n";
close LOG;
exit 0;
Дата создания: 2006-05-24 12:05:22 (Фетисов Н. А. (naf))
Последнее изменение: 2006-05-24 12:05:22 (Фетисов Н. А. (naf))
Владелец: Фетисов Н. А. (naf)
Версия: 1
Wiki::Admin Карта раздела Оглавление Изменения за сутки Изменения за неделю Изменения за месяц