cifs, smb - Paylaşılan klasöre bağlanamıyor (izin verilmedi) veya gezilemiyor


13

Son zamanlarda bu problemle karşılaştım. Genellikle smb yoluyla bir Linux makineden bir yerel ağ paylaşılan klasörde gezinmek (yani smb kullanarak dosya yöneticisi:). Şimdi kısayola erişmeye veya kimlik bilgilerini yazmaya çalıştığımda, kullanıcı, etki alanı ve parola isteyen iletişim penceresini almaya devam ediyorum.

Bu yüzden cisf-utils kullanarak konumu manuel olarak monte etmeye çalıştım:

sudo mount -t cifs //fileshare1/docs1/user/My\ Documents/shared/Francesco/ /home/frank/used_shared/ -o username=my_user,password=my_pass,domain=my_domain,gid=1000,uid=1000

Anladım mount error(13): Permission denied.

Kesinlikle bir Windows makineden erişebildiğim için kullanıcımın bu klasörde iznine sahip olduğundan eminim.

Ayrıca kişisel klasörümü bu konuma bağlamaya çalışırsam:

sudo mount -t cifs //fileshare1/docs5/francesco.azzarello/ /home/frank/mnt_folder -o username=my_user,password=my_pass,domain=my_domain,gid=1000,uid=1000

Hiç sorun olmadan erişebiliyorum.

Referans için 4.2.0-36-jenerik çekirdek kullanıyorum ve mount.cifs sürümüm 6.4

Her iki yöntemden birinin nasıl çalışacağı hakkında bir fikriniz var mı?


Rgarding ponsfrilus cevabını güncelle

sayı 1: ayrıntılı seçenek döndürür:

_mount.cifs kernel mount options: ip=xxx.xxx.xxx.xxx,unc=\\fileshare1\docs1,uid=1000,gid=1000,user=my_user,,domain=my_domain,prefixpath=user/My Documents/shared/Francesco/,pass=********
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)_

2 sayısı temel olarak aynı şeydir:

_ mount.cifs kernel mount options: ip=xxx.xxx.xxx.xxx,unc=\\fileshare1\docs1,iocharset=utf8,file_mode=0777,dir_mode=0777,user=my_user,,domain=my_domain,prefixpath=user/My Documents/shared/Francesco/,pass=********
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)_

Ve vers = 2.1 ile hiçbir şey değişmedi:

_mount.cifs kernel mount options: ip=xxx.xxx.xxx.xxx,unc=\\fileshare1\docs1,vers=2.1,iocharset=utf8,file_mode=0777,dir_mode=0777,user=my_user,,domain=my_domain,prefixpath=user/My Documents/shared/Francesco/,pass=********
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)_

4 numara gelince ben docs1 hiçbir sorun monte edebilirsiniz ama tho kullanıcı içinde paylaşılan klasöre almak gezinebilirsiniz.


Ponsfrilus'un # 3 numaralı ipucunu vers=3.0belki vers=2.0veya ile de deneyin vers=1.0. Bu işe yaramazsa, sunucunun daha geniş bir smb sürümü yelpazesine bağlanmasına izin verebilirsiniz. Smb3 sunucuda gerektiği gibi ayarlandığından bu sorunu kendim yaşadım. Sunucu gerekli samba sürümünü 2'ye indirene kadar linux ile bağlantı kuramadım. Sunucu hangi işletim sistemini çalıştırıyor?
emk2203

2
Hepsini denedim. 3.0, 2.1 ve 2.0 ile hala "izin reddedildi". 1.0 ile "bilinmeyen bir hata" alırken. Windows sunucu sürümünü kullanıcı olarak nasıl kontrol edeceğimi bilmiyorum, çünkü ona doğrudan erişimim yok.
Frankmtl

Sana yardım edemem, üzgünüm. Sunucu üzerinde kontrol vardı ve benim sorun izin verilen SMB sürümleri dinlendikten sonra gitti. Kendi paylaşımınıza bağlanabilirsiniz - linux yanlış yapılandırması olası değildir; paylaşmak için pencerelerden bağlanabilirsiniz - sunucu yanlış yapılandırması olası değildir. Bu gerçek bir samba gurusu gerektirir.
emk2203

Yanıtlar:


10

