Schlagwort-Archive: Microsoft Windows 10

Microsoft Windows 10 Windows-Betriebssysteme sind vor allem auf Personal Computern und Servern verbreitet.

Netzwerk Drucker Verwaltung mit printui.dll im Command Prompt

printui.dll ist eine ausführbare Datei für die automatisierte Drucker Verwaltung, vor allem von Netzwerk Drucker und für Konfigurationsaufgaben. Mit Funktionen die von den Dialogfeldern für die Druckerkonfiguration verwendet werden. Diese Funktionen können auch aus einem Skript oder einer Befehlszeilen-Batchdatei heraus aufgerufen werden, oder interaktiv über die Eingabeaufforderung ausgeführt werden.

Netzwerk Drucker Verwaltung mit printui.dll

printui.dll wird mit rundll32.exe ausgeführt um Werkzeuge für anspruchsvolle Aufgaben bereitzustellen, für Drucker hinzufügen, Verwalten, löschen und Netzwerkdruckerverbindung herstellen.

Eigenschaften von Druckerserver öffnen

Netzwerk Drucker Verwaltung mit printui.dll im Command Prompt
Eigenschaften von Druckerserver öffnen
Eigenschaften von Druckerserver Abschnitt Treiber

Verbindung zu Netzwerk Drucker mit rundll32 printui.dll herstellen:

rundll32.exe printui.dll,PrintUIEntry /in /n \\server\LaserJet

Der auf dem SERVER freigegebene Netzwerkdrucker LaserJet wird auf dem Client Computer installiert und mit dem Server verbunden.

Drucker Installation mithilfe von rundll32 printui.dll und der Druckertreiber INF-Datei:

rundll32 printui.dll,PrintUIEntry /if /b "AddressLabel" /f C:\Driver\Zebra\ZBRN\ZBRN.inf /r "10.10.10.89" /m "ZDesigner GK420t" /Z

/if Installiert Drucker mithilfe der angegebenen INF-Datei.
/b Basisdruckername AddressLabel
/f Pfad zu der Druckertreiber INF-Datei.
/r Portname oder IP Adresse.
/m Modellname des Druckertreibers aus der INF-Datei.
/Z Drucker freigeben, Verwendung nur mit Option „/if“ möglich.

Lokaler Druckertreiber löschen mit rundll32 printui.dll:

rundll32 printui.dll,PrintUIEntry /dd /m "LaserJet" /q

/dd Löscht den lokalen Druckertreiber.
/m Modellname des Druckertreibers.
/q Mögliche Fehlermeldungen nicht ausgeben.

Verbindung zu Netzwerk Drucker löschen mit rundll32 printui.dll:

rundll32 printui.dll,PrintUIEntry /dn /n "LaserJet" /q

/dn Löscht die Netzwerkdruckerverbindung.
/n Der Name des Druckers.

  Hilfe zu printui.dll wird mit folgendem Kommando in der Eingabeaufforderung ausgegeben.

rundll32 printui.dll,PrintUIEntry /?

Batch Beispiel: Netzwerk Drucker Verbinden mit rundll32 printui.dll:

Beispiel für Netzwerkdruckerverbindung aus einem Loginscript.

@echo off
@REM Batchdatei Netzwerkdruckerverbindung
if /i %computername:~0,2%==BE goto Bern 
if /i %computername:~0,2%==BS goto Basel
if /i %computername:~0,7%==SPECTRE goto LAPTOP
goto END
:Bern
@REM Netzwerkdruckerverbindung Bern
rundll32 printui.dll,PrintUIEntry /in /n \\SERVER\LaserJet_BE
goto END
:Basel
@REM Netzwerkdruckerverbindung Basel
rundll32 printui.dll,PrintUIEntry /in /n \\SERVER\LaserJet_BS
goto END
:LAPTOP
@REM Netzwerkdruckerverbindung SPECTRE
rundll32 printui.dll,PrintUIEntry /in /n \\SERVER\OfficeJet_HO
goto END
:END

Lets Encrypt-Zertifikat mit ACME2 auf Windows Server

Installation des Lets Encrypt-Zertifikat mit Win-ACME2 auf Windows Server

