Инструменты пользователя

Инструменты сайта


smbldap-tools:smbldap-tools

Smbldap-tools

Smbldap-tools это набор скриптов на Perl для управления пользователями и группами домена Samba в каталоге LDAP.

Его могут использовать администраторы и пользователи Linux:

https://gna.org/projects/smbldap-tools/


За основу этой статьи взят материал из источника: J.erome Tournier - Smbldap-tools. Руководство пользователя (Перевод Тренин Сергей, аkа greyzy Версия : 1.7, от 22 апреля, 2008).

Оригинал на английском языке: Smbldap-tools User Manual (Release: 0.9.3 ) Jérôme Tournier (Revision: 1.7 , generated April 22, 2008), он взят из пакета smbldap-tools (0.9.9-1)

smbldap-tools_0.9.9-1_all.deb, оригинал
DEB-пакеты

Установка

apt-get install smbldap-tools

Настройка

Создание структуры каталога

Вы можете сделать начальную структуру LDAP каталога, используя скрипт smbldap-populate. Чтобы сделать это, проверьте, что учетная запись, описанная в файле smbldap_bind.conf, которая имеет полномочия для связи с первичный LDAP сервером, так же является административной учетной записью вашего LDAP каталога.

smbldap-populate

Ключи, которые могут быть использованы при запуске скрипта представлены в таблице:

Ключ Описание действия ключа Значение по умолчанию
-u uidNumberпервый uidNumber, который будет назначен1000
-g gidNumber первый gidNumber, который будет назначен1000
-a userЛогин администратораAdministrator
-b userЛогин гостяnobody
-e fileЭкспорт файла инициализации
-i fileИмпорт файла инициализации

В большинстве случаев для построения структуры LDAP каталога достаточно выполнить команду:

smbldap-populate
 
Using builtin directory structure
Using the smbldap-tools scripts Revision : 1.7
adding new entry: dc=idealx,dc=com
adding new entry: ou=Users,dc=idealx,dc=com
adding new entry: ou=Groups,dc=idealx,dc=com
adding new entry: ou=Computers,dc=idealx,dc=com
adding new entry: ou=Idmap,dc=idealx,dc=org
adding new entry: cn=NextFreeUnixId,dc=idealx,dc=org
adding new entry: uid=Administrator,ou=Users,dc=idealx,dc=com
adding new entry: uid=nobody,ou=Users,dc=idealx,dc=com
adding new entry: cn=Domain Admins,ou=Groups,dc=idealx,dc=com
adding new entry: cn=Domain Users,ou=Groups,dc=idealx,dc=com
adding new entry: cn=Domain Guests,ou=Groups,dc=idealx,dc=com
adding new entry: cn=Print Operators,ou=Groups,dc=idealx,dc=com
adding new entry: cn=Backup Operators,ou=Groups,dc=idealx,dc=com
adding new entry: cn=Replicator,ou=Groups,dc=idealx,dc=com
adding new entry: cn=Domain Computers,ou=Groups,dc=idealx,dc=com

FIXME После этого шага, если вы больше не хотите использовать учетную запись cn=Manager,dc=idealx,dc=com, вы можете создать специальную учетную запись для Samba и smbldap-tools. Для подробностей см. Изменение административной учетной записи.

Строка cn=NextFreeUnixId,dc=idealx,dc=org используется только для присвоения номеров uidNumber и gidNumber при создании новых пользователей и групп. По умолчанию нумерация (см. таб. 1) начинается с номера 1000. Для изменения этого числа используются ключи –u и –g. Например, если вы хотите, чтобы нумерация начиналась с числа 1500, при создании структуры каталога используйте такую команду:

smbldap-populate -u 1500 -g 1500

Изменение административной учетной записи

FIXME

Изменение административной учетной записи (ldap admin dn в файле smb.conf)

Если вы больше не хотите использовать учетную запись, описанную атрибутами cn=Manager,dc=idealx,dc=com, вы можете создать специальную учетную запись для сервера Samba и набора скриптов smbldap-tools. Чтобы сделать это, заведем пользователя с именем, например samba при помощи следующей команды (для подробностей в синтаксисе данной команды обратитесь к п. 4.2.1):

