Druckerfreigabe - Samba - Active Directory

C

CrazyDave

Grünschnabel
Hallo Leute,

ich will hier in einer Active Directory Domain eine CUPS Druckserver mit Druckerfreigaben für die Windows Clients zu Verfügung stellen.

Allerdings funktioniert cupsaddsmb nicht. Mit root (smpasswd für user root wurde durchgeführt). oder anderem User der als printer admin bzw. in der write list für print$ steht erscheint folgende Fehlermeldung:

Code:
root@cups01 ~ $ cupsaddsmb -a -v
Das Kennwort für „root“ wird benötigt für den Zugriff auf „localhost“ über SAMBA: 
Befehl ausführen: smbclient //localhost/print$ -N -A /tmp/01c604bfefd27 -c 'mkdir W32X86;put /tmp/01c604c001772 W32X86/PDF.ppd;put /usr/share/cups/drivers/ps5ui.dll W32X86/ps5ui.dll;put /usr/share/cups/drivers/pscript.hlp W32X86/pscript.hlp;put /usr/share/cups/drivers/pscript.ntf W32X86/pscript.ntf;put /usr/share/cups/drivers/pscript5.dll W32X86/pscript5.dll'
session setup failed: NT_STATUS_TRUSTED_RELATIONSHIP_FAILURE

Server ist schon Mitglied der Domäne - Domänenuser werden ausgegeben (getent passwd liefert alle Domänenuser).

Installationsinformationen
* Samba 3.4.7~dfsg-1ubuntu3
* Cups 1.4.3-1

Konfiguration smb.conf:
Code:
[global]
        workgroup = DOMAIN_NAME
        netbios name = CUPS01
        #netbios aliases = CUPS
        realm = DOMAIN.AT
        security = ads
        encrypt passwords = true
        password server = domaincontroller1.domain.at domaincontroller2.domain.at
        server string = %h server (Samba, Ubuntu)
        ;use kerberos keytab = true
        kerberos method = system keytab
        template shell = /bin/bash
        client use spnego = yes
        domain logons = no
        domain master = no
        local master = no
        preferred master = no
        wins server = 10.17.0.11 10.17.0.10 10.17.0.13
        log file = /var/log/samba/log.%m
        max log size = 1000
        syslog = 0
        bind interfaces only = yes
        interfaces = lo eth0
        log level = 0
        load printers = yes
        printing = cups
        printcap = cups

[printers]
   comment = All Printers
   browseable = yes
   public = yes
   path = /var/spool/samba
   printable = yes
   guest ok = yes
   read only = yes
   create mask = 0700
   writable = no
   printer admin = root, @lpadmin, @UX_CUPS_PRINTADMIN

# Windows clients look for this share name as a source of downloadable
# printer drivers
[print$]
   comment = Printer Drivers
   path = /var/lib/samba/printers
   browseable = yes
   read only = yes
   guest ok = no
   public = yes
# Uncomment to allow remote administration of Windows print drivers.
# You may need to replace 'lpadmin' with the name of the group your
# admin users are members of.
# Please note that you also need to set appropriate Unix permissions
# to the drivers directory for these users to have write rights in it
   write list = root, @lpadmin, @UX_CUPS_PRINTADMIN

Mit security = user würde das Ganze funktionieren. Allerdings verschwindet dann die Druckerfreigabe für die Windows Clients.

Bin für jede Hilfe dankbar und wenn weitere Infos benötigt werden bitte bescheid geben.

Cheers,
David
 
Bauchantwort:

wins server = 10.17.0.11 10.17.0.10 10.17.0.13 würde ich entfernen, weil Du eine DNS-Auflösung besitzt.

log level = 0 würde ich von 0 auf 3 setzen damit man das Problem eingrenzen kann.
 
Danke für die schnelle Antwort.

WINS Server wurden nun auskommentiert. Log wurde auf 3 erhöht.

