Selbstsigniertes Zertifikat für den IIS

Hier können Anleitungen für die verschiedensten Themengebiete gepostet werden.
Antworten
JoachimL
WHS-Experte
Beiträge: 1202
Registriert: 21. Sep 2009, 22:48

Selbstsigniertes Zertifikat für den IIS

Beitrag von JoachimL » 14. Okt 2012, 19:44

Auch wenn man beim WHS ein Zertifikat für die *.homerserver.com Adresse automatisch bekommt und das sogar von den meisten Browsern als vertrauenswürdig eingestuft wird, so hat die *.homeserver.com Adresse für mich den Nachteil, dass die *.homeserver.com Adresse nur dann erreichbar ist, wenn der WHS nach der nächtlichen Zuweisung einer neuen IP-Adresse auch mal an war und dann seine Adresse auch aktualisieren konnte - das passt nicht ganz zu meinem eher abendlichen Nutzungsverhalten und dass ich den WHS trotzdem immer von unterwegs erreichen können möchte. Also bevorzuge ich DynDNS (NoIP u.a. gehen natürlich auch), da aktualisiert der Router die Adresse ohne Zutun des WHS. Ein dazu passendes Zertifikat kann man z.B. von http://www.startssl.com/ bekommen, aber nur wenn unter der DynDNS-Domain ein Mailserver läuft, und das ist nicht jedermans Sache. Man kann sich aber auch ein Zertifikat selbst ausstellen, z.B. mit OpenSSL, das habe ich selbst auch schon mal gemacht (viewtopic.php?f=11&t=7373&p=53123#p53123.

Aber geht es nicht auch einfacher? Ja, es geht einfacher! Danke an Christian d'Heureuse für seine Anleitung auf http://www.inventec.ch/chdh/notes/14.htm. Ein Tool um sich selbst Zertifikate auszustellen ist in den .Net Tools und im Window SDK 7 enthalten. Ich hab die Version von http://www.microsoft.com/en-us/download ... px?id=3138 verwendet, die Dokumentation findet sich unter http://msdn.microsoft.com/en-us/library ... s.90).aspx. Man kann das auf dem WHS oder auf einem Client machen, wenn man es auf einem Client macht muss man das Zertifikat dann mit dem MMC Snap-In Zertifikate auf den WHS befördern.
Damit das Zertifikat an der richtigen Stelle abgelegt wird, muss man die CMD Shell als Administrator starten:
startmenu.png
startmenu.png (24.24 KiB) 7595 mal betrachtet
Die Anweisung zum Erzeugen des Zertifikats sieht dann etwa so aus:

Code: Alles auswählen

makecert -a sha1 -e 10/31/2014 -r -n "CN=<dyndns-domain>" -pe -sky exchange -eku 1.3.6.1.5.5.7.3.1 -ss my -sr LocalMachine -sp "Microsoft RSA SChannel Cryptographic Provider" -sy 12
Auf dem WHS ausgeführt ist das Zertifikat gleich an der richtigen Stelle um mit dem IIS-Manager für eine oder mehrere Websites ausgewählt zu werden..
Will man nicht dauernd eine Warnung beim Zugriffen auf die Websites haben, dann exportiert man sich das Zertifikat mit der MMC ohne den privaten Schlüssel in eine Datei die man auf den Clients als Trusted Root CA importiert...
WHS r.i.p. - Software die nicht mehr gewartet wird sollte man nicht mehr einsetzen.
Bei mir laufen drei Dell T20, inzwischen alle unter Hyper-V-2019. Darauf viele virtuelle Maschinen, darunter Windows 10 Pro, Ubuntu 18.04 LTS (teilweise mit Docker), und auch mal andere. Ein T20 läuft 7*24 und stellt u.a. Mailcow-Dockerized und einen Samba-Domain-Controller bereit. Klingt vielleicht seltsam, aber so ist das System - alle - mit Bitlocker verschlüsselt und kann vollständig und konsistent gesichert werden - beides sonst unter Linux schwierig bis unmöglich. Zum Sichern dient das von mir entwickelte Lindenberg Software Backup.
Fragen bitte nicht per PN sondern im Forum - dann haben andere auch was davon. Ich poste hier in meiner Freizeit, Ungeduld ist meiner Meinung nach fehl am Platz...

