Erzwinge, dass mount.cifs ein bestimmtes Kerberos-Ticket verwendet

1

TL; DR Ich möchte die Verwendung eines bestimmten Tickets erzwingen mount.cifs(oder erzwingen smbclient) (z . B. cifs/server@DOMAIN2anstelle von cifs/server@DOMAIN).

Lange Geschichte

Ich habe zwei SMB-Server (beide sind Windows): server-aund server-b. Ich habe kein Problem beim Mounten einer Freigabe von server-a:

$ sudo mount -t cifs //server-a.domain-a/share /mnt/a -o "sec=krb5,cruid=$UID"
# uses cifs/server-a@DOMAIN-A

Der Versuch, eine Freigabe aus zu mounten, server-bführt jedoch zu Fehlern (Hervorhebung meiner nach sudo smbclient...):

$ sudo mount -t cifs //server-b.domain-b/share /mnt/b -o "sec=krb5,cruid=$UID"
mount error(126): Required key not available
$ sudo dmesg|tail
[7267002.391319] CIFS VFS: Send error in SessSetup = -126
[7267002.391504] CIFS VFS: cifs_mount failed w/return code = -126
$ sudo smbclient //server-b.domain-b/share
ads_krb5_mk_req: smb_krb5_get_credentials failed for **cifs/server-b.domain-b@DOMAIN-A** (Server not found in Kerberos database) <- note wrong domain
cli_session_setup_kerberos: spnego_gen_krb5_negTokenInit failed: Server not found in Kerberos database
session setup failed: SUCCESS - 0
$ klist |grep "Default principal"
Default principal: user@DOMAIN-A

Meine Diagnose

mount.cifs verwendet fälschlicherweise DOMAIN-A(meine Hauptdomain) anstelle von DOMAIN-B. Daher möchte ich ihn zwingen, das richtige Ticket zu verwenden.

  1. Kann ich mount.cifs oder smbclient zwingen, ein bestimmtes Ticket zu verwenden? Wenn ja, wie dann?
  2. Welche Regeln gelten für die Ticketauswahl in mount.cifs / smbclient?
  3. Wie kann ich überprüfen, welches Ticket für die Verbindung verwendet wird?
joozek
quelle
Es stellte sich heraus, dass sowohl smbclient als auch mount.cifs, die mit ubuntu 14.04 trusty geliefert werden, die richtigen Tickets verwenden
joozek