ForumDrucken im Netz
Roland Welcker – Donnerstag, 24. Januar 2008 13:37 Uhr

Liebe Linux-Freunde,

ein PC (192.168.0.4) als Server und ein Laptop (192.168.0.5) als Client sind per Kabel mit einem Router verbunden. Es laufen Suse 10.0 auf dem Server und Suse 10.2 auf dem Client. Der Datenzugriff Client zum Server mit NFS funktioniert dank Eurer Hilfe. Nun soll der Client auf dem USB-Drucker des Servers drucken. Das funktioniert aber noch nicht. Ich habe es mit dem Drucker-Browsing versucht.

Folgende Zeilen in /etc/cups/cupsd.conf sind aktiv:

Classification none
DefaultCharset UTF-8
DefaultLanguage en
Printcap /etc/printcap
PrintcapFormat BSD
RemoteRoot remroot
SystemGroup sys
ServerCertificate /etc/cups/ssl/server.crt
ServerKey /etc/cups/ssl/server.key

Encryption IfRequested
Satisfy All
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
Allow From 127.0.0.2
Allow From 192.168.0.255
Allow From @LOCAL
Allow From 192.168.0.5

Require group sys
Encryption IfRequested
Satisfy All
Order deny,allow
Deny From All
Allow From 127.0.0.1
Allow From 127.0.0.2
Allow From 192.168.0.*

Order Deny,Allow
Deny From All
Allow From 127.0.0.1
Allow From 127.0.0.2
Allow From 192.168.0.255
Allow From @LOCAL
Allow From 192.168.0.5

HostnameLookups Off
KeepAlive On
KeepAliveTimeout 60
MaxClients 100
MaxRequestSize 0m
Timeout 300
Listen *:631
AccessLog /var/log/cups/access_log
ErrorLog /var/log/cups/error_log
PageLog /var/log/cups/page_log
MaxLogSize 1m
LogLevel info
PreserveJobHistory On
PreserveJobFiles Off
AutoPurgeJobs No
MaxJobs 0
MaxJobsPerPrinter 0
MaxJobsPerUser 0
User lp
Group lp
RIPCache 8m
FilterLimit 0
DataDir /usr/share/cups
DocumentRoot /usr/share/cups/doc
RequestRoot /var/spool/cups
ServerBin /usr/lib/cups
ServerRoot /etc/cups
TempDir /var/spool/cups/tmp
Browsing On
BrowseProtocols CUPS
BrowsePort 631
BrowseInterval 30
BrowseTimeout 300
BrowseAllow @LOCAL
BrowseOrder deny,allow
ImplicitClasses On
ImplicitAnyClasses Off
HideImplicitMembers Yes
BrowseShortNames Yes
runasuser Yes
BrowseAddress @LOCAL

Aktivierung erfolgt mit /etc/init.d/cups restart.
Auf dem Server zeigt der lpstat-Befehl Folgendes:

linux:~ # lpstat -v
device for stylusphotor220: usb://EPSON/Stylus%20Photo%20R220
device for tp0: usb://EPSON/Stylus%20Photo%20R220
device for tp1: usb://EPSON/Stylus%20Photo%20R220
device for tp2: usb://EPSON/Stylus%20Photo%20R220
device for tp3: usb://EPSON/Stylus%20Photo%20R220
linux:~ #

d.h. es existieren 4 TurboPrint- und eine CUPS-Warteschlange

Derselbe Befehl auf dem Client zeigt aber:
“No destinations added”

Die letzten Zeilen in /var/log/cups/acces_log lauten:

localhost – – [24/Jan/2008:10:48:16 +0100] “POST / HTTP/1.1” 200 132
localhost – – [24/Jan/2008:10:48:16 +0100] “POST / HTTP/1.1” 200 72
localhost – – [24/Jan/2008:10:48:16 +0100] “POST / HTTP/1.1” 200 150

dito in error_log:

I [24/Jan/2008:10:41:00 +0100] Loaded configuration file “/etc/cups/cupsd.conf”
I [24/Jan/2008:10:41:05 +0100] Configured for up to 100 clients.
I [24/Jan/2008:10:41:05 +0100] Allowing up to 100 client connections per host.
I [24/Jan/2008:10:41:05 +0100] Full reload is required.
I [24/Jan/2008:10:41:19 +0100] LoadPPDs: Read “/etc/cups/ppds.dat”, 4056 PPDs…
I [24/Jan/2008:10:41:25 +0100] LoadPPDs: No new or changed PPDs…
I [24/Jan/2008:10:41:26 +0100] Full reload complete.
I [24/Jan/2008:10:42:57 +0100] Scheduler shutting down normally.
I [24/Jan/2008:10:42:57 +0100] Loaded configuration file “/etc/cups/cupsd.conf”
I [24/Jan/2008:10:42:57 +0100] Configured for up to 100 clients.
I [24/Jan/2008:10:42:57 +0100] Allowing up to 100 client connections per host.
I [24/Jan/2008:10:42:57 +0100] Full reload is required.
I [24/Jan/2008:10:42:57 +0100] LoadPPDs: Read “/etc/cups/ppds.dat”, 4056 PPDs…
I [24/Jan/2008:10:42:57 +0100] LoadPPDs: No new or changed PPDs…
I [24/Jan/2008:10:42:57 +0100] Full reload complete.

