Использование локальных учетных записей Samba совместно с AD
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- сержант
- Сообщения: 200
- Зарегистрирован: 2009-04-07 6:22:33
- Откуда: г.Королёв
Использование локальных учетных записей Samba совместно с AD
Можно ли настроить для Samba использование локальных учетных записей совместно с Active Directory?
Сейчас настроена авторизация по AD. Но программисты попросили сделать ещё локальную учётку для их скриптов.
Буду признателен за информацию.
Сейчас настроена авторизация по AD. Но программисты попросили сделать ещё локальную учётку для их скриптов.
Буду признателен за информацию.
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
-
- сержант
- Сообщения: 230
- Зарегистрирован: 2008-07-21 9:35:11
Re: Использование локальных учетных записей Samba совместно
man nsswitch.conf
Измеритель верёвочками.
-
- сержант
- Сообщения: 200
- Зарегистрирован: 2009-04-07 6:22:33
- Откуда: г.Королёв
Re: Использование локальных учетных записей Samba совместно
А можно конкретный пример по теме? У меня мозги спеклись безнадёжно на этом.
-
- сержант
- Сообщения: 200
- Зарегистрирован: 2009-04-07 6:22:33
- Откуда: г.Королёв
Re: Использование локальных учетных записей Samba совместно
На всякий случай ещё раз уточню. Мне хотелось узнать можно ли так извернуться, чтобы Самба делала авторизацию внешних (не получающих при этом шару) пользователей через AD, но при этом один или несколько пользователей могли авторизоваться по локальному файлу паролей Самбы.
Этот наворот понадобился программистам для разработки внутрисетевого корпоративного сайта на java.
Этот наворот понадобился программистам для разработки внутрисетевого корпоративного сайта на java.
-
- подполковник
- Сообщения: 3921
- Зарегистрирован: 2008-09-04 11:51:25
- Откуда: Санкт-Петербург
Re: Использование локальных учетных записей Samba совместно
Дмитрий в любом *NIX'е, как впрочем и в любой винде, учетная запись это идентификатор gid, именно с ним и работает система.На станции, члене домена, нет полноценной базы пользователей домена как на контроллере домена, а есть только отображение прошедших аутенфикацию пользователей домена в свои дополнительные локальные пользователи, в случае винды gid пользователя домена на станции берется его gid в домене, в случае самбы зависит от ее настроек, в вашем случае, это отображение реализует winbind, он создает локальную базу отображения, сейчас не вспомню конкретный файл, но при его удалении слетают все настройки доступа к файлам. А источники аутенфикаций определяет файл nsswich.conf, удалите из него всякое упоминание о winbind и доступ к вашей самбе исчезнет. Просто добавьте пользователя, ну и дайте этому пользователю права на шаренные ресурсы
-
- сержант
- Сообщения: 230
- Зарегистрирован: 2008-07-21 9:35:11
Re: Использование локальных учетных записей Samba совместно
Что непонятно?Dmitriy_K писал(а):А можно конкретный пример по теме? У меня мозги спеклись безнадёжно на этом.
Код: Выделить всё
The configuration file controls how a process looks up various databases
containing information regarding hosts, users (passwords), groups, etc.
Each database comes from a source (such as local files, DNS, NIS, and
cache), and the order to look up the sources is specified in
nsswitch.conf.
Each entry in nsswitch.conf consists of a database name, and a space sep-
arated list of sources. Each source can have an optional trailing crite-
rion that determines whether the next listed source is used, or the
search terminates at the current source. Each criterion consists of one
or more status codes, and actions to take if that status code occurs.
Измеритель верёвочками.
- bagas
- лейтенант
- Сообщения: 922
- Зарегистрирован: 2010-08-18 19:49:01
- Откуда: Воронеж
- Контактная информация:
Re: Использование локальных учетных записей Samba совместно
меня это тоже интересует.
меня тоже попросили создать пару локальных учеток.
К примеру есть локальная учетка bagas.
Пробую зайти подж этой учеткой bagas , непускает.
меня тоже попросили создать пару локальных учеток.
К примеру есть локальная учетка bagas.
Пробую зайти подж этой учеткой bagas , непускает.
Что бы ты не делал , жизнь слишком коротка!
Блог о BSD системах.
Блог о BSD системах.
- paran0id
- мл. сержант
- Сообщения: 128
- Зарегистрирован: 2011-11-22 14:03:08
- Откуда: мск
Re: Использование локальных учетных записей Samba совместно
в nsswitch.conf должно быть что-то вроде
если в домене пользователи в ldap хранятся
Код: Выделить всё
passwd: files ldap
group: files ldap
shadow: files ldap
Хватит, хватит, $%@^ая рогатая тварь, остановись!
- bagas
- лейтенант
- Сообщения: 922
- Зарегистрирован: 2010-08-18 19:49:01
- Откуда: Воронеж
- Контактная информация:
Re: Использование локальных учетных записей Samba совместно
на данный момент у меня так.
passwd: files winbind
Еще раз говорю с доменной авторизацией все в порядке, мне нужно разрешить две локальные учетки.
вот лог при авторизации локальной учеткой.
passwd: files winbind
Еще раз говорю с доменной авторизацией все в порядке, мне нужно разрешить две локальные учетки.
вот лог при авторизации локальной учеткой.
Код: Выделить всё
check_ntlm_password: Checking password for unmapped user [pav-210]\[bagas]@[PAV-012] with the new password interface
[2013/06/21 15:31:37.445735, 3] auth/auth.c:222(check_ntlm_password)
check_ntlm_password: mapped user is: [pav-210]\[bagas]@[PAV-012]
[2013/06/21 15:31:37.445757, 3] auth/auth_winbind.c:60(check_winbind_security)
check_winbind_security: Not using winbind, requested domain [pav-210] was for this SAM.
[2013/06/21 15:31:37.445776, 2] auth/auth.c:319(check_ntlm_password)
check_ntlm_password: Authentication for user [bagas] -> [bagas] FAILED with error NT_STATUS_NO_SUCH_USER
[2013/06/21 15:31:37.445821, 3] smbd/error.c:81(error_packet_set)
error packet at smbd/sesssetup.c(124) cmd=115 (SMBsesssetupX) NT_STATUS_LOGON_FAILURE
[2013/06/21 15:31:37.447288, 3] smbd/server_exit.c:181(exit_server_common)
Server exit (failed to receive smb request)
Что бы ты не делал , жизнь слишком коротка!
Блог о BSD системах.
Блог о BSD системах.
-
- проходил мимо
Re: Использование локальных учетных записей Samba совместно
Вот нарытые в инете подсказки, которые помогли мне добить эту проблему. Надеюсь, поможет и другим.
Прикол в том, что оказалось ненужно. Программист, который от меня это требовал, оказался бестолочью, не понимающей саму себя.
Так что у меня уже рабочего примера сейчас нет. Осталась только эта напоминалка.
Прикол в том, что оказалось ненужно. Программист, который от меня это требовал, оказался бестолочью, не понимающей саму себя.

