Einhängefehler 13 = Berechtigung verweigert

44

Einer meiner Server ist so eingerichtet, dass er mit fstab automatisch ein Windows-Verzeichnis anhängt. Nach meinem letzten Neustart funktionierte es jedoch nicht mehr. Die Zeile in fstab lautet:

//myserver/myfolder /mnt/backup cifs credentials=home/myfolder/.Smbcredentials

Die .SmbcredentialsDatei ist:

username=myaccount
password=mypassword
domain=mydomain

Ich mache ein mount -aund ich bekomme mount error 13 = Permission denied. Wenn ich das genug mache, wird mein Windows-Konto gesperrt, sodass ich weiß, dass es versucht wird. Ich habe überprüft, ob mein Passwort korrekt ist.

Was mache ich falsch?

Essiggurke
quelle
4
Könnten Sie versuchen, von der Kommandozeile aus zu mounten mount -t cifs //myserver/myfolder /mnt/backup --verbose -o credentials=home/myfolder/.Smbcredentialsund die Debugging-Informationen (bereinigt) zu Ihrer Frage hinzuzufügen?
bsd
Was ist die Distribution und die Version von, cifs-utilsdie Sie installiert haben? Ich hatte dieses Problem schon einmal und ich glaube, es lag an einem Update.
slm

Antworten:

44

Ein paar Dinge zum Auschecken. Ich mache etwas Ähnliches und Sie können es direkt mit dem mountBefehl testen , um sicherzustellen, dass Sie alles richtig eingerichtet haben.

Berechtigungen für die Anmeldeinformationsdatei

Stellen Sie sicher, dass diese Datei berechtigt ist.

$ sudo ls -l /etc/smb_credentials.txt 
-rw-------. 1 root root 54 Mar 24 13:19 /etc/smb_credentials.txt

Ausführliche Mount

Sie können mountmit dem -vSchalter mehr Informationen abrufen , da er Ihnen oft anzeigt, wo Dinge ausgelöst werden.

$ sudo mount -v -t cifs //server/share /mnt \
    -o credentials=/etc/smb_credentials.txt

Ergebnis dieser Ausgabe, wenn es funktioniert:

mount.cifs kernel mount options: ip=192.168.1.14,unc=\\server\share,credentials=/etc/smb_credentials.txt,ver=1,user=someuser,domain=somedom,pass=********

Überprüfen Sie die Protokolle

Suchen Sie nach dem Ausführen des obigen Befehls mount in Ihren dmesgund / /var/log/messagesoder /var/log/syslogDateien nach Fehlermeldungen, die beim Ausführen des Befehls erzeugt wurden mount.

Art der Sicherheit

Sie können viele zusätzliche Optionen über den -o ..Schalter zum Einhängen übergeben. Diese Optionen sind technologiebezogen, in Ihrem Fall sind sie also mount.cifsspezifisch anwendbar . In der mount.cifsManpage finden Sie weitere Informationen zu allen Optionen, die Sie übergeben können.

Ich würde vermuten, dass Ihnen eine Option dazu fehlt sec=.... Speziell eine dieser Optionen:

   sec=
       Security mode. Allowed values are:
       ·   none - attempt to connection as a null user (no name)
       ·   krb5 - Use Kerberos version 5 authentication
       ·   krb5i - Use Kerberos authentication and forcibly enable packet 
           signing
       ·   ntlm - Use NTLM password hashing
       ·   ntlmi - Use NTLM password hashing and force packet signing
       ·   ntlmv2 - Use NTLMv2 password hashing
       ·   ntlmv2i - Use NTLMv2 password hashing and force packet signing
       ·   ntlmssp - Use NTLMv2 password hashing encapsulated in Raw NTLMSSP
           message
       ·   ntlmsspi - Use NTLMv2 password hashing encapsulated in Raw 
           NTLMSSP message, and force packet signing

       The default in mainline kernel versions prior to v3.8 was sec=ntlm. 
       In v3.8, the default was changed to sec=ntlmssp.

