smbclient obtention de la connexion de NT_STATUS_LOGON_FAILURE à la boîte Windows

21

J'exécute smbclient sur Ubuntu, j'essaie de me connecter à une boîte Windows et j'obtiens "la configuration de la session a échoué: NT_STATUS_LOGON_FAILURE".

J'ai vérifié que je peux cingler la boîte et telnet aux ports 139/445, donc je suis sûr que ce n'est pas un problème de pare-feu. Et mon client dit qu'ils peuvent se connecter à cette boîte Windows à partir d'une autre boîte Windows avec la combinaison ID utilisateur / mot de passe sans problème. En outre, cette boîte peut se connecter via smbclient aux autres boîtes Windows de ce client.

Avez-vous d'autres idées pour expliquer pourquoi cela ne fonctionne pas?

David Jaquay
la source

Réponses:

28

Avez-vous vérifié votre smb.conf?

Assurez-vous que votre groupe de travail et les paramètres de sécurité sont correctement définis. Si vous travaillez avec un ordinateur dans le cadre d'un domaine, les demandes d'authentification sont d'abord transmises via votre contrôleur de domaine, alors assurez-vous d'avoir quelque chose de similaire à:

security = domain
workgroup = WORKGROUP

Vous pouvez également utiliser l' -Woption pour spécifier le groupe de travail et ajouter DOMAIN/avant votre nom d'utilisateur pour spécifier le domaine:

$smbclient -L myhost -U DOMAIN/user -W workgroup

J'espère que cela t'aides!

Linztm
la source
Il s'avère que l'ajout du domaine a fait l'affaire. Apparemment, certaines versions de Windows nécessitent le domaine et d'autres pas? Mais merci!
David Jaquay
notez que le bit 'security = domain' n'est pas nécessaire ici. Outre la spécification du groupe de travail dans smb.conf, vous pouvez également le spécifier sur la ligne de commande pour smbclient.
jelmer
Oui, l'option -W de smbclient est ce que j'ai utilisé pour le faire fonctionner.
David Jaquay
7
DOMAINE / nom d'utilisateur devrait également fonctionner.
Calmarius
1
Vous pouvez également utiliser smbclient avec l'argument -W.
Andre Miras
7

Même problème. J'ai dû ajouter des utilisateurs au fichier de mots de passe Samba avec

sudo smbpasswd -a

Apparemment, cela est dû au fait que la configuration par défaut dans /etc/samba/smb.conf est

sécurité = utilisateur

passdb backend = tdbsam

Je n'utilise pas de contrôleurs de domaine ou Active Directory, donc j'aurais pensé que l'accès au fichier de mot de passe normal serait la valeur par défaut, mais je suppose que non. Ce serait bien si cela était clair dans la documentation que j'ai trouvée. La référence «smbpasswd» a fourni un indice qui a conduit à cette solution.

Andy Anderson
la source
Je suis sur un domaine, et c'est la façon dont je pense que je vais devoir le faire parce que je n'utilise pas mon utilisateur de domaine sous Linux, c'est un invité Linux de développement personnel sur un hôte Windows. De plus, je suis maintenant en mesure de me connecter avec succès smbclient -L localhostsur l'invité, mais pas encore de me connecter à l'aide de l'hôte Windows. Je pense que c'était au moins un pas en avant. Je pense que ses ports d'ici, vous devriez inclure les numéros de port à vérifier dans votre réponse.
Brian Thomas
2

J'avais le même problème avec smbclient, et j'ai remarqué qu'il s'est éteint lorsque j'ai sélectionné manuellement l'option "Activer simplement le partage de fichiers" dans la boîte de dialogue Partage de fichiers que vous obtenez après un clic droit sur le dossier que vous souhaitez partager.

Sur certaines machines Windows (comme Windows XP), vous devez ajouter ceci pour permettre le partage à distance pour les utilisateurs non invités:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\forceguest=dword:0

ou, en automatisant à l'aide de la ligne de commande windows xp:

reg add "HKLM\SYSTEM\CurrentControlSet\Control\Lsa" /v forceguest /t REG_DWORD /d 00000000 /f

Après cela, smbclient a fonctionné sans aucun problème avec n'importe quel utilisateur.

Un grand merci à jethomas dans http://www.techsupportforum.com/forums/f10/enable-file-sharing-via-the-command-line-133562.html

un utilisateur
la source
1

Cela peut être dû à la raison suivante:

  1. Si des utilisateurs valides sont fournis dans smb.conf, vérifiez le smbpasswd
  2. Vérifiez le fichier d'hôtes.
Ritesh Chaman
la source
Je ne sais pas pourquoi cela a été rejeté. Cette réponse m'a indiqué à smbpasswdquel point j'avais besoin d'utiliser pour définir les informations d'identification lorsque j'obtenais la même erreur.
Rick Chatham
1

J'ai eu le même problème quand j'ai couru

smbclient \\\\[ip]\\[sharedresource]

Cette commande me demande d'entrer le mot de passe d'un utilisateur root, mais lorsque j'ai entré le mot de passe, j'ai reçu l'erreur NT_STATUS_LOGON_FAILURE.

J'ai ajouté -U pour spécifier le nom d'utilisateur de ma machine distante et cela a fonctionné

smbclient \\\\[ip]\\[sharedresource] -U [username]
Joca
la source
1

Sur Windows 10 (hôte) et CentOS 7 (invité), j'ai pu résoudre le problème d'authentification en désactivant le partage protégé par mot de passe: Réseau et centre de partage / Paramètres de partage avancés / tous les réseaux / Partage protégé par mot de passe

Cela peut être utile pour le dépannage uniquement , je ne recommanderais pas de le garder pour une utilisation quotidienne.

vizmi
la source