Hier findet man die Samba Logs (==> /var/log/samba/log.cups01 <== und ==> /var/log/samba/log.127.0.0.1 <==): http://paste-it.net/public/iab064b/

Interessant sie die Auszüge:
Code:
  Connecting to 10.17.0.10 at port 445
[2010/05/21 11:56:28,  0] rpc_client/cli_pipe.c:4045(cli_rpc_pipe_open_schannel)
  cli_rpc_pipe_open_schannel: failed to get schannel session key from server DOMAINCONTROLLER11.DOMAIN.AT for domain DOMAIN_NAME.
[2010/05/21 11:56:28,  0] auth/auth_domain.c:187(connect_to_domain_password_server)
  connect_to_domain_password_server: unable to open the domain client session to machine DOMAINCONTROLLER11.DOMAIN.AT. Error was : NT_STATUS_ACCESS_DENIED.
[2010/05/21 11:56:28,  3] libsmb/cliconnect.c:2032(cli_start_connection)
  Connecting to host=DOMAINCONTROLLER11.DOMAIN.AT

Der Domaincontroller akzeptiert root nicht (ist auch kein Domain User) -> ich hab ihm aber ein Passwwort mittels smbpasswd zugeteilt. Wenn ich als Domain Admin User der auch in der smb.conf wie root behandelt wird erscheint der Selbe fehler.
 
Interessant sie die Auszüge:
Code:
  Connecting to 10.17.0.10 at port 445
[2010/05/21 11:56:28,  0] rpc_client/cli_pipe.c:4045(cli_rpc_pipe_open_schannel)
  cli_rpc_pipe_open_schannel: failed to get schannel session key from server DOMAINCONTROLLER11.DOMAIN.AT for domain DOMAIN_NAME.
[2010/05/21 11:56:28,  0] auth/auth_domain.c:187(connect_to_domain_password_server)
  connect_to_domain_password_server: unable to open the domain client session to machine DOMAINCONTROLLER11.DOMAIN.AT. Error was : NT_STATUS_ACCESS_DENIED.
[2010/05/21 11:56:28,  3] libsmb/cliconnect.c:2032(cli_start_connection)
  Connecting to host=DOMAINCONTROLLER11.DOMAIN.AT

Mir sagt das Log: Verbindungsfehler
Siehe unter http://samba.org
 
Bin schon ein bisschen weiter - habe das Computerkonto gelöscht und wieder hinzugefügt. Es erscheinen noch einige Fehler näheres kann ich erst wieder am Mittwoch bekanntgeben.

Schönes Wochenende!

Cheers,
David
 
Bin nun schon ein bisschen weiter.

cupsaddsmb funktioniert nicht.

Zum debuggen verwende ich die manuellen Befehle (smbclient und rpcclient) mit der Option -k ( use Kerberos credentials). Und damit funktioniert das Treiber + PPD kopieren:
Code:
smbclient //cups01/print$ -k -c 'mkdir W32X86;put /etc/cups/ppd/PDF.ppd W32X86/PDF.ppd;put /usr/share/cups/drivers/ps5ui.dll W32X86/ps5ui.dll;put /usr/share/cups/drivers/pscript.hlp W32X86/pscript.hlp;put /usr/share/cups/drivers/pscript.ntf W32X86/pscript.ntf;put /usr/share/cups/drivers/pscript5.dll W32X86/pscript5.dll'

smbclient //cups01/print$ -k -c 'put /usr/share/cups/drivers/cups6.ini W32X86/cups6.ini;put /usr/share/cups/drivers/cupsps6.dll W32X86/cupsps6.dll;put /usr/share/cups/drivers/cupsui6.dll W32X86/cupsui6.dll'

rpcclient cups01 -k -c 'adddriver "Windows NT x86" "PDF:pscript5.dll:PDF.ppd:ps5ui.dll:pscript.hlp:NULL:RAW:pscript5.dll,PDF.ppd,ps5ui.dll,pscript.hlp,pscript.ntf,cups6.ini,cupsps6.dll,cupsui6.dll"'

