Назад | Перейти на главную страницу

Автоматическая синхронизация паролей Linux и Samba

Ничего не нашел в сети: я ищу автоматическую синхронизацию паролей linux с samba (НЕ Samba с Linux). Я написал веб-форму cgi, которая изменяет этот пароль непосредственно в теневом файле, используя зашифрованный пароль (по соображениям безопасности я не хочу, чтобы пароли сохранялись в виде открытого текста в файлах журнала). Без использования LDAP. Все будет хорошо, если пользователь впервые войдет в систему с помощью ssh, но у меня есть пользователи, которые используют только окна, поэтому я не могу спросить i.ex. секретарь для этого.

По сути, я сделал следующее: vi /etc/pam.d/common-password

password        required                        pam_smbpass.so nullok use_authtok use_first_pass

Я все же нашел следующие сайты, но все еще борюсь ...

-http://uranus.chrysocome.net/linux/smbfs/pam_smbpass.html

-https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/4/html/System_Administration_Guide/Configuring_a_Samba_Server-Encrypted_Passwords.html

вот код моего скрипта perl cgi:

# Crypt the password here so that it cannot be read in any logflie
my $cryptedShadowString = `echo "$new_passwd1"|openssl passwd -1 -stdin`;
chomp($cryptedShadowString);
(...)
open($result, '-|') || exec $SUDO, $EXECUTINGSCRIPT, $login, $old_passwd, $cryptedShadowString, $cryptedShadowString;

Это отправит зашифрованный пароль другому сценарию Perl, который записывает его непосредственно в теневой файл. (Все материалы защищены шибболетом, поэтому меня не волнуют хакеры со всего мира).

Я пробовал что-то подобное в сценарии выполнения, но, к сожалению, это не решение:

    # Do a first login to chat the new password to the samba password file:
sleep 2; # sleep a bit, for the next command:
system(" ( echo '') | exec '/bin/su' $login");

Кто-нибудь может мне помочь? Спасибо.

Именно для этого и нужен домен. Используйте либо домен AD, либо самбу в качестве DC, либо просто LDAP в качестве серверной части пароля. В настоящее время вы изобретаете колесо, и оно имеет форму треугольника.

Более того, вы пытаетесь получить помощь в полировке того, что, по вашему мнению, является решением, вероятно, типичной задачи, не говоря уже о том, что это за задача. Готов поспорить, это стандартно, если вы не проводите какое-то расширенное исследование (но мне очень жаль, ваш пост явно не производит такого впечатления).