ofeikes
Foren-Einsteiger
Beiträge: 6
Registriert: 21. Okt 2012, 13:32

Re: Selbstsigniertes Zertifikat für den IIS

Beitrag von ofeikes » 21. Okt 2012, 15:12

Hallo Joachim,
zunächst vielen Dank für die Anleitung, hätte ich die drei Tage früher gefunden, hätte ich jetzt keine Homeserver Domain ;-)

Ein (oder zwei, je nach Sichtweise) kleine(s) Problem(s) habe ich allerdings noch:
1) Ich finde die mit "makecert" erstellen Zertifikate (das Tool sagt "Succeeded" im Konsolenfenster) nirgendwo. Weder im IIS unter "Serverzertifikate" noch in der WHS Zertifizierungsstelle.
Ich habe das umgangen, indem ich direkt aus dem IIS Manager eine Domainzertifizierungsanfrage and die lokale WHS Zertifiezeriungsstelle gesand habe und das dann in den IIS importiere. Möglicherweise ist die Vorgehensweise Ursache für Punkt 2?

2) Das eigentliche Problem: Ich habe auf der "Default" Webseite im IIS Manager unter Bindungen das neue Zertifikat für meine no-ip.org Domain ausgewählt. Der Remote Web Zugriff nutzt dann auch das jeweils ausgewählte Zertifikat. Gehe ich über die nicht ausgewählte Domain, meckert der Browser.
So weit, so gut.
Aber: Versuche ich nun aus dem Browser das Dashboard aufzurufen, zeigt mit die Meldung immer noch die homerserver.com Domain an und verweigert dann die Verbindung mit der RemoteApp.
Muss ich noch an andere Stelle auf das neue Zertifikat umstellen?

Viele Grüße,
Oliver
*edit* Signature added
WHS 2011
ASRock H77M mit Intel RAID
2* 3TB WD Red RAID 1 Volume 0 - System + Daten
1* 1TB WD Green für Serversicherung

JoachimL
WHS-Experte
Beiträge: 1202
Registriert: 21. Sep 2009, 22:48

Re: Selbstsigniertes Zertifikat für den IIS

Beitrag von JoachimL » 12. Nov 2012, 07:50

Hallo Oliver,
Sorry, für die späte Antwort, irgendwie hab ich diesen Post übersehen.
ofeikes hat geschrieben:zunächst vielen Dank für die Anleitung, hätte ich die drei Tage früher gefunden, hätte ich jetzt keine Homeserver Domain ;-)
es schadet nicht, zweigleisig zu fahren. Ich hab auch eines, verwendes aber fast nie.
ofeikes hat geschrieben:1) Ich finde die mit "makecert" erstellen Zertifikate (das Tool sagt "Succeeded" im Konsolenfenster) nirgendwo. Weder im IIS unter "Serverzertifikate" noch in der WHS Zertifizierungsstelle.
Ich habe das umgangen, indem ich direkt aus dem IIS Manager eine Domainzertifizierungsanfrage and die lokale WHS Zertifiezeriungsstelle gesand habe und das dann in den IIS importiere.
Ich habe das ganze nicht auf dem Server sondern auf einem Client gemacht, weil ich Entwicklungstools ungern auf dem Server installiere (zumal Atom!). Bei mir waren aber die Zertifikaten auf dem Client dort wie beschrieben und der Transport zum Server wie üblich..
hat jemand anderes das gleiche Problem?
ofeikes hat geschrieben:2)...Aber: Versuche ich nun aus dem Browser das Dashboard aufzurufen, zeigt mit die Meldung immer noch die homerserver.com Domain an und verweigert dann die Verbindung mit der RemoteApp.
Muss ich noch an andere Stelle auf das neue Zertifikat umstellen?
Vermutlich ja, aber ich hätte grundsätzliche Bedenken das Dashboard aus dem Browser oder vor allem aus dem Internet aufzurufen, zuhause brauchst Du den Umweg nicht. RDP wurde dieses Jahr zweimal von MS gepatcht, da sind weitere Sicherheitsprobleme nicht ausgeschlossen. Wenn ich von unterwegs administrieren muss, dann immer über VPN, und das Dashboard läuft sowieso meist auf dem Server (dauernd offen).
Gruß Joachim
WHS r.i.p. - Software die nicht mehr gewartet wird sollte man nicht mehr einsetzen.
Bei mir laufen drei Dell T20, inzwischen alle unter Hyper-V-2019. Darauf viele virtuelle Maschinen, darunter Windows 10 Pro, Ubuntu 18.04 LTS (teilweise mit Docker), und auch mal andere. Ein T20 läuft 7*24 und stellt u.a. Mailcow-Dockerized und einen Samba-Domain-Controller bereit. Klingt vielleicht seltsam, aber so ist das System - alle - mit Bitlocker verschlüsselt und kann vollständig und konsistent gesichert werden - beides sonst unter Linux schwierig bis unmöglich. Zum Sichern dient das von mir entwickelte Lindenberg Software Backup.
Fragen bitte nicht per PN sondern im Forum - dann haben andere auch was davon. Ich poste hier in meiner Freizeit, Ungeduld ist meiner Meinung nach fehl am Platz...

