HowTo - Bereitstellung von Druckern über GPO
- Former user (Deleted)
- Dennis Balzuweit
Ausgangssituation
Auf dem CLARC ENTERPRISE Server werden alle Drucker freigegeben. Alle Drucker sollen auf den Windows-Clients mittels GPO bekannt gemacht werden.
- Es gibt prinzipiell zwei Möglichkeiten, Drucker den Windows – Clients zuzuordnen: als Netzwerkdrucker, die direkt an einen entfernten Port (i.d.R. TCP/IP – Port) angebunden sind oder als lokale Drucker, die mit einem lokalen Port verbunden sind. Der lokale Port kann wiederum virtuell und an eine fremde IP-Adresse gebunden sein.
- Eine direktere und offensichtliche Methode, die auch ganz einfach automatisierbar ist, besteht darin, den Drucker als Netzwerkdrucker zu erstellen. Jedoch führt es bei mehreren Druckern dazu, dass sie alle an einen einzigen fremden Port angebunden sind. Tests haben gezeigt, dass bei dieser Konstellation (zumindest mit Windows 7 – Clients) alle Ausdrucke auf der Server-Seite auf einem einzigen Drucker ausgegeben werden. Das Problem ist auch mit anderen Produkten (z.B. bei der Fachsteuerung einiger Netzwerkdrucker) bekannt.
- Auch bei der Wahl der zweiten Methode (Erstellung lokaler Drucker) besteht dasselbe Problem, doch es gibt hier die Möglichkeit, für jeden Drucker einen eigenen virtuellen lokalen Port zu erstellen. Die Tests haben gezeigt, dass diese Variante korrekt funktioniert. Sie wurde dann für die Implementierung ausgewählt.
- Voraussetzung für eine automatische Installation eines Druckers mittels GPO ist, dass sie dialogfrei verlaufen kann. Das ist bei einem entfernten Drucker unter Windows 7
- nur im Computerkontext möglich und
- erfordert, dass die Richtlinie „Point-and-Print-Einschränkungen“ die Installation von Druckertreibern vom entsprechenden Server im „Silent-Mode“ zulässt.
Implementierung
Übersicht der erforderlichen Systemumgebung und Anforderungen
- Der Server ist domänenweit über DNS auflösbar.
Beispiel: PCAPSERVER
- Die Namen der Druckerschlangen sind bekannt.
Beispiel: EXAMPLE_PRINTER
- Der Server ist firmenweit über die TCP-Ports 80, 515 und 445 erreichbar. Der Port 445 ist notwendig um die freigegebenen Drucker auf den Clients installieren zu können.
- Es wurde eine GPO erstellt, die alle drei nachfolgenden Implementierungs-Aufgaben erfüllt:
Ermöglichung der dialogfreien Zuordnung der Drucker auf den Clients
Die Richtlinie „Point-and-Print-Einschränkungen“ muss entweder ausgeschaltet sein, oder es müssen innerhalb der Richtlinie explizit die Server aufgelistet werden, von denen die Druckertreiber heruntergeladen werden dürfen. Die zweite Möglichkeit sieht zwar eleganter aus, hat sich leider in der Praxis als absolut unzuverlässig erwiesen. Die Richtlinie ist in unserer Implementation deaktiviert:
Erstellung von lokalen Drucker-PortsErstellung von lokalen Drucker-Ports
Dies wurde in der GPO durch eine direkte Eintragung von Registry-Werten gelöst. Pro Port muss ein Schlüssel im Pfad
HKLM\SYSTEM\CurrentControlSet\Control\Print\Monitors\Standard TCP/IP Port\Ports
angelegt werden:
Jeder Schlüssel beinhaltet folgende Werte (angepasst an Queue-Namen):
Gleiche Schlüssel mit gleichen Werten müssen auch unter
HKLM\SYSTEM\ControlSet001\Control\Print\Monitors\Standard TCP/IP Port\Ports
und
HKLM\SYSTEM\ControlSet002\Control\Print\Monitors\Standard TCP/IP Port\Ports
angelegt werden.
Der Wert des REG_DWORDs „Version“ variiert je nach Betriebssystem und muss für Windows XP „1“ und für Windows 7 (und für Windows Server 2008 R2) „2“ sein. Das wurde empirisch festgestellt.
In der GPO sind diese Registry-Einträge unter
Einstellungen -> Windows-Einstellungen -> Registrierung
verfasst.
Installation von Druckern
Die Installation von Druckern ist in der GPO im Abschnitt
Computerkonfiguration -> Systemeinstellungen -> Drucker
definiert:
Einzelne Drucker müssen so eingerichtet sein:
Hinweise
Aus technischen Gründen, die in erster Linie mit der Art und Weise zusammenhängen, wie Windows die Druckerports und die Drucker beim Hochfahren ermittelt und anbindet, funktionieren die Drucker erst nach dem zweiten Start des Computers mit zugeordneter GPO.
Ein gpupdate ist nicht ausreichend!