smbldap-useradd -s /bin/false -d /dev/null -P samba

После ввода этой команды вам будет предложено ввести пароль для создаваемого пользователя, в нашем примере он тоже будет samba.

После этого измените соответствующим образом файл

/etc/smbldap-tools/smbldap_bind.conf
slaveDN="uid=samba,ou=Users,dc=idealx,dc=com"
slavePw="samba"
masterDN="uid=samba,ou=Users,dc=idealx,dc=com"
masterPw="samba"
ldap admin dn = uid=samba,ou=Users,dc=idealx,dc=com

Не забудьте после этого записать пароль в файл secrets.tdb:

smbpasswd -w samba

FIXME в файле /etc/openldap/slapd.conf вам стоит добавить полномочий пользователю samba

smbldap.conf

FIXME Переменные заданные в этом файле доступны для просмотра всем.

chmod 644 /etc/smbldap-tools/smbldap.conf

SID

Идентификатор домена.

SID="S-1-5-21-3703471949-3718591838-2324585696"

Можно получить SID, используя команду (сервер Samba при этом должен быть запущен):

net getlocalsid

sambaDomain

Имя домена Samba

masterLDAP

Адрес основного LDAP сервера

masterLDAP="127.0.0.1"

masterPort

Порт основного LDAP сервера

masterPort="389"

slaveLDAP

Адрес подчинённого LDAP сервера, нужно указать DNS имя или IP адрес

slaveLDAP="127.0.0.1"

slavePort

Порт подчинённого LDAP сервера

slavePort="389"

ldapTLS

Указание на использование TLS соединение для связи с LDAP серверами

ldapTLS="1"

verify

Тип проверки сертификата (none, optional, require).

verify="require"

Подробнее см. Net::LDAP, секция start tls section

cafile

Файл формата PEM, включающий сертификат для CA которым будут доверять LDAP серверы.

cafile="/etc/smbldap-tools/ca.pem"

clientcert

Файл, содержащий клиентский сертификат.

clientcert="/etc/smbldap-tools/smbldap-tools.iallanis.com.pem"

clientkey

Файл, содержащий приватный ключ, который соответствует клиентскому сертификату.

clientkey="/etc/smbldap-tools/smbldap-tools.iallanis.com.key"

suffix

Корень в БД LDAP

suffix="dc=idealx,dc=com"

usersdn

Ветвь с записями о пользователях, эта ветвь не связана со значением suffix.

usersdn="ou=Users,${suffix}"

computersdn

Ветвь с записями о компьютерах, эта ветвь не связана со значением suffix.

computersdn="ou=Computers,${suffix}"

groupsdn

Ветвь с записями о группах, эта ветвь не связана со значением suffix.

groupsdn="ou=Groups,${suffix}"

idmapdn

Ветвь с записями Idmap (используется, если сервер Samba является членом домена), эта ветвь не связана со значением suffix.

idmapdn="ou=Idmap,${suffix}"

sambaUnixIdPooldn

Параметр, описывающий где хранятся следующие свободные uidNumber и gidNumber, эта ветвь не связана со значением suffix.

sambaUnixIdPooldn="cn=NextFreeUnixId,${suffix}"

scope

Область поиска.

scope="sub"

hash encrypt

Способ хэширования паролей пользователей

hash encrypt="SSHA"

Этот параметр используется для хранения паролей unix и связан с параметром userPassword

crypt salt format

crypt salt format="%s"

Если у параметра hash encrypt установлено значение CRYPT, вы можете установить тип шифрования salt

По умолчанию используется значение %s, но большинство систем способны генерировать пароль с хэшированием MD5, если вы установите $1$%.8s

Это не обязательный параметр.

userLoginShell

Оболочка пользователя по умолчанию.

userLoginShell="/bin/bash"

Значение хранится в атрибуте loginShell

userHome

Путь к домашней папке пользователя.

userHome="/home/%U"

Значение хранится в атрибуте homeDirectory

userGecos

Описание учётной записи пользователя unix

userGecos="System User"

defaultUserGid

по умолчанию основная группа для учётных записей пользователей.

defaultUserGid="513"

Значение хранится в атрибуте gidNumber

defaultComputerGid

по умолчанию основная группа для компьютеров