Möglicherweise müssen Sie die sec=...Option so anpassen , dass sie entweder sec=ntlmoder ist sec=ntlmssp.

Verweise

slm
quelle
1
Das Überprüfen dmesgwar sehr hilfreich. Diese Antwort stammt aus dem Jahr 2014, und seitdem wird WannaCry von SMB1.0 vers=2.0nicht mehr unterstützt. Fügen Sie also 2.1 oder 3.0 hinzu, unabhängig davon, was der Server unterstützt, da die Standardeinstellung 1.0 nicht mehr unterstützt wird.
Michael Plautz
1
Nur ein Hinweis: Da sich der Zielordner unter Windows befindet und das Kennwort häufig von Zeit zu Zeit geändert werden muss, ist das Kennwort in der Anmeldeinformationsdatei möglicherweise ungültig. mountBefehl wird Ihnen solche Details nicht mitteilen.
HongboZhu
22

Danke, aber etwas mehr googeln hat die Lösung ergeben. Standardmäßig wurde der falsche Sicherheitstyp verwendet. Dieser Befehl hat funktioniert:

$ sudo mount -t cifs //172.16.1.5/myshare/ /mnt/myshare \
    -osec=ntlmv2,domain=MYDOMAIN,username=myusername,password=mypassword
Essiggurke
quelle
Das war's! Die Ausführung mount -t cifs //10.0.0.138/usb1_1 /mnt/usbdisk -ousername=theusername,password=thepassord,file_mode=0644,dir_mode=0755,uid=rootauf einem Fedora 25-Computer hat einwandfrei funktioniert, ist jedoch fehlgeschlagen, als ich denselben Befehl auf einer OpenWRT-Box (Chaos Calmer 15.05.1) ausführte. Das Hinzufügen sec=ntlmv2hat auch dort funktioniert.
hlovdal
2
Kam hierher, um zu versuchen, ein Debian 9 AD-Mitglied von einem CentOS 6-Nicht-Mitglied zu laden, und dies brachte mich näher - für meinen Fall war die Magiesec=ntlmssp
Gepard
Die Lösung für mich bestand darin, das domainSchlüsselwort zu verwenden und es neben dem Benutzernamen anzugeben.
Jim Fell
sec = ntlmv2 hat die Option, die ich gerade für meinen smb-Zugriff von Ubuntu 18.04 auf Windows 10-Freigabe benötigt habe. Danke, Pickle.
noel aye
12

Ich bin auf dieses Problem gestoßen, und es stellte sich heraus, dass die Werte in meiner Anmeldeinformationsdatei nicht richtig formatiert wurden. Ich habe es versucht:

username=DOMAIN\mylogin
password=<password>
domain=FULLY.QUALIFIED.DOMAIN

Ich habe auch versucht:

[email protected]
password=<password>
domain=FULLY.QUALIFIED.DOMAIN

Und:

username=FULLY.QUALIFIED.DOMAIN\mylogin
password=<password>
domain=FULLY.QUALIFIED.DOMAIN

Einmal habe ich nur meinen Login-Benutzernamen verwendet:

username=mylogin
password=<password>
domain=FULLY.QUALIFIED.DOMAIN

Ich war in der Lage, meine CIFs zu montieren, um erfolgreich zu sein.

Mark Salisbury
quelle
tolle erklärung!
Dima Lituiev
2

Dieses Add funktioniert unter wissenschaftlichem Linux 6.6 (RedHat 6.6)

edit /etc/fstab
create file = .credentials(zB in /etc) mit diesen Angaben:

username=value
password=value
domain=value

//SERVER/SHARE1 /mnt/SHARE1 cifs credentials=/etc/.credentials,rw,uid=1000,gid=1000,nounix,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0 
stoferontheweb
quelle
file_mode und dir_mode Flags für mich gelöst! :)
Rafael Moni