Problem ist aber nun, dass ich zwar den Druckertreiber sehen kann im Samba aber er lässt sich nicht aktivieren:
Code:
root@cups01 /etc/samba $ rpcclient cups01 -k -c 'enumdrivers'
Connecting to host=cups01
resolve_lmhosts: Attempting lmhosts lookup for name cups01<0x20>
Connecting to 10.17.130.91 at port 445
Doing spnego session setup (blob length=107)
got OID=1.2.840.113554.1.2.2
got OID=1.2.840.48018.1.2.2
got OID=1.3.6.1.4.1.311.2.2.10
got principal=cifs/cups01.domain.com@DOMAIN.COM
Doing kerberos session setup
ads_cleanup_expired_creds: Ticket in ccache[FILE:/tmp/krb5cc_0] expiration Mon, 31 Mai 2010 18:26:55 CEST

[Windows NT x86]
Printer Driver Info 1:
        Driver Name: [PDF]

-----

root@cups01 /etc/samba $ rpcclient cups01 -k -c 'setdriver PDF PDF' -d 4
added interface eth0 ip=fe80::250:56ff:fead:6559%eth0 bcast=fe80::ffff:ffff:ffff:ffff%eth0 netmask=ffff:ffff:ffff:ffff::
added interface eth0 ip=10.17.130.91 bcast=10.17.130.255 netmask=255.255.255.0
lp_load_ex: refreshing parameters
Initialising global parameters
rlimit_max: rlimit_max (1024) below minimum Windows limit (16384)
params.c:pm_process() - Processing configuration file "/etc/samba/smb.conf"
Processing section "[global]"
doing parameter workgroup = DOMAIN WORK GROUP
doing parameter netbios name = CUPS01
handle_netbios_name: set global_myname to: CUPS01
doing parameter realm = DOMAIN.COM
doing parameter security = ads
doing parameter encrypt passwords = true
doing parameter password server = domaincontroller1.domain.com
doing parameter server string = %h server (Samba, Ubuntu)
doing parameter kerberos method = system keytab
doing parameter template shell = /bin/bash
doing parameter client use spnego = yes
doing parameter domain logons = no
doing parameter domain master = no
doing parameter local master = no
doing parameter preferred master = no
doing parameter log file = /var/log/samba/log.%m
doing parameter max log size = 1000
doing parameter syslog = 0
doing parameter bind interfaces only = yes
doing parameter interfaces = lo eth0
doing parameter log level = 3
doing parameter load printers = yes
doing parameter printing = cups
doing parameter printcap = cups
doing parameter invalid users = 
pm_process() returned Yes
Connecting to host=cups01
Connecting to 10.17.130.91 at port 445
Doing spnego session setup (blob length=107)
got OID=1.2.840.113554.1.2.2
got OID=1.2.840.48018.1.2.2
got OID=1.3.6.1.4.1.311.2.2.10
got principal=cifs/cups01.domain.com@DOMAIN.COM
Doing kerberos session setup
ads_cleanup_expired_creds: Ticket in ccache[FILE:/tmp/krb5cc_0] expiration Mon, 31 Mai 2010 18:26:55 CEST
result was WERR_ACCESS_DENIED

LogFile: http://pastebin.com/ZvMgBxcH

Falls weitere Logs benötigt werden bitte bescheid geben.

Danke, cheers,
David
 

Ähnliche Themen

Dovecot: Geteilte Postfächer (Shared Mailboxes) funktionieren nicht

Samba 4.9.5-Debian - Kennwort von unix übernehmen

Zugriff Ubuntu 16.04. auf Freigabe 18.04. LTS nicht möglich

SMB Zugriff auf Homeshare

solved Problem mit smtp (postfix) als send-only mta hinter NAT

Zurück
Oben