errore di montaggio 13 = Autorizzazione negata


45

Uno dei miei server è impostato per montare automaticamente una directory di Windows usando fstab. Tuttavia, dopo il mio ultimo riavvio ha smesso di funzionare. La linea in fstab è:

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

Il .Smbcredentialsfile è:

username=myaccount
password=mypassword
domain=mydomain

Faccio un mount -ae ricevo mount error 13 = Permission denied. Se lo faccio abbastanza, bloccherà il mio account di Windows, quindi so che ci sta provando. Ho verificato che la mia password sia corretta.

Che cosa sto facendo di sbagliato?


4
Potresti provare a montare dalla riga di comando con mount -t cifs //myserver/myfolder /mnt/backup --verbose -o credentials=home/myfolder/.Smbcredentialse aggiungere le informazioni di debug (sterilizzate) alla tua domanda?
bsd,

Qual è la distribuzione e la versione di cifs-utilsche hai installato? Ho avuto questo problema prima e credo che fosse dovuto a un aggiornamento.
slm

Risposte:


44

Un paio di cose da verificare. Faccio qualcosa di simile e puoi provare a montarlo direttamente usando il mountcomando per assicurarti di avere le cose corrette.

Autorizzazioni per il file delle credenziali

Assicurati che questo file sia autorizzato correttamente.

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

Montatura dettagliata

Puoi ottenere maggiori informazioni mountdall'uso -vdell'interruttore che spesso ti mostrerà dove si stanno facendo scattare le cose.

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

Risultato in questo output se funziona:

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=********

Controlla i registri

Dopo aver eseguito il comando mount sopra, dai un'occhiata al tuo dmesge / /var/log/messageso ai /var/log/syslogfile per eventuali messaggi di errore che potrebbero essere stati generati quando hai provato mount.

Tipo di sicurezza

Puoi passare molte opzioni extra tramite l' -o ..interruttore per montare. Queste opzioni sono specifiche della tecnologia, quindi nel tuo caso sono applicabili in modo mount.cifsspecifico. Dai un'occhiata alla mount.cifspagina man per ulteriori informazioni su tutte le opzioni che puoi passare.

Sospetto che ti manchi un'opzione per sec=.... In particolare una di queste opzioni:

   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.

Potrebbe essere necessario regolare l' sec=...opzione in modo che sia o sec=ntlmo sec=ntlmssp.

Riferimenti


1
Il controllo è dmesgstato molto utile. Questa risposta è stata del 2014 e da allora lo sfruttamento di WannaCry di SMB1.0 l'ha reso obsoleto, quindi assicurati di aggiungere vers=2.02.1 o 3.0, qualunque sia il server supportato, poiché la versione 1.0 predefinita non sarà più supportata.
Michael Plautz,

1
Solo un avvertimento: poiché la cartella di destinazione è in Windows, che spesso richiede la modifica della password di tanto in tanto, la password nel file delle credenziali potrebbe non essere valida. mountil comando non ti dirà tali dettagli.
HongboZhu

22

Grazie, ma qualche altro googling ha trovato la soluzione. Stava usando il tipo di sicurezza sbagliato per impostazione predefinita; questo comando ha funzionato:

$ sudo mount -t cifs //172.16.1.5/myshare/ /mnt/myshare \
    -osec=ntlmv2,domain=MYDOMAIN,username=myusername,password=mypassword

Era questo! L'esecuzione mount -t cifs //10.0.0.138/usb1_1 /mnt/usbdisk -ousername=theusername,password=thepassord,file_mode=0644,dir_mode=0755,uid=rootsu una macchina Fedora 25 ha funzionato bene, ma non è riuscita quando ho eseguito lo stesso comando su una scatola openwrt (Chaos Calmer 15.05.1). L'aggiunta sec=ntlmv2ha funzionato anche lì.
hlovdal,

2
Sono venuto qui cercando di montare un membro Debian 9 AD da un non membro di CentOS 6, e questo mi ha avvicinato - per il mio caso la magia erasec=ntlmssp
Ghepardo

La soluzione per me era usare la domainparola chiave e specificarla oltre al nome utente.
Jim Fell,

sec = ntlmv2 ha l'opzione di cui avevo solo bisogno per il mio accesso smb dalla condivisione Ubuntu 18.04 a Windows 10. Grazie Pickle.
Noel aye il

12

Ho riscontrato questo problema e il problema si è rivelato non formattazione corretta dei valori nel file delle mie credenziali. Provai:

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

Ho anche provato:

username=myemailaddress@someplace.com
password=<password>
domain=FULLY.QUALIFIED.DOMAIN

E:

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

Una volta ho usato solo il mio nome utente di accesso:

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

Sono stato in grado di ottenere il mio mount cifs per avere successo.


ottima spiegazione!
Dima Lituiev,

2

Questa aggiunta funziona su Linux 6.6 scientifico (RedHat 6.6)

edit /etc/fstab
create file = .credentials(es. in /etc) con questi dettagli:

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 

risolti i flag file_mode e dir_mode! :)
Rafael Moni,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.