smbpasswd (managing SMB passwords)
Эта страница является переводом man smbpasswd(8)
из пакета Samba.
ИМЯ
smbpasswd
— утилита для изменения SMB паролей пользователей.
СИНТАКСИС
smbpasswd [-a] [-c <config file>] [-x] [-d] [-e] [-D debuglevel] [-n] \
[-r <remote machine>] [-R <name resolve order>] [-m] \
[-U username[%password]] [-h] [-s] [-w pass] [-W] [-i] [-L] [username]
ОПИСАНИЕ
Данная утилита является частью пакета samba(7)
.
Программа smbpasswd
выполняет несколько различных функции в зависимости от типа запуска , от лица пользователя root или нет. Если запущена от обычного пользователя, то позволяет пользователю изменять пароль используемый им в SMB сессии на любых компьютерах.
По умолчанию (если запущена без аргументов) будет пытаться сменить текущий SMB пароль пользователя на локальной машине. Это подобно работе программы passwd(1)
. В отличие от работы программы passwd
программа smbpasswd
не запускается от root, она работает в клиент серверном режиме и соединяется с локально запущенным демоном smbd(8)
. Для работы программы smbpasswd
нужен локально запущенный демон smbd(8)
. На компьютерах с UNIX зашифрованный пароль SMB обычно хранится в файле smbpasswd(5)
.
При запуске от обычного пользователя без дополнительных опций программа smbpasswd
попросит ввести старый пароль, а потом дважды ввести новый пароль, чтобы не получить ошибку при вводе нового пароля. Ввод паролей не будет отображаться на экран для безопастности. Если у вас был пустой пароль (строка "NO PASSWORD" в файле smbpasswd
) тогда просто нажмите кнопку <Enter>
на запрос ввода старого пароля.
Программа smbpasswd
может быть использована обычным пользователем для смены пароля на удаленном компьютере, на первичном контроллере домена Windows NT. Смотрите ниже опции -r
и -U
.
При запуске от пользователя root, программа smbpasswd
может создавать и удалать новых пользователей в файле smbpasswd
, а также может менять атрибуты пользователей в этом файле. Призапуске от пользователя root программа smbpasswd
напрямую обращается к локальному файлу smbpasswd
и позволяет вносить в него изменения даже если демон smbd
не запущен на локальной машине.
ПАРАМЕТРЫ
-a
Параметр определяет имя пользователя которое должно быть добавлено в локальный файл smbpasswd
с новым паролем (введите <Enter>
для старого пароля). Параметр проигнорируется если имя пользователя уже существует в файле smbpasswd
и будет рассматриваться как команда на смену пароля пользователя. Заметьте что по умолчанию passdb backends
требует, чтобы пользователь уже существовал в системном файле паролей (обычно /etc/passwd
), иначе запрос на добавления пользователя выполнен не будет.
Этот параметр используется только при запуске программы smbpasswd
с правами пользователя root.
-c
Эта опция используется для указания специфичного имени и пути к файлу конфигурации smb.conf отличного от установленного по умолчанию если это необходимо.
-x
Эта опция определяет имя пользователя для удаления из локального файла smbpasswd
.
Этот параметр используется только при запуске программы smbpasswd
с правами пользователя root.
-d
Эта опция отключит пользователя в локальном файле smbpasswd
. Она установит пользователю флаг 'D
' в параметрах пользователя в файле smbpasswd
. При активации этого параметра все попытки аутентификации через SMB с этим именем пользователя станут невозможны.
Если файл smbpasswd
в старом формате (до-Samba 2.0 формат) то в нем нет поля для паролья пользователя и команда потерпит неудачу. Более подробно о старом и новом формате файла smbpasswd
смотрите в man smbpasswd(5)
.
Этот параметр используется только при запуске программы smbpasswd
с правами пользователя root.
-e
Параметр вынудит активировать ранее отключенное имя пользователя в локальном файле smbpasswd
. Не будет иметь эффекта если учетная запись не была ранее отключена. После активации пользователь снова сможет аутентифицироваться по протоколу SMB.
При использовании файла smbpasswd
старого формата команда smbpasswd
вызовет ошибку активации учетной записи. Более подробно о старом и новом формате файла смотрите man smbpasswd(5)
.
Этот параметр используется только при запуске программы smbpasswd
с правами пользователя root.
-D debuglevel
Опция debuglevel
принимает целые значения от 0 до 10. Значение по умолчанию не определено, zero.
При увеличении значения опции будет получен более детальный лог файл об активности smbpasswd
. При уровне детализации 0 будут протоколированы только критические ошибки и серьезные замечания.
Уровни детализации выше 1 будут генерить большой объем лог файла и должны применяться только при возникновении проблем. Уровни выше 3 используются разработчиками и генерируют непонятную для пользователя информацию в лог файл.
-n
Определяет пользователя, которому нужно сбосьть пароль, тоесть установить пустой пароль в локальном файле smbpasswd
. Операция произведет запись строки "NO PASSWORD" вместо пароля пользователя в файл smbpasswd
.
Заметьте чтобы разрешить пользователям доступ к серверу Samba без пароля ("NO PASSWORD") администратор должен установить в секции [global]
файла smb.conf:
null passwords = yes
Этот параметр используется только при запуске программы smbpasswd
с правами пользователя root.
-r <remote machine name>
Опция позволит указать имя компьютера на котором нужно изменить пароль. Без этого параметра изменится локальный файл smbpasswd
. Параметр <remote machine name>
это NetBIOS имя сервера SMB/CIFS на котором нужно изменить пароль. Это имя преобразуется в IP адрес с использованием стандартного механизма разрешения имен во всех программах пакета Samba. Более подробно и для изменения механизма разрешения имен смотрите параметр -R <name resolve order
>.
Имя пользователя для которого будет изменен пароль – это текущее UNIX имя залогиненного пользователя. Более подробно для изменения пароля другого пользователя смотрите параметр -U username
.
Обратите внимание, что смена пароля домена Windows NT на удаленной машине возможна только на первичном контроллере домена Windows NT (Резервные контроллеры доменов имеют только копию для чтения пользовательской базы и не допустят изменения пароля).
Заметьте что компьютеры под управлением Windows 95/98 не имеют реальной пользовательской базы данных, в связи с этим невозможно изменить пароль пользователя указав в качестве удаленной машины компьютер под управлением Win95/98.
-R <name resolve order>
Параметр разрешает пользователю определить механизм разрешения имен NetBIOS для хоста к которому происходит подключение.
Варианты :"lmhosts
", "host
", "wins
" и "bcast
". Рассмотрим их попподробнее:
lmhosts
: Ищет IP адрес в Samba файлеlmhosts
. Если в файле не найдено соответствие NetBIOS имени (более подробно смотритеlmhosts(5)
), тогда используется любой другой алгоритм разрешения имени.host
: Разрешает имя хоста в IP адрес, используя системный файл/etc/hosts
, NIS или DNS метод. Этот метод разрешения имени в перационной системе зависит от инсталляции на IRIX или Solaris он может контролироваться файлом/etc/nsswitch.conf
). Заметьте что использование этого метода ограничено типом запроса 0x20 (server), в противном случае оно игнорируется.wins
: Запрос о пеобразовании имени в IP адрес просматривается в параметреwins server
. Если WINS сервер не определен этот метод игнорируется.bcast
: Производит широковещательный поиск на всех существующих локальных интерфейсах определенных в параметреinterfaces
. Это наименее надежный метод разрешения имен зависящий от хостов подключенных к локальной подсети.
Порядок поиска по умолчению lmhosts
, host
, wins
, bcast
и без этого параметра или же запись в smb.conf(5)
файле о порядке разрешения имен.
-m
Ключ указывает на то что будет изменена учетная запись компьютера (MACHINE account). В текущей версии Samba ключ используется с первичным контроллером домена.
Этот параметр используется только при запуске программы smbpasswd
с правами пользователя root.
-U username
Эта опчия используется только совместно с опцией -r
. При изменении пароля на удаленной машине, она позволяет пользователю указать имя пользователя на той машине на которой будет изменен пароль. Это позволит менять пароли пользователям имеющим разные имена пользователей на различных машинах.
-h
Выводит помощь по команде smbpasswd
, в зависимости от того под кем команда запущена под root или под обычным пользователем.
-s
Эта опция заставляет smbpasswd
молчать (т. е. не выдавать подсказок) и читать старый и новый пароли со стандартного ввода, а не из /dev/tty
(как делает комада passwd(1)
). Удобно для напмсания сценариев с использованием smbpasswd
.
-w password
Параметр используется если Samba собрана с поддержкой LDAP. Ключ -w
используется для указания пароля используемого в параметре ldap admin dn
. Заметьте что пароль сохраняется в файле secrets.tdb
и не отключается в admin's DN. Это значит что если значение ldap admin dn
меняется, то пароль придется менять вручную.
-W
ЗАМЕЧАНИЕ: Этот параметр отличается от -w
тем что пароль должен быть введен со стандатрного ввода (stdin).
Параметр используется если Samba собрана с поддержкой LDAP. Ключ -W
используется для указания пароля используемого в ldap admin dn
. Заметьте что пароль сохраняется в файле secrets.tdb
и не отключается в admin's DN. Это значит что если значение ldap admin dn
меняется, то пароль придется менять вручную.
-i
Параметр указывает smbpasswd
об изменении interdomain доверенной учетной записи. В настоящее время может использоваться с Samba как первичный контроллер домена NT. Учетная запись содержит информацию о других доверенных доменах.
Этот параметр используется только при запуске программы smbpasswd
с правами пользователя root.
-L
Запустить локально.
username
Определяет имя пользователя для всех root операций. Только root может определять этот параметр root доступа к изменению атрибутов локального файла smbpasswd
.
ЗАМЕЧАНИЕ
Стех пор как smbpasswd
работает в клиент серверном режиме с с локальным smbd
для не root пользователей необходимо чтобы был запущен демон smbd
. Общая проблема заключается в том что в записи allow hosts
или deny hosts
файла smb.conf(5)
пренебрегают дать доступ с localhost
к демону smbd
.
Кроме того команда smbpasswd
используется только если Samba настроена на использование зашифрованных паролей.
ВЕРСИЯ
Эта страница мануала верна для пакета Samba 3.0.
СМОТРИТЕ ТАКЖЕ
Автор
Изначально Samba и сопутствующие утилиты были разработаны Эндрю Тридгеллом (Andrew Tridgell). Сейчас Samba разрабатывается Samba Team в качестве Open Source проекта – напоминает то, как разрабатывается ядро Linux.
Изначально страницы man поддерживал Karl Auer. Исходные коды страниц man конвертировались в формат YODL и обновлялись для релизов Samba 2.0 Jeremy Allison. Переведено в формат DocBook для Samba 2.2 Джерардом Картером (Gerald Carter). Переведено в формат XML 4.2 для Samba 3.0 Александром Боковым.
Перевод на русский язык выполнил Айзятуллен Рамиль. Mail-to: argo-uln собака yandex.ru
Обсудить данный перевод можно в соответствующей ветке форума.
Трекбек
Ваш отзыв