Ben Ubuntu 16.10 bugün aynı sorunla karşılaştım eminim Birkaç kez bu iş parçacığında tüm önerileri denedim, ben Windows Server 2016 kullanarak aynı paylaşımı bağlayabilir ve smbclient ( smbclient -U brainstrust //WINBOX01/shared) kullanarak göz atabilirsiniz . Harici bir kimlik dosyasını bile denedim.

Bir düzeltme üzerinde tökezledim - Windows kutusundaki paylaşım için yerel bir kullanıcı oluşturmuş olmama rağmen, aynı zamanda bir etki alanına katıldı. Temelde yerel makine olarak etki alanı ayarlamak -o domain=WINBOX01benim sorunum anında düzeltildi, bu yüzden orada birileri için yararlı umuyoruz burada bir yorum bırakarak.

Kullandığım tam minimal komut şuydu:

sudo mount.cifs -v //WINBOX01/shared /home/geoff/winbox01  --verbose -o user=brainstrust,password=topsecret,domain=WINBOX01

Bu yorumu burada bıraktığınız için teşekkürler, bana yardımcı oldu.
dleerob

Bana da yardım etti. Mount -t cif'lerin aynı problemden muzdarip olduğu görülüyor
Terminal

Benim sorunum bu oldu. Zaten bir dosyam vardı ~/.smbcredentials. Yerel NAS'ımın çok uzun bir süre boyunca kötü bir şifre ile paylaşmamı sağladığını öğrenmekten dehşete düştüm.
Charlie

İşin garibi, dosya sunucusunun ana bilgisayar adını değil, NetBIOS etki alanını belirtmemiz gerekiyordu. Yine de, şimdi çalışıyor, çok teşekkürler.
bviktor

9

Sunucu için yanlış güvenlik türüne sahip olduğunuzu düşünüyorum, hata 13 sunucunun size izin vermediği anlamına gelir.

Mount komutunda doğru güvenlik modunu seçmeniz gerekecek -o ile sec seçeneğini aşağıdaki gibi ekleyin:

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

1
Hepsini denedim ve sn türüne bağlı olarak "izin reddedildi" veya "bilinmeyen hata" alıyorum
Frankmtl

SMB ile ilgili son güvenlik sorunları göz önüne alındığında, yalnızca çok güncel virüs kontrolü gibi birçok ek güvenlik önleminin bulunduğu yerlerde kullanılmasını tavsiye ederim.
Amias

Sec = ntlmssp kullanmayı deneyin ve samba sunucusu yapılandırmanızın şifreyi şifrelediğinden emin olun.
Humpity

Günümü kurtardım. Aslında yaptığım sadece sec = ntlm kaldırmak ve sonra çalıştı.
Mart'ta

Bu günlerde gerçekten KOBİ'lerden uzaklaşmalısın, bu neredeyse sürekli bir saldırı kaynağı ve ayrıcalık yükselmesi.
Mart'ta Amias 18:10

4
  1. Ayrıntılı çıktı almak için "-v" seçeneğini eklemeyi deneyin:

    sudo mount -v -t cifs //fileshare1/docs1/user/My\ 
       Documents/shared/Francesco/ /home/frank/mnt_folder -o \
       username=my_user,password=my_pass,domain=my_domain,gid=1000,uid=1000
    
  2. Mount komutunda bu seçeneklerle test edin

    iocharset = utf8, rw, dosya_ modu = 0777, dir_mode = 0777 :

    sudo mount -v -t cifs //fileshare1/docs1/user/My\ 
       Documents/shared/Francesco/ /home/frank/mnt_folder -o 
       username=my_user,password=my_pass,domain=my_domain,\
       iocharset=utf8,rw,file_mode=0777,dir_mode=0777
    
  3. SMB sürüm seçeneğini belirterek test edin (vers = 2.1), bkz . Samba wiki . Mount.cifs kılavuz sayfasından:

    vers =
    SMB protokolü sürümü. İzin verilen değerler:

    • 1.0 - Klasik CIFS / SMBv1 protokolü. Bu varsayılan ayardır.

    • 2.0 - SMBv2.002 protokolü. Bu ilk olarak Windows Vista Service Pack 1 ve Windows Server 2008 işletim sistemlerinde kullanılmaya başlandı. Windows Vista'nın ilk sürümünün desteklenmeyen biraz farklı bir lehçe (2.000) kullandığını unutmayın.

    • 2.1 - Microsoft Windows 7 ve Windows Server 2008R2'de tanıtılan SMBv2.1 protokolü.

    • 3.0 - Microsoft Windows 8 ve Windows Server 2012'de tanıtılan SMBv3.0 protokolü.

  4. Son olarak, yalnızca ilk paylaşımı bağlamayı deneyin:

    sudo mount -v -t cifs //fileshare1/docs1/ /home/frank/mnt_folder \
       -o username=my_user,password=my_pass,domain=my_domain,\
       iocharset=utf8,rw,file_mode=0777,dir_mode=0777
    

Paylaşabileceğiniz ayrıntılı çıktılar yardımcı olabilir.


Cevabınız için teşekkür ederim. Soruyu güncellemek dışında tekrar oynatmanın daha iyi bir yolunu bulamadım. bu komutların çıktılarını güncellemede bulabilirsiniz
Frankmtl

@ Frankmtl docs1 ve docs5 dosya paylaşımı1 içindeki klasör haklarını karşılaştırabilir misiniz?
ponsfrilus

Geç cevap verdiğim için özür dilerim. Bunları bağladıktan sonra klasör izinlerini kastediyorsanız, ikisinde de drwxr-xr-x var
Frankmtl

Bir Windows 2012 sunucu paylaşımına (smb2) erişmek için, ,vers=2.1 uid = 1000 (satır sonu olarak da) sonra eklemeniz gerekir . Ayrıca "cifs-utils" paketini de yükledim.
laugeo

2

6.0'dan daha yüksek cifler kullanırken bu sorun için: cif'lerin yeni sürümü etki alanı değişkenini kullanır, bu nedenle creadentials dosyası şöyle görünür:

username=<your username>
password=<your password>
domain=<your domain>

Benim için çözüm gerçekten önce ve sonra boşluk değildi =.
WM

2

sec=ntlmMount komutuna seçeneği eklemek sorunumu çözdü.

Örneğin:

sudo mount -t cifs -o username=administrator,password=123456,sec=ntlm //ip/eeshare /mnt/eeshare/
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.