defaultComputerGid="550"

Значение хранится в атрибуте gidNumber

skeletonDir

место, где находится «скелетная» директория, являющаяся шаблоном для директорий пользователей.

skeletonDir="/etc/skel"

Этот параметр используется лишь в том случае, если вы явно укажете домашнюю папку пользователя в ходе создания нового пользователя.

defaultMaxPasswordAge

Параметр задаёт, через какое время (в днях) должен быть изменён пароль пользователя

defaultMaxPassword="55"

userProfile

Общий ресурс Samba для хранения профилей пользователей

userProfile="\\PDC-SMB3\profiles\%U"

Значение хранится в атрибуте sambaProfilePath

userHomeDrive

Буква диска, использующаяся в Windows для назначения домашней папки.

userHomeDrive="K:"

userScript

по умолчанию имя скрипта, использующегося при входе пользователя в систему. Если не определено, автоматически будет использоваться скрипт username.cmd

userScript="%U"

значение хранится в атрибуте sambaProfilePath

mailDomain

Домен, добавляемый к атрибуту пользователя mail.

mailDomain="idealx.org"

with smbpasswd

Параметр, устанавливающий, будет ли использоваться команда smbpasswd для установки пароля пользователя Samba (вместо утилиты mkntpwd).

with smbpasswd="0"

значение может быть 0 или 1.

smbpasswd

Путь, по которому находится программа smbpasswd.

smbpasswd="/usr/bin/smbpasswd"

with slappasswd

Параметр, устанавливающий, будет ли использоваться команда slappasswd для установки пароля пользователя Unix (вместо утилиты Crypt:: librairies)

with smbpasswd="0"

Значение может быть 0 или 1.

slappasswd

Путь, по которому находится slappasswd.

smbpasswd="/usr/sbin/slappasswd"

Пример файла smbldap-tools.conf

Пример файла smbldap-tools.conf

/etc/smbldap-tools/smbldap-tools.conf
# $Id: smbldap.conf 139 2012-08-07 11:11:37Z fumiyas $
#
# smbldap-tools.conf : Q & D configuration file for smbldap-tools
 
#  This code was developped by IDEALX (http://IDEALX.org/) and
#  contributors (their names can be found in the CONTRIBUTORS file).
#
#                 Copyright (C) 2001-2002 IDEALX
#
#  This program is free software; you can redistribute it and/or
#  modify it under the terms of the GNU General Public License
#  as published by the Free Software Foundation; either version 2
#  of the License, or (at your option) any later version.
#
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with this program; if not, write to the Free Software
#  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
#  USA.
 
#  Purpose :
#       . be the configuration file for all smbldap-tools scripts
 
##############################################################################
#
# General Configuration
#
##############################################################################
 
# Put your own SID. To obtain this number do: "net getlocalsid".
# If not defined, parameter is taking from "net getlocalsid" return
SID="S-1-5-21-2252255531-4061614174-2474224977"
 
# Domain name the Samba server is in charged.
# If not defined, parameter is taking from smb.conf configuration file
# Ex: sambaDomain="IDEALX-NT"
sambaDomain="DOMSMB"
 
##############################################################################
#
# LDAP Configuration
#
##############################################################################
 
# Notes: to use to dual ldap servers backend for Samba, you must patch
# Samba with the dual-head patch from IDEALX. If not using this patch
# just use the same server for slaveLDAP and masterLDAP.
# Those two servers declarations can also be used when you have
# . one master LDAP server where all writing operations must be done
# . one slave LDAP server where all reading operations must be done
#   (typically a replication directory)
 
# Slave LDAP server URI
# Ex: slaveLDAP=ldap://slave.ldap.example.com/
# If not defined, parameter is set to "ldap://127.0.0.1/"
slaveLDAP="ldap://ldap.example.com/"
 
# Master LDAP server URI: needed for write operations
# Ex: masterLDAP=ldap://master.ldap.example.com/
# If not defined, parameter is set to "ldap://127.0.0.1/"
masterLDAP="ldap://ldap.example.com/"
 
# Use TLS for LDAP
# If set to 1, this option will use start_tls for connection
# (you must also used the LDAP URI "ldap://...", not "ldaps://...")
# If not defined, parameter is set to "0"
ldapTLS="1"
 