und in page_log steht nichts Aktuelles.

Auf dem Server funktioniert das Drucken mit allen Warteschlangen.
Was tun, sprach Zeus.
Roland.

1 Antwort
Rico Rommel – Donnerstag, 24. Januar 2008 15:27 Uhr

Hallo Roland,

gehört die oben aufgeführte cupsd.conf zum server oder zum client?

Wenn diese zum Server gehört, reicht es im Normalfall, im Client die Option
Browsing On zu setzen.

Diese Sachen kann man auch sehr gut über http://localhost:631 konfigurieren.

mfg
Rico

Roland Welcker – Donnerstag, 24. Januar 2008 18:33 Uhr

Hallo Rico,
danke für die schnelle Antwort. Die aufgelistete cupsd.conf ist die auf dem Server. Dieselbe für den Client lautet:

LogLevel info
SystemGroup sys root
Listen localhost:631
Listen /var/run/cups/cups.sock
Browsing On
BrowseOrder allow,deny
BrowseAllow @LOCAL
DefaultAuthType Basic

Order allow,deny
Allow From localhost
Allow From 127.0.0.2

Encryption Required
Order allow,deny
Allow From localhost

AuthType Basic
Require user @SYSTEM
Order allow,deny
Allow From localhost

Require user @OWNER @SYSTEM
Order deny,allow

AuthType Basic
Require user @SYSTEM
Order deny,allow

Require user @OWNER @SYSTEM
Order deny,allow

Order deny,allow

also der “Browsing On”-Befehl ist eigentlich da.
mit localhost:631 konnte ich leider nicht viel anfangen. Er funktioniert auch nur auf dem Client, nicht auf dem Server (Fehler 404, “Ressource nicht gefunden”)

Gruß Roland

Rico Rommel – Donnerstag, 24. Januar 2008 19:10 Uhr

Das Problem scheint der Server zu sein, da er auf Port 631 nicht reagiert.

Hast du eventuell eine Firewall am laufen, die Anfragen auf diesem Port
wegblockt?

Mit nmap bzw. knmap kann man auch prüfen, welche Dienste auf welchem Port
lauschen. (Ich hoffe, dass war jetzt keine Aufforderung zu einer Straftat)

Auf Port 631 sollte ipp erscheinen. Manchmal ist dieser Port von einem anderen
Dienst schon belegt, aber ich glaube dann startet cups gar nicht erst.

mfg
Rico

Marcus T. – Donnerstag, 24. Januar 2008 19:36 Uhr

Hallo,

folgende Zeile im Client könnte die Ursache sein:
Listen localhost:631

das bewirkt, dass der Client nur IP-Pakete von 127.0.0.1 (also von sich selbst) annimmt. Das muss, wie bereits auf dem Server geschehen, geändert werden in:
Listen *:631

Anschließend sollte das CUPS auf dem Client auch vom Server aus erreichbar sein über http://192.168.0.5:631.

Gruß
Marcus

Roland Welcker – Freitag, 25. Januar 2008 11:12 Uhr

Hallo,

im Client in cupsd.conf habe ich den Befehl “Listen *:631” anstatt “Listen localhost:631” eingefügt. Kein Erfolg.

http://192.168.0.5:631 im Browser zeigt: 403 Forbidden.

Mit nmap bzw. dem Frontend dazu sehe ich u.a. mit “nmap -sS -O -PI _PT 192.168.0.4” “631/tcp open ipp”
Derselbe Befehl für …5 (vom Server abgeschickt) zeigt folgenden Text:

Starting nmap 3.81 ( http://www.insecure.org/nmap/ ) at 2008-01-25 10:48 CET
Warning: OS detection will be MUCH less reliable because we did not find at least 1 open and 1 closed TCP port
Interesting ports on 192.168.0.5:
(The 1662 ports scanned but not shown below are in state: filtered)
PORT STATE SERVICE
113/tcp closed auth
MAC Address: 00:0A:E4:BD:45:E6 (Wistron)
Too many fingerprints match this host to give specific OS details

Nmap finished: 1 IP address (1 host up) scanned in 31.536 seconds

Hilft Euch das weiter?
Gruß Roland

Rico Rommel – Freitag, 25. Januar 2008 14:39 Uhr

Hallo,

wie ich oben schon schrieb, könnte eine Firewall das Problem verursachen.
Wenn eine läuft, gib einfach mal Port 631 auf Server und Client frei oder
deaktiviere sie zu Testzwecken auf beiden Rechnern gänzlich.

mfg
Rico

Roland Welcker – Freitag, 25. Januar 2008 16:07 Uhr

Hallo Rico.

nun geht es! Im Server stellte ich in der Firewall folgende erlaubte Dienste fest: IPP-Server, 2 * NFS, Samba-Server.
Im Client war nur der NFS-Client eingetragen, ich habe also einen IPP-Client angefügt und alles funzt.

Herzlichen Dank für Dich und schönes Wochenende
Roland.