Pages : 1
#1 Le 04/08/2012, à 23:59
- blueduck
Montage CIFS et mot de passe plaintext
Bonsoir,
Je dispose de dossiers partagés via Samba sur un NAS. Pour des raisons qui m'échappent mais qui s'imposent à moi, l'authentification lors de l'accès à ces dossiers doit se faire en plaintext ; cela m'a obligé à modifiier comme suit mon smb.conf :
[global]
encrypt passwords = no
client plaintext auth = yes
client lanman auth = yes
client ntlmv2 auth = no
moyennant quoi je parviens à accéder sans problème aux dossiers partagés, à condition que l'outil utilisé (smbclient par exemple) prenne bien en compte smb.conf pour s'authentifier en plaintext.
Or, en testant mon /etc/fstab pour que mes dossiers partagés soient montés au démarrage :
$ sudo mount -a
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
Coup d'oeil à http://manpages.ubuntu.com/manpages/pre … ifs.8.html :
Some samba client tools like smbclient(8) honour client-side configuration parameters present in smb.conf. Unlike those client tools, mount.cifs ignores smb.conf completely.
En d'autres termes, mount.cifs ne se réfère pas du tout à smb.conf, donc n'utilise pas plaintext comme méthode d'authentification
Après quelques recherches, je trouve ceci (http://lists.samba.org/archive/linux-ci … 01849.html) :
For cifs client, plaintext password support is turned off by default - it can be enabled by turning on a security flag (0x20 or 32 decimal). See fs/cifs/README if curious about the details for the rest of the security flags.
The default on your system for /proc/fs/cifs/SecurityFlags is probably 0x7, which means only the following three security options are allowed: packet signing, ntlm password hashing, ntlmv2 password hashing (but not plaintext password).
If your default flags were 7 then to turn on plaintext password support you could simply do: echo 39 > /proc/fs/cifs/SecurityFlags, which adds in the missing flag. If this fails, you are running a kernel cifs module which has not been built with support for older servers which support weak security (a cifs configuration/build option in make menuconfig).
J'essaie alors de modifier les flags :
$ sudo echo 39 > /proc/fs/cifs/SecurityFlags
bash: SecurityFlags: Permission non accordée
$ ls -l
total 0
-r--r--r-- 1 root root 0 août 5 00:54 cifsFYI
-r--r--r-- 1 root root 0 août 5 00:54 DebugData
-r--r--r-- 1 root root 0 août 5 00:54 LinuxExtensionsEnabled
-r--r--r-- 1 root root 0 août 5 00:54 LookupCacheEnabled
-r--r--r-- 1 root root 0 août 5 00:54 MultiuserMount
-r--r--r-- 1 root root 0 août 5 00:54 OplockEnabled
-r--r--r-- 1 root root 0 août 5 00:54 SecurityFlags
-r--r--r-- 1 root root 0 août 5 00:54 traceSMB
Quelqu'un saurait-il soit comment je puis faire pour avoir l'autorisation de modifier les flags, soit comment forcer mount.cifs à utiliser plaintext ?
Blue Duck
Dernière modification par blueduck (Le 02/11/2012, à 08:24)
Poste de travail : Kubuntu « Impish Indri » 22.10 64 bits - AMD Ryzen 3900X @ 3.8 GHz - Palit GeForce RTX 2070 Super
Serveur domestique : Ubuntu Server « Jammy Jellyfish » 22.04.1 LTS 64 bits - Intel Core i5 2400S @ 2.5 GHz
Hors ligne
#2 Le 05/08/2012, à 04:32
- Kooothor
Re : Montage CIFS et mot de passe plaintext
Salut blueduck,
Première fois que je vois un programme où il faut echo dans /proc pour changer un flag, mais bon... (# mount.cifs --cleartext-passwords ça aurait été plus simple...)
Ce que je te propose d'essayer :
$ sudo su -
# echo 39 > /proc/fs/cifs/SecurityFlags
@+
~ktr
Hors ligne
#3 Le 05/08/2012, à 08:09
- blueduck
Re : Montage CIFS et mot de passe plaintext
Merci Kooothor pour ta réponse, et +1 sur l'option cleartext-passwords
J'ai bien réussi à modifier les flags, mais pas mieux ensuite à monter mon partage. Quelques recherches plus loin (http://kernel.org/doc/readme/fs-cifs-README) :
Enabling plaintext authentication currently requires also enabling lanman authentication in the security flags because the cifs module only supports sending plaintext passwords using the older lanman dialect form of the session setup SMB. (e.g. for authentication using plaintext passwords, set the SecurityFlags to 0x30030)
Suite à quoi, les commandes proposées par Kooothor :
$ sudo su
# echo 0x30030 > /proc/fs/cifs/SecurityFlags
# mount -a
...et plus d'erreur, le partage est bien monté. Certains fichiers ne sont pas accessibles, mais je pense que cela vient des permissions (je n'ai pas encore fixé les options uid et gid).
Petit bémol toutefois : après un reboot, SecurityFlags repasse à 0x7 ; une idée du fichier à modifier pour que la modification soit prise en compte au démarrage ?
Blue Duck
Poste de travail : Kubuntu « Impish Indri » 22.10 64 bits - AMD Ryzen 3900X @ 3.8 GHz - Palit GeForce RTX 2070 Super
Serveur domestique : Ubuntu Server « Jammy Jellyfish » 22.04.1 LTS 64 bits - Intel Core i5 2400S @ 2.5 GHz
Hors ligne
#4 Le 05/08/2012, à 08:48
- Kooothor
Re : Montage CIFS et mot de passe plaintext
Rajoute la commande dans /etc/rc.local, elle sera exécutée par root après le boot
Hors ligne
#5 Le 05/08/2012, à 12:06
- blueduck
Re : Montage CIFS et mot de passe plaintext
Ça ne fonctionne pas, les flags restent à 0x7 après le démarrage (alors qu'ensuite une exécution manuelle de rc.local les modifie correctement). Je ne suis pas sûr que rc.local s'exécute avant le montage des entrées fstab...
Blue Duck
Poste de travail : Kubuntu « Impish Indri » 22.10 64 bits - AMD Ryzen 3900X @ 3.8 GHz - Palit GeForce RTX 2070 Super
Serveur domestique : Ubuntu Server « Jammy Jellyfish » 22.04.1 LTS 64 bits - Intel Core i5 2400S @ 2.5 GHz
Hors ligne
Pages : 1