Let’s Encrypt ist ein Aussteller für freie SSL-Zertifikate, Ende 2015 in Betrieb gegangen, erfreut sich die CA Zertifizierungsstelle für kostenlose Zertifikate grosser Beliebtheit, anfänglich für Linux, gibt es sie nun auch für Windows. Mit ACME 2 lässt sich zudem das Management von SSL/TLS-Zertifikate weitgehend auto­matisieren.

Installation von Win-ACMEv2

win-acme-pluggable

ACMEv2 beinhaltet kein Setup zur Installation, das win-acme Paket wird von hier auf den Server herunter­geladen und in ein beliebiges Verzeichnis entpackt. Das Verzeichnis sollte danach nicht mehr verändert werden, da der Pfad für die Rezertifizierung benötigt wird.

Wie bei der früheren Version handelt es sich bei der aktuellen Version um ein in der Kommando­zeile geführtes Tool mit Menüs, so dass es sich etwa auch unter Server Core ausführen lässt. Gestartet wird win-acme über den Aufruf von wacs.exe.

Lets Encrypt Zertifikat anfordern

Bei der interaktiven Anforderung eines Zertifikats mit win-acme über den Simple Mode ist der Vorgang weitgehend gleich wie mit der vorgänger Version 1. In diesem Beispiel wird ACME 2 auf einem Windows Server 2019 mit der IIS-Rolle ausgeführt.

Für die Verifizierung der Domäne wird hier die Bindung konfiguriert, aus dem Internetinformationsdienste (IIS)-Manager – InetMgr.exe.

Internetinformationsdienste (IIS)-Manager
Abbildung: Internetinformationsdienste (IIS)-Manager

Nach ausführen von wacs.exe wählt man die Option N, um ein neues Zertifikat mit den Standard­einstellungen zu erzeugen. Dabei sucht win-acme nach den Bindungen im IIS. Sind keine Bindungen konfiguriert bricht win-acme den Vorgang ab.

Lets encrypt acme Console bei Windows - letsencrypt.exe

Im nächsten Schritt wählt man die IIS-Website aus, für die man das Zertifikat anfordern und ausstellen möchte.

Im Schritt darauf ist zu entscheiden, ob alle Bindungen oder nur bestimmte IIS-Websites verwendet werden sollen. Im zweiten Fall wählt man diese über einen Filter aus.

Nach einer weiteren Bestätigung startet die Zertifikats­anforderung. Um die Autorität der Domain zu verifizieren, nutzt win-acme die Methode http-01. Dabei erhält der Client von Let’s Encrypt ein Token, diesen er in eine Datei auf dem lokalen Server schreibt, die danach von Let’s Encrypt ausgelesen wird.

   Let’s Encrypt erwartet den Token über HTTP aus der Datei auszulesen. Daher erfordert win-acme auf der Firewall die Freigabe für Port 80 zum Server.

Das Zertifikat befindet sich nach dem erfolgreichen Abschluss des Vorgangs im Zertifikatsspeicher des Servers. Zusätzlich speichert win-acme das Zertifikat im PEM und PFX-Format unter folgendem Pfad ab.

C:\ProgramData\win-acme\acme-v02.api.letsencrypt.org

Die Autorität der Domäne, für die man ein Zertifikat anfordert, muss man nicht nur bei der Erst­ausstellung nachweisen, sondern auch alle 3 Monate für die Erneuerung des Zertifikats.

In den häufigsten Situationen ist es nicht erwünscht, dass ein Server nur für die Anforderung eines Zertifikates ohne Schutz dauerhaft auf Port 80 aus dem Internet erreichbar ist. Hier wäre die Nutzung eines Proxys oder einer temporären Port Freigabe zu erwägen.

Um das Freigeben von Port 80 auf der Firewall zu umgehen, gibt es die Möglichkeit, statt http-01 den Challenge zu wechselen. Hier bietet sich vor allem DNS-01 an, dabei wird das Token als TXT-Record im DNS eingetragen.

_acme-challenge.<MEINE_DOMAIN>

Diese Methode hat zudem den Vorteil, dass sich damit Wildcard-Zertifikate ausstellen lassen. Voraus­setzung für DNS-01 ist natürlich, dass die betreffende Domain extern gehostet wird und somit für Let’s Encrypt zugänglich ist.