У меня проблема с сервисом samba на моем сервере. Это началось с того момента, как Ubuntu перешла на samba 4.x в своих дистрибутивах и продолжается до 15.04.
У меня есть пользователь ag
на моем сервере и пользователь AG
в окне Windows 7. В samba 3.x все работало нормально, но в samba 4.x у меня возникла забавная проблема с несоответствием имени пользователя.
Я наблюдаю следующее поведение: при входе в систему с хоста Windows я набираю имя пользователя ag
(или AG
это не имеет значения) и пароль. Сервер Samba отклоняет меня в первый раз, но впускает меня со второй попытки. На самом деле, такое же поведение показывают клиенты Linux и Mac OSX, так что это не проблема Windows. Я могу смоделировать это из консоли Linux следующим образом:
nas@AGStorage:~$ smbclient -U AG //agvault/backup
Enter AG's password:
session setup failed: NT_STATUS_NO_MEMORY
nas@AGStorage:~$ smbclient -U AG //agvault/backup
Enter AG's password:
Domain=[HOME] OS=[Unix] Server=[Samba 4.1.13-Ubuntu]
smb: \> q
Я попытался проанализировать поведение с Wireshark, и это ясно показывает, что Windows сначала пытается с AG
(помните, что имя пользователя в Windows - AG
) и получает ошибку, затем приходит с ag
второй раз и получает Ok от сервера samba.
Когда я имитирую вход в систему с помощью ag
, он запускается с одной попытки:
nas@AGStorage:~$ smbclient -U ag //agvault/backup
Enter ag's password:
Domain=[HOME] OS=[Unix] Server=[Samba 4.1.13-Ubuntu]
smb: \> q
Я пытался предложить в интернет-решении: добавление строки username map = /etc/samba/usermap.txt
к моему smb.conf
с помощью ag = AG
внутри упомянутого usermap.txt
, но это не работает в моем случае.
Как я могу исправить это противоречивое поведение сервера samba? Есть идеи?
Заранее спасибо!
Следующая команда помогает много:
sudo service winbind stop
Так или иначе (я не знаю точно, как) мой сервер самбы неправильно конфигурируется, чтобы говорить winbind
, даже если он имеет standalone server
роль. Это швы для порождения отсутствия передачи с winbind
и NT_STATUS_NO_MEMORY
отказ на первом входе в систему.
Весело проводят время люди!