Можете ли вы помочь мне получить доступ к общему ресурсу Mac SMB из Ubuntu с помощью smbclient? (ошибка NT_STATUS_ACCESS_DENIED)

Я работал над продуктом файлового сервера, который использует smbcilent для передачи файлов между клиентскими компьютерами и сервером. До сих пор он отлично работал с нашим сервером LAMP (Ubuntu) и машинами Windows.

В настоящее время я пытаюсь расширить настройку, включив в нее Mac, но у меня проблемы с доступом сервера к общему ресурсу на Mac.

Вот моя команда и ошибка (описания в квадратных скобках заменяют личную информацию):

# smbclient //10.101.0.7/[share-file] -U [username]%[password] -c ls
WARNING: The "syslog" option is deprecated
NTLMSSP packet check failed due to short signature (0 bytes)!
NTLMSSP NTLM2 packet check failed due to invalid signature!
session setup failed: NT_STATUS_ACCESS_DENIED

Что я пробовал:

✓ Доступ к общему ресурсу с компьютера с Windows, чтобы убедиться, что общий ресурс настроен правильно — проверьте! Там нормально работает.

✓ Вызов -S off или --signing=off в команде - без изменений.

✓ Просто просмотрев акции сначала с помощью smbclient -L 10.101.0.7 -U [username]%[password] - та же ошибка.

✓ Погуглите ответ - проверьте! Несколько человек с похожими проблемами, но пока нет рабочих решений.

Самое многообещающее, что я пока видел, это компиляция smbclient 4.4 из исходников и запуск без аутентификации (-U ""%""), но это похоже на временное решение, основанное на ошибке, а не на надежный план, который будет работать долгое время. (Но я попробую это в следующий раз, если не найду лучших идей...)

Спасибо, что читаете и пытаетесь помочь!


person J.D. Sandifer    schedule 22.05.2017    source источник
comment
Есть такая же проблема. Похоже на bugs.launchpad.net/ubuntu/+source/ самба/+ошибка/1711212   -  person mivk    schedule 16.08.2017


Ответы (1)


Попробуйте добавить --option="ntlmssp_client:force_old_spnego = yes" к команде smbclient как предложено в списке рассылки samba-technical.

Для меня это теперь список общих ресурсов на сервере Mac OSX:

smbclient -U$user%$password -L $mac_host --option="ntlmssp_client:force_old_spnego = yes"

Для монтирования вам может понадобиться добавить опции nounix,sec=ntlmssp как в

sudo mount -t cifs //$mac_host/$share $mountpoint -o nounix,sec=ntlmssp,username=$user,password=$password
person mivk    schedule 22.11.2017
comment
Спасибо за ответ! Прошло некоторое время с тех пор, как я работал над этой конкретной проблемой, но я думаю, что пробовал вариант со spnego, но безрезультатно. Не уверен, что это было точно так же, как вы предложили, но я помню это слово. (И в настоящее время у меня нет доступа к коду для проверки.) В любом случае, я буду помнить об этом, когда снова буду работать над этим проектом. - person J.D. Sandifer; 16.01.2018