mount_smbfs: serwer odrzucił połączenie: Błąd uwierzytelniania w systemie Mac OS High Sierra 10.13.6

0

Na moim serwerze ubuntu mam kilka udziałów, do których mogę uzyskać dostęp za pomocą wyszukiwarki:

smb://server.domain/share

pomyślnie bez konieczności wpisywania hasła. Gdy próbuję zamontować udziały serwera z wiersza polecenia, należy:

mount_smbfs '//share;user:@server.domain/share' /Volumes/share

dostaję

mount_smbfs: server rejected the connection: Authentication error

Jeśli zamontuję jedną z akcji z wyszukiwarki, wszystkie inne mogą zostać zamontowane z linii poleceń bez pojawienia się tego błędu.

Przeszukałem różne witryny wymiany stosów i znalazłem następujące powiązane pytania i linki:

Większość z nich ma kilka tysięcy wyświetleń i kilka upvotes. Co ciekawe, znalazłem dwa komentarze, w których użytkownicy wyrażają frustrację związaną z tym, że problem nie został rozwiązany w spójny sposób.

Z drugiej strony istnieje wiele odpowiedzi na pytania i niektóre pytania - wydaje się, że ten problem jest bardzo dobrze znany, a niektórzy oświeceni użytkownicy uważają, że jest bardzo jasne, co robić.

Ponieważ ten problem denerwuje mnie codziennie, odważę się zadać pytanie ponownie w kontekście Ubuntu 16.04 LTS i Mac OS High Sierra 10.13.6.

Obawiam się, że odpowiedzi z przeszłości nie działają już w tym kontekście.

Powody, dla których zadaję pytanie, są takie, że połączenia SMB „gubią się” w ciągu nocy. To jest inne zachowanie niż w moich innych systemach. Połączenie CIFS między moimi maszynami Ubuntu pozostaje stabilne w czasie, podczas gdy Mac OS wydaje się mieć pewne zasady odłączania.

Więc mój problem może zostać rozwiązany poprzez stabilne połączenie lub automatyczne przywrócenie połączenia za pomocą skryptu

W jaki sposób można uzyskać stały lub automatyczny skrypt łączący połączenie SMB między klientem Mac OS High Sierra 10.3.6 a serwerem SMB Ubuntu / Linux?

Wolfgang Fahl
źródło
Złożyłem raport o błędzie bugreport.apple.com/web/?problemID=45788798
Wolfgang Fahl

Odpowiedzi:

1

Zgodnie ze stroną podręcznika mount_smbfs przyjmuje swój argument punktu podziału w postaci:

//[domain;][user[:password]@]server[/share]

Zwróć uwagę na część „user [: password]” - dwukropek i hasło znajdują się w tych samych nawiasach, wskazując, że są opcjonalne, ale jeśli są włączone, muszą być włączone razem . Zasadniczo, jeśli uwzględnisz dwukropek, cokolwiek będzie po nim (aż do „@”), zostanie użyte hasło. Ale nie masz nic po dwukropku, więc wyraźnie określasz puste hasło.

Strona podręcznika mówi także, że nigdy nie należy uruchamiać mount_smbfs bezpośrednio, ale zamiast tego użyj mount -t smbfs.

Musisz albo wyraźnie podać hasło, w ten sposób:

mount -t smbfs '//share;user:[email protected]/share' /Volumes/share

Lub odrzuć zarówno dwukropek, jak i hasło:

mount -t smbfs '//share;[email protected]/share' /Volumes/share

... w takim przypadku będzie szukać hasła w ~ / Library / Preferences / nsmb.conf, a jeśli go tam nie ma, poprosi o jedno. Myślałem, że może wyglądać w pęku kluczy, ale najwyraźniej nie wie, jak to zrobić. Oznacza to, że nie ma nieinteraktywnego, bezpiecznego sposobu na podanie hasła mount_smbfs.

W zależności od kontekstu, w którym jest uruchomiony, możesz użyć open zamiast tego:

open 'smb://share;[email protected]/share'

Myślę, że będzie to musiało być uruchomione w sesji użytkownika i nie daje ci kontroli nad punktem montowania (zostanie automatycznie utworzony w / Volumes).

Och, jeszcze jedna rzecz: „udział” część adresu URL określa domenę uwierzytelniającą do znalezienia użytkownika. Czy ta część jest rzeczywiście poprawna? Jeśli tak, to open polecenie powinno działać interaktywnie.

Gordon Davisson
źródło
Dziękujemy za wskazanie tego. Posiadanie hasła w linii poleceń jest niezabezpieczoną wersją, którą porzuciłem wiele lat temu. Nie chcę wracać do tego stanu. Wersja keychain nie działa - spróbuj sam. Byłbym wdzięczny, gdybyś usunął swoją odpowiedź, ponieważ w ogóle jej to nie pomaga i nie chcę ponownie wielu odpowiedzi downvoted.
Wolfgang Fahl
@WolfgangFahl Zobacz aktualizację.
Gordon Davisson
Thx za aktualizację - zajrzę do tego innego dnia, gdy połączenie sieciowe ponownie się rozłączy
Wolfgang Fahl