# How to verify the server's certificate (none, optional or require)
# see "man Net::LDAP" in start_tls section for more details
verify="require"
 
# CA certificate
# see "man Net::LDAP" in start_tls section for more details
cafile="/etc/smbldap-tools/ca.pem"
 
# certificate to use to connect to the ldap server
# see "man Net::LDAP" in start_tls section for more details
clientcert="/etc/smbldap-tools/smbldap-tools.example.com.pem"
 
# key certificate to use to connect to the ldap server
# see "man Net::LDAP" in start_tls section for more details
clientkey="/etc/smbldap-tools/smbldap-tools.example.com.key"
 
# LDAP Suffix
# Ex: suffix=dc=IDEALX,dc=ORG
suffix="dc=example,dc=com"
 
# Where are stored Users
# Ex: usersdn="ou=Users,dc=IDEALX,dc=ORG"
# Warning: if 'suffix' is not set here, you must set the full dn for usersdn
usersdn="ou=Users,${suffix}"
 
# Where are stored Computers
# Ex: computersdn="ou=Computers,dc=IDEALX,dc=ORG"
# Warning: if 'suffix' is not set here, you must set the full dn for computersdn
computersdn="ou=Computers,${suffix}"
 
# Where are stored Groups
# Ex: groupsdn="ou=Groups,dc=IDEALX,dc=ORG"
# Warning: if 'suffix' is not set here, you must set the full dn for groupsdn
groupsdn="ou=Groups,${suffix}"
 
# Where are stored Idmap entries (used if samba is a domain member server)
# Ex: idmapdn="ou=Idmap,dc=IDEALX,dc=ORG"
# Warning: if 'suffix' is not set here, you must set the full dn for idmapdn
idmapdn="ou=Idmap,${suffix}"
 
# Where to store next uidNumber and gidNumber available for new users and groups
# If not defined, entries are stored in sambaDomainName object.
# Ex: sambaUnixIdPooldn="sambaDomainName=${sambaDomain},${suffix}"
# Ex: sambaUnixIdPooldn="cn=NextFreeUnixId,${suffix}"
sambaUnixIdPooldn="sambaDomainName=${sambaDomain},${suffix}"
 
# Default scope Used
scope="sub"
 
# Unix password hash scheme (CRYPT, MD5, SMD5, SSHA, SHA, CLEARTEXT)
# If set to "exop", use LDAPv3 Password Modify (RFC 3062) extended operation.
password_hash="SSHA"
 
# if password_hash is set to CRYPT, you may set a salt format.
# default is "%s", but many systems will generate MD5 hashed
# passwords if you use "$1$%.8s". This parameter is optional!
password_crypt_salt_format="%s"
 
##############################################################################
# 
# Unix Accounts Configuration
# 
##############################################################################
 
# Login defs
# Default Login Shell
# Ex: userLoginShell="/bin/bash"
userLoginShell="/bin/bash"
 
# Home directory
# Ex: userHome="/home/%U"
userHome="/home/%U"
 
# Default mode used for user homeDirectory
userHomeDirectoryMode="700"
 
# Gecos
userGecos="System User"
 
# Default User (POSIX and Samba) GID
defaultUserGid="513"
 
# Default Computer (Samba) GID
defaultComputerGid="515"
 
# Skel dir
skeletonDir="/etc/skel"
 
# Treat shadowAccount object or not
shadowAccount="1"
 
# Default password validation time (time in days) Comment the next line if
# you don't want password to be enable for defaultMaxPasswordAge days (be
# careful to the sambaPwdMustChange attribute's value)
defaultMaxPasswordAge="45"
 
##############################################################################
#
# SAMBA Configuration
#
##############################################################################
 
# The UNC path to home drives location (%U username substitution)
# Just set it to a null string if you want to use the smb.conf 'logon home'
# directive and/or disable roaming profiles
# Ex: userSmbHome="\\PDC-SMB3\%U"
userSmbHome="\\PDC-SRV\%U"
 
# The UNC path to profiles locations (%U username substitution)
# Just set it to a null string if you want to use the smb.conf 'logon path'
# directive and/or disable roaming profiles
# Ex: userProfile="\\PDC-SMB3\profiles\%U"
userProfile="\\PDC-SRV\profiles\%U"
 
