GNU/Linux >> Tutoriels Linux >  >> Linux

Montage Samba avec invite de mot de passe en tant qu'utilisateur non root ?

Je souhaite monter un partage SMB protégé par mot de passe (servi par une machine Windows). Le partage est protégé par un nom d'utilisateur et un mot de passe, et je ne peux pas écrire le mot de passe dans un fichier, je veux être invité à entrer le mot de passe au moment du montage.

J'ai besoin d'une solution qui fonctionne même lorsque l'utilisateur sur la machine cliente ne dispose d'aucun privilège administratif. Ainsi, quelle que soit la méthode utilisée pour monter le partage, il ne doit pas lui permettre d'obtenir les autorisations root. L'installation initiale peut être effectuée en tant que root. Les utilisateurs doivent pouvoir spécifier des noms de serveur arbitraires. Mon besoin immédiat concerne Ubuntu 12.04, mais plus la solution est applicable, mieux c'est.

Le client est sans tête, donc je recherche un outil de ligne de commande.

Ce que j'ai essayé :

  • mount.cifs :bien qu'il puisse être rendu setuid root, ses auteurs ne le considèrent pas comme sûr. L'exécuter sous sudo a le même problème.
  • smbnetfs , fusesmb  :Je n'ai pas réussi à convaincre l'un ou l'autre de me demander un mot de passe.
  • Nautilus et gvfs :gvfs-mount smb://servername/sharename échoue avec Error mounting location: volume doesn't implement mount .

Comment puis-je monter un partage Samba à partir de la ligne de commande, en tant qu'utilisateur non root, avec une invite de mot de passe ?

Réponse acceptée :

"Erreur d'emplacement de montage :le volume n'implémente pas le montage" se traduit apparemment par "J'ai besoin de D-Bus mais il n'est pas disponible". (Merci au collègue gourou de venturax pour cette information.) Dans une session SSH, je peux utiliser gvfs-mount à condition que dbus-daemon est lancée en premier et la variable d'environnement DBUS_SESSION_BUS_ADDRESS est défini.

export $(dbus-launch)
gvfs-mount smb://workgroupname;[email protected]/sharename
# Type password
ls ~/.gvfs/'sharename on hostname'

gvfs-mount et les autres utilitaires GVFS doivent tous communiquer avec la même session D-Bus. Par conséquent, si vous utilisez plusieurs sessions SSH ou utilisez des montages sur plusieurs sessions de connexion, vous devez :

  • démarrez D-Bus la première fois que vous en avez besoin, au plus tard ;
  • veillez à ne pas laisser D-Bus se terminer avec la session, tant qu'il y a des systèmes de fichiers GVFS montés ;
  • réutiliser la session D-Bus existante au moment de la connexion s'il y en a une.

Voir Réutiliser les sessions D-Bus dans les sessions de connexion pour cela.


Linux
  1. UNIX / Linux :Comment supprimer un utilisateur équivalent root (utilisateur non root avec UID 0)

  2. Comment supprimer une utilisation non root avec UID 0 sous Linux

  3. Comment ajouter automatiquement un compte utilisateur ET un mot de passe avec un script Bash ?

  4. Installer Git avec un compte utilisateur non root

  5. Monter un appareil avec des droits d'utilisateur spécifiques

Comment changer le mot de passe utilisateur sous Linux

Trouver des comptes d'utilisateurs avec un mot de passe vide sous Linux

Comment activer les autorisations de fichiers Unix sur le partage Samba avec Smb 2.0+ ?

Erreur d'utilisateur/mot de passe Samba Share après la mise à jour ?

SSH sans mot de passe (sans mot de passe) sur Synology DSM 5 en tant qu'autre utilisateur (non root)

N'est-il pas sûr d'avoir un utilisateur ansible avec sudo sans mot de passe ?