Так что у меня уже рабочего примера сейчас нет. Осталась только эта напоминалка.
Код: Выделить всё
Samba выдает вот такую ошибку в логах:
net_auth2: failed to get machine password for account TESTHOST$: NT_STATUS_ACCESS_DENIED
При этом если добавить юзера TESTHOST$ то получаю вот такое вот сообщение:
[2008/08/13 17:05:59, 0] rpc_server/srv_netlog_nt.c:_net_auth_2(461)
_net_auth2: failed to get machine password for account TESTHOST$: NT_STATUS_NO_TRUST_SAM_ACCOUNT
Решение проблемы:
1.Добавить пользователя в систему:
pw useradd testhost$ -d /dev/null -g sambauser -s /usr/bin/false
обязательно после имени указать $
2.Добавить пользователя в Samba:
smbpasswd -a -m testhost
------------------------------------------------------------------------
cat /etc/passwd | grep -v '#' | make_smbpasswd > /usr/local/etc/samba/smbpasswd
chmod 600 /usr/local/etc/samba/smbpasswd
Пользователь administrator должен присутствовать в системе. Потом его учётная запись с именем administrator будет внесена в базу пользователей Samba.
# adduser
...
Создаём пользователей в самбе через smbpasswd (выполняем от root’a):
smbpasswd -a administrator
New SMB password:
Retype new SMB password:
Added user administrator
Для отключения учётной записи в самбе:
smbpasswd -d administrator
Disabled user administrator
Для включения отключённой учётной записи:
smbpasswd -e administrator
Enabled user administrator
Для удаления пользователя из базы samb’ы:
smbpasswd -x administrator
Deleted user administrator
Не забудьте изменить права доступа к вашему новому файлу “smbpasswd” на чтение-запись только для пользователя “root’ (0600/-rw-------). Это делается из соображения безопасности.
# chmod 600 /etc/smbpasswd
------------------------------
Далее дело за настройкой NSS. После его настройки, появится возможность работать с доменными аккаунтами так же как и с локальными – и использовать их в chown и chgrp, в ACL, с директивой valid users в smb.conf и т.д.
Изменяем соответствующие строки в /etc/nsswitch.conf:
passwd: files winbind
group: files winbind
shadow: files winbind
hosts: files dns winbind
------------------------------------------------------------------------
С настройками Samba в smb.conf придётся поэкспериментировать. Примерный вариант может (!) быть такой.
В этом варианте имеется возможность быстро переключиться на режим авторизации через AD Windows (security = ADS).
Параметр "passdb backend" не нужно упоминать в конфигах, не использующих LDAP.
[global]
admin users = administrator
auth methods = winbind
security = user
case sensitive = no
winbind uid = 10000-40000
winbind gid = 10000-40000
winbind enum users = yes
winbind enum groups = yes
winbind refresh tickets = yes
;winbind offline logon = yes
winbind cache time = 300
winbind use default domain = no
winbind trusted domains only = no
allow trusted domains = yes
restrict anonymous = 2
;map untrusted to domain = yes
workgroup = NET.RU
realm = NET.RU
server string = Samba Server
;password server = *
password server = NET-dc02.NET.ru
encrypt passwords = yes
client use spnego = yes
client ntlmv2 auth = yes
ntlm auth = no
;create krb5 conf = no
wins support = no
wins proxy = no
dns proxy = no
local master = no
os level = 0
domain master = no
preferred master = no
domain logons = no
csc policy = disable
max smbd processes = 200
socket options = SO_RCVBUF=8192 SO_SNDBUF=8192 TCP_NODELAY
use sendfile = yes
interfaces = 10.0.0.0/8
name resolve order = hosts bcast
#Logs for debugging
log file = /var/log/samba/log.%m
max log size = 100
;log level = 1 auth:3 smb:3 winbind:3
log level = 2 auth:10 acls:10 smb:10 idmap:10 winbind:10
#Trying to increase speed
;log file = /dev/null
;log level = 0
invalid users = root
guest account = nobody
------------------------------------------------------------------------
Полезные команды:
View machine trust account:
pdbedit -Lv administrator
pdbedit -a -u administrator
pdbedit не вызывает скрипт синхронизации unix пароля, даже если параметр unix password sync установлен. Он обновит только базу пользователей Samba.
Если вы хотите добавить пользователя и незамедлительно синхронизировать пароль, используйте опцию -a команды smbpasswd.
tdbbackup -v secrets.tdb
Проверит базу учётных записей на повреждения и при обнаружении восстановит данные из архива.
Посмотреть расшаренные ресурсы на своей машине:
# smbclient -d3 -L localhost -U%
Отобразить (-L) список расшаренных ресурсов на хосте 10.0.0.11 анонимно (-N):
# smbclient -N -L 10.0.0.11
Подключиться к ресурсу share хоста 10.0.0.11 с логином username и паролем passwd:
# smbclient //10.0.0.11/share -Uusername%passwd
-----
Проверка доступности расшаренных ресурсов пользователей:
# kinit user@NET.RU
user@NET.RU's Password:
# smbclient -k -L user
OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]