# The default Home Drive Letter mapping
# (will be automatically mapped at logon time if home directory exist)
# Ex: userHomeDrive="H:"
userHomeDrive="H:"
 
# The default user netlogon script name (%U username substitution)
# if not used, will be automatically username.cmd
# make sure script file is edited under dos
# Ex: userScript="startup.cmd" # make sure script file is edited under dos
userScript="logon.bat"
 
# Domain appended to the users "mail"-attribute
# when smbldap-useradd -M is used
# Ex: mailDomain="idealx.com"
mailDomain="example.com"
 
##############################################################################
#
# SMBLDAP-TOOLS Configuration (default are ok for a RedHat)
#
##############################################################################
 
# Allows not to use smbpasswd (if with_smbpasswd="0" in smbldap.conf) but
# prefer Crypt::SmbHash library
with_smbpasswd="0"
smbpasswd="/usr/bin/smbpasswd"
 
# Allows not to use slappasswd (if with_slappasswd="0" in smbldap.conf)
# but prefer Crypt:: libraries
with_slappasswd="0"
slappasswd="/usr/sbin/slappasswd"
 
# comment out the following line to get rid of the default banner
# no_banner="1"

smbldap_bind.conf

FIXME

Этот файл должен быть доступен для просмотра только суперпользователю. Файл используется при модификации базы данных LDAP каталога, он включает имя пользователя и его пароль, который имеет право подключаться к первичному и вторичному LDAP каталогу.

chmod 600 /etc/smbldap-tools/smbldap_bind.conf

slaveDN

Отличительное имя, используемое для связи с вторичным сервером LDAP

Пример 1

slaveDN="cn=Manager,dc=idealx,dc=com"

Пример 2:

slaveDN=""

Это может быть административная учетная запись каталога или другая учетная запись LDAP, которая имеет достаточные права для чтения всего каталога (база данных вторичного сервера используется только для чтения). Анонимные подключения подключаются, как показано в примере 2.

slavePw

Пароль для доступа к вторичному серверу LDAP. Пример 1:

slavePw="secret"

Пример 2:

slavePw=""

Пароль должен быть записан в незашифрованном виде. Файл должен быть доступен для чтения только суперпользователю root! Анонимные подключения настраиваются по примеру 2.

masterDN

Отличительное имя, используемое для связи с первичным сервером LDAP

masterDN="cn=Manager,dc=idealx,dc=com"

это может быть административная учётная запись каталога или другая учётная запись LDAP, который имеет достаточные права для внесения изменений в базу данных LDAP. Анонимный доступ к первичному серверу не допускается.

masterPw

Пароль пользователя с административными полномочиями

masterPw="secret"

пароль должен быть записан в незашифрованном виде. Еще раз убедитесь, что доступ к файлу не имеют те, кто его не должен иметь.

Пример файла

/etc/smbldap-tools/smbldap_bind.conf
# $Id: smbldap_bind.conf 35 2011-02-23 09:07:36Z fumiyas $
#
############################
# Credential Configuration #
############################
# Notes: you can specify two differents configuration if you use a
# master ldap for writing access and a slave ldap server for reading access
# By default, we will use the same DN (so it will work for standard Samba
# release)
slaveDN="cn=Manager,dc=example,dc=com"
slavePw="secret"
masterDN="cn=Manager,dc=example,dc=com"
masterPw="secret"

Samba

FIXME

Настройка Samba

Это позволит администраторам добавлять, удалять или изменять группы и учетные записи пользователей операционной системы MS Windows, используя для этого, например, Диспетчер пользователей.

/etc/samba/smb.conf
[global]
#ldap delete dn = Yes
add user script = /usr/sbin/smbldap-useradd -m '%u' -t 1
rename user script = /usr/sbin/smbldap-usermod -r '%unew' '%uold'
delete user script = /usr/sbin/smbldap-userdel '%u'
set primary group script = /usr/sbin/smbldap-usermod -g '%g' '%u'
add group script = /usr/sbin/smbldap-groupadd -p '%g'
delete group script = /usr/sbin/smbldap-groupdel '%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'
add machine script = /usr/sbin/smbldap-useradd -W '%u'