ofeikes
Foren-Einsteiger
Beiträge: 6
Registriert: 21. Okt 2012, 13:32

Re: Selbstsigniertes Zertifikat für den IIS

Beitrag von ofeikes » 21. Nov 2012, 10:43

Hallo Joachim,
kein Problem, wir haben ja alle noch ein "echtes Leben", oder? ;-)
Und vielen Dank für die ausführlichen Hinweise. Ein echtes "Willkommen" für mich WHS Board Neuling hier! :-D

Ich hatte so auch noch Zeit so einiges Auszuprobieren, eine echte Lösung ist es aber nicht geworden:

1) Wenn ich den "makecert" richtig(!!!) eingebe (also genau so wie du sagst und nicht versuche "clever" zu sein um das Zertifikat in den anderen Zertifikatspeicher - den von der lokalen Zertifizierungsstelle auf dem WHS - zu bekommen), dann taucht es auch an der von dir beschrieben Stelle auf

2) Die Ergebnisse sind die Selben wie mit dem von mir durch die lokale WHS Zertifizierungsstelle erstellten Zertifikat (s.o.) => Das ist das einzige "greifbare" Ergebnis von meinen Tests. Man kann also mit WHS Bordmitteln ein eigenes Zertifikat für diesen Zweck erstellen ohne die Entwicklertools irgendwo zu installieren.

3) Wenn man den "Remote Wizard" vom WHS benutzt um den Zugriff wieder auszuschalten, werden die Zertifikate an beiden Stellen auf ein internes Serverzertifikat zurückgesetzt, also hat der Wizard Zugriff auf die richtigen Stellen.
Ich habe einen MS Knowledgebase einen Artikel gefunden wie man in Server 2008 Remoteapps konfiguriert (Link kommt, gerade nicht zur Hand), hierfür benötigt man aber eine Serverrolle, die beim WHS zwar nicht installiert ist, aber anwählbar. Ich nehme an man kann die nachinstallieren, da der Wizard das aber schon irgendwie umgeht, habe ich mich das bisher nicht getraut.... Könnte ja den Wizard zerschießen :-(

"Lösung" bis jetzt:
Ich habe (wieder) eine MS Homeserver Domain UND eine no-IP domain. Mein Router hält die no-IP Domain aktuell und weckt bei inboud Netzwerk den Server. Wenn also der Server es nicht geschafft hat -wegen Standby- die MS Domain zu aktualisieren kann ich über die andere Domain (mit Zertifikatfehler und ohne Dashboard) ad-hoc auf den Server zugreifen.
Weil er dann wach ist, aktualisiert er auch die MS Domain und ich kann, wenn nötig, dahin wechseln.

Viele Grüße,
Oliver
WHS 2011
ASRock H77M mit Intel RAID
2* 3TB WD Red RAID 1 Volume 0 - System + Daten
1* 1TB WD Green für Serversicherung

Antworten