Hallo,
Für ein kleines Netzwerk habe ich einen Printserver mit Debian Lenny und CUPS installiert.
Das Ganze funktioniert bis jetzt ohne Probleme. - Da aber auch Clients außerhalb des lokalen Netzwerks auf den Drucker zugreifen sollen, ist eine Benutzer-Authentifizierung nötig.
Dafür wurde die cupsd.conf wie folgt angepasst:
Die Clients greifen wie folgt auf den Drucker zu:
Ohne die markierten Zeilen wird der Auftrag ohne Probleme ausgeführt. Sobald sich die Benutzer aber anmelden sollen, geht gar nichts mehr.
Beim Versuch eine Testseite von Windows XP zu drucken, quittiert Windows den Auftrag mit einem "Fehler" in der Warteschlange.
Folgende Einträge tauchen in der access_log von cups auf:
In der error_log sind folgende Einträge zu finden:
Offenbar sendet Windows also keine Zugangsdaten an den Server. Aber wieso?
Ist meine Herangehensweise zur Authentifizierung überhaupt die Richtige?
Für ein kleines Netzwerk habe ich einen Printserver mit Debian Lenny und CUPS installiert.
Das Ganze funktioniert bis jetzt ohne Probleme. - Da aber auch Clients außerhalb des lokalen Netzwerks auf den Drucker zugreifen sollen, ist eine Benutzer-Authentifizierung nötig.
Dafür wurde die cupsd.conf wie folgt angepasst:
Code:
[...]
# Allow remote access
Port 631
Listen /var/run/cups/cups.sock
# Show shared printers on the local network.
Browsing On
BrowseOrder allow,deny
BrowseAllow all
DefaultAuthType Basic
<Location />
[b]AuthType Default
Require user @SYSTEM[/b]
Encryption Required
Order allow,deny
#Allow @LOCAL
Allow from all
</Location>
[...]
Die Clients greifen wie folgt auf den Drucker zu:
Code:
https://serverip:631/printers/druckername (intern)
https://domain:631/printers/druckername (extern)
Ohne die markierten Zeilen wird der Auftrag ohne Probleme ausgeführt. Sobald sich die Benutzer aber anmelden sollen, geht gar nichts mehr.
Beim Versuch eine Testseite von Windows XP zu drucken, quittiert Windows den Auftrag mit einem "Fehler" in der Warteschlange.
Folgende Einträge tauchen in der access_log von cups auf:
Code:
[...]
192.168.0.100 - - [24/May/2009:17:06:48 +0200] "POST /printers/officejet_5500 HTTP/1.1" 401 0 - -
192.168.0.100 - - [24/May/2009:17:06:48 +0200] "POST /printers/officejet_5500 HTTP/1.1" 401 0 - -
192.168.0.100 - - [24/May/2009:17:06:48 +0200] "POST /printers/officejet_5500 HTTP/1.1" 401 0 - -
192.168.0.100 - - [24/May/2009:17:06:48 +0200] "POST /printers/officejet_5500 HTTP/1.1" 401 0 - -
192.168.0.100 - - [24/May/2009:17:06:48 +0200] "POST /printers/officejet_5500 HTTP/1.1" 401 0 - -
192.168.0.100 - - [24/May/2009:17:06:49 +0200] "POST /printers/officejet_5500 HTTP/1.1" 401 0 - -
192.168.0.100 - - [24/May/2009:17:06:49 +0200] "POST /printers/officejet_5500 HTTP/1.1" 401 0 - -
192.168.0.100 - - [24/May/2009:17:07:03 +0200] "POST /printers/officejet_5500 HTTP/1.1" 401 0 - -
85.183.156.199 - - [24/May/2009:17:07:03 +0200] "POST /printers/officejet_5500 HTTP/1.1" 401 0 - -
In der error_log sind folgende Einträge zu finden:
Code:
[...]
D [24/May/2009:17:06:49 +0200] encrypt_client: 9 Connection from 192.168.0.100 now encrypted.
D [24/May/2009:17:06:49 +0200] cupsdReadClient: 9 POST /printers/officejet_5500 HTTP/1.1
D [24/May/2009:17:06:49 +0200] cupsdAuthorize: No authentication data provided.
D [24/May/2009:17:06:49 +0200] cupsdIsAuthorized: username=""
D [24/May/2009:17:06:49 +0200] cupsdSendError: 9 code=401 (Unauthorized)
D [24/May/2009:17:06:49 +0200] cupsdSendHeader: WWW-Authenticate: Basic realm="CUPS"
D [24/May/2009:17:06:49 +0200] cupsdCloseClient: 9
D [24/May/2009:17:06:49 +0200] SSL shutdown successful!
D [24/May/2009:17:06:49 +0200] cupsdCloseClient: 9
D [24/May/2009:17:07:03 +0200] cupsdAcceptClient: 9 from 192.168.0.100:631 (IPv4)
D [24/May/2009:17:07:03 +0200] Report: clients=1
D [24/May/2009:17:07:03 +0200] Report: jobs=4
D [24/May/2009:17:07:03 +0200] Report: jobs-active=0
D [24/May/2009:17:07:03 +0200] Report: printers=2
D [24/May/2009:17:07:03 +0200] Report: printers-implicit=0
D [24/May/2009:17:07:03 +0200] Report: stringpool-string-count=411
D [24/May/2009:17:07:03 +0200] Report: stringpool-alloc-bytes=9320
D [24/May/2009:17:07:03 +0200] Report: stringpool-total-bytes=8856
Offenbar sendet Windows also keine Zugangsdaten an den Server. Aber wieso?
Ist meine Herangehensweise zur Authentifizierung überhaupt die Richtige?