Управление пользователями

smbldap-useradd

FIXME

Добавление пользователей

Для добавления пользователей используется скрипт smbldap-useradd. Ключи, которые могут быть использованы при его запуске, представлены в таблице.

Пояснение: в четвертой колонке есть строки со значениями, которые начинаются с символа $. Значения таких ключей, если не назначены специально, берутся из файла smbldap.conf (с указанием секции этого файла).

Ключ Описание действия ключа Пример Значение по умолчанию
-aСоздать учетную запись Windows, без ключа будет создан Posix-аккаунт
-wСоздать учетную запись рабочей станции Windows
-iСоздать учетную запись пользователя домена, с которым установлено доверие, подробности см. Добавление пользователя доверенного домена
-uНазначить uid
-u 1003
Первый из доступных uid
-gНазначить gid
-g 1003
Первый из доступных gid
-GДобавить нового пользователя в одну или несколько (разделитель запятая) групп, группа задаются по номеру.
-G 512,550
Без ключа –G все созданные пользователь попадают в группу 513
-dНазначить домашнюю папку
-d /var/user
$userHomePrefix /user
-sНазначить оболочку (login shell)
-s /bin/ksh
$userLoginShell
-cДобавить описание пользователя (gecos)
-c "admin user"
$userGecos
-mСоздать домашнюю папку пользователя и скопировать туда информацию из папки
/etc/skel/
-kНазначить папку с «скелетом» (используется без ключа -m)
-k /etc/skel2
$skeletonDir
-PПо окончании обратится к скрипту smbldap-passwd для установки пароля пользователя
-AУстановить, имеет ли право пользователь изменять пароль, 0=нет, 1=да
-А 1
-BУстановить, должен ли пользователь изменить свой пароль после первого входа в систему, 0=нет, 1=да
-B 0
-CНазначить домашнюю папку Samba
-С \\PDC\homes
$userSmbHome
-DУстановить букву диска, монтирующегося при входе пользователя в систему
-D H:
$userHomeDrive
-EУстановить скрипт, который будет выполняться при входе пользователя в систему
- E common.bat
$userScript
-FЗадать папку с профилем пользователя
-F \\PDC\profiles\user
$userProfile
-HУстановить флаг учётной записи Samba, подробнее см. sambaAcctFlags
-H [X]

Например, флаг D означает, что учётная запись отключена, прим.перев.

-NУстановить реальное имя пользователя
-SУстановить фамилию пользователя
-MЛокальный электронный почтовый ящик (несколько записываются через запятую)
-M testuser,aliasuser
-TНепосредственный электронный почтовый ящик (несколько записываются через запятую)
-T testuser@domain.org

Например, если вы хотите создать пользователя с именем user_admin, который:

  • будет являться пользователем Windows
  • должен входить в группу с gid=512 (Domain Admins);
  • не иметь оболочки входа (login shell);
  • домашняя папка /dev/null;
  • не иметь перемещаемого профиля;
  • и которому при создании мы установим пароль.

то следует ввести команду:

smbldap-useradd -a -G 512 -m -s /bin/false -d /dev/null -F "" -P user_admin

Ещё несколько примеров (из Интернет, прим.перев.):

smbldap-useradd –a –m –M pupkin –c "vasya pupkin" pupkin
smbldap-useradd -a –c "Serg Alex Lad" -N "Serg Alex" -S "Lad" -s /bin/bash ladserg

Добавление пользователя доверенного домена

Пример добавления учётной записи доверенного домена на контроллере домена trust-pdc:

smbldap-useradd -i trust-pdc

Вывод команды:

New password : *******
Retype new password : *******

Работа скрипта будет окончена после запроса на ввод пароля доверенного пользователя. Учетная запись будет создан в том месте каталога, где хранятся записи обо всех компьютерах (по умолчанию это ou=Computers). Таким образом, у этой учётной записи две особенности, это установка пароля для него, и флаг [I ], подробнее см. sambaAcctFlags.

smbldap-userdel

Удаление пользователя.

Например, если вы хотите удалить пользователя user1 из LDAP каталога, и если вы также хотите удалить его домашнюю папку, выполните команду:

smbldap-userdel -r user1

-r

Удалить домашнюю папку без подтверждения.

-R

Удалить домашнюю папку в диалоговом режиме

smbldap-usermod

Внесение изменений в учетную запись пользователя

Для внесения изменений в учетную запись пользователя используется скрипт smbldap-usermod. Ключи, используемые с этим скриптом, вынесены в таблицу:

Ключ Описание действия ключа Пример
-cДобавить описание пользовательской учетной записи
-dНазначить домашнюю директорию
-d /var/user
-uНазначить uid
-u 1003
-gНазначить gid
-g 1003
-GДобавить новую учетную запись в одну или несколько групп или удалить пользователя из группы (несколько записываются через запятую)
-G 512,550
-G -512,550
-G +512,550
-sНазначить оболочку (login shell)
-s /bin/ksh
-NУстановить реальное имя пользователя
-SУстановить фамилию пользователя
-PПо окончании обратится к скрипту smbldap-passwd для установки пароля пользователя
-aДобавить класс объекта (objectClass) sambaSAMaccount
-eУстановить дату истечения срока действия пароля пользователя (формат: ГГГГ-ММ-ДД ЧЧ:ММ:СС)
-AУстанавливает, имеет ли право пользователь изменять пароль, 0 – нет, 1 - да
-BУстанавливает, должен ли пользователь изменить свой пароль после первого входа в систему, 0 – нет, 1 - да
-CНазначить домашнюю папку Samba
-С \\PDC\homes
-С ""
-DУстановить букву диска, монтирующегося при входе пользователя в систему
-EУстановить скрипт, который будет выполняться при входе пользователя в систему
- E common.bat
-FЗадать директорию с профилем пользователя
-F \\PDC\profiles\user
-HУстановить флаг учетной записи Samba, подробнее см. sambaAcctFlags
-H [X]
-IОтключить учетную запись пользователя
-I 1
-JВключить учетную запись пользователя
-J 1
-wСоздать учетную запись рабочей станции Windows
-iСоздать учетную запись пользователя домена, с которым установлено доверие, подробности см. Добавление пользователя доверенного домена
-MЛокальный электронный почтовый ящик (несколько записываются через запятую)
-M testuser,aliasuser
-TНепосредственный электронный почтовый ящик (несколько записываются через запятую)
-T testuser@domain.org

smbldap-userinfo

FIXME

Наряду с этим, для внесения некоторых изменений в учетные данные, используется скрипт smbldap-userinfo. Ключи, используемые с этим скриптом, вынесены в таблицу. Этот скрипт может быть использован самими пользователями для внесения некоторых данных в их учетную запись (ACL должен быть должным образом настроен на сервере каталогов).

Ключ Описание действия ключа Пример
-fЗадать полное имя пользователя
-f MyName
-rЗадать номер кабинета
-r 99
-wЗадать номер рабочего телефона
-w 1111111
-hЗадать номер домашнего телефона
-h 2222222
-oЗаписать другую информацию (gecos)
-o "second stage"
-sЗадать оболочку по умолчанию
-s /bin/ksh

smbldap-passwd

Изменение пароля пользователя.

Если ключи не указаны, то будут изменены оба пароля Samba и UNIX:

smbldap-passwd user1

-s

Изменить только пароль Samba

-s user1

-u

Изменить только пароль UNIX.

-u user1

Управление группами

smbldap-groupadd

Создание групп

Для добавления новой группы в LDAP каталог используется скрипт smbldap-groupadd.

Например, так вы можете создать группу group1 и поместить в нее ранее созданного пользователя user1:

smbldap-groupadd –a group1
smbldap-usermod –G +group1 user1

-a

Добавить группу и автоматически установить соответствие (mapping)

-g gid

Установить gidNimber для группы

-g 1002
-o

FIXME gidNimber не будет уникальным

-r group-rid

Установить rid группы

-r 1002

-s group-sid

Установить sid группы

-s S-1-5-21-3703471949-3718591838-2324585696-1002

-t group-type

Установить sambaGroupType

-t 2

-p

Вывести gidNimber на экран

Ссылки

smbldap-tools/smbldap-tools.txt · Последние изменения: 2022-04-22 10:21 — GreyWolf