Exchange 2016: Kostenlose Zertifikate von Let’s Encrypt

Vorwort

Die Zertifizierungsstelle Let’s Encrypt bietet schon seit Längerem kostenlose Zertifikate an. Im Dezember 2015 hatte ich bereits einen Artikel zu dem Thema geschrieben, allerdings funktionierte zu dem Zeitpunkt der Windows Client noch nicht zuverlässig, sodass ein Umweg über einen Linux Rechner nötig war.

Jetzt ist mittlerweile etwas über ein Jahr vergangen und ich habe einen neuen Versuch gestartet.

Testumgebung

Die Testumgebung ist denkbar einfach aufgebaut. Es gibt nur zwei Windows Server 2016 die über einen Router mit dem Internet verbunden sind:

Testumgebung

Einer der beiden Server ist Domain Controller, auf dem anderen ist Exchange 2016 CU4 installiert. Auf dem Router sind zwei Portweiterleitungen eingerichtet. Port 80 (http) und Port 443 (https) werden auf den Exchange Server weitergeleitet.

Exchange nutzt intern sowie extern den Hostnamen mail.frankysweb.de. Autodisover wird mit den Namen autodiscover.frankysweb.de veröffentlicht. Interne und externe URLs sind gleich konfiguriert.

Exchange ist bereits vollständig konfiguriert, daher behandelt dieser Artikel nur den Let’s Encrypt Teil. Ich brauche also ein Zertifikat mit zwei DNS Namen von Let’s Encrypt: mail.frankysweb.de und autodiscover.frankysweb.de

Zertifikat von Let’s Encrypt anfordern

Es gibt mittlerweile eine ganze Reihe von Clients mit denen Zertifikate von Let’s Encrypt angefordert werden können. Ich habe mich für den ACMESharp Client entschieden, da er sich per PowerShell nutzen lässt.

Das Anfordern der Zertifikate passiert auf dem Exchange Server. Damit die Validierung durchgeführt werden kann, müssen die Let’s Encrypt Server den Exchange Server unter den angeforderten Namen per Port 80 (HTTP) erreichen können.

Zuerst muss daher der ACMESharp Client installiert werden. Die Installation ist dank PSGallery einfach und kann direkt aus der PowerShell erfolgen. Dazu wird eine PowerShell als Administrator gestartet:

image

Die Installation des ACMESharp Clients kann nun mit dem folgenden Befehl durchgeführt werden:

Install-Module -Name ACMESharp -AllowClobber

image

Nun kann das Modul geladen werden und ein neuer Speicher für die Let’s Encrypt Zertifikate angelegt werden:

Import-Module ACMESharp
Initialize-ACMEVault

image

Jetzt kann die Registrierung bei Let’s Encrypt durchgeführt werden, dazu ist nur die Angabe einer E-Mail Adresse nötig:

New-ACMERegistration -Contacts mailto:admin@frankysweb.de -AcceptTos

image

Nach der Registrierung kann das Zertifikat und die Validierung der Domain Namen vorbereitet werden. Ich möchte ein Zertifikat mit zwei Domainnamen (mail.frankysweb.de und autodiscover.frankysweb.de) haben. Die Validierung der Namen soll via HTTP stattfinden:

New-ACMEIdentifier -Dns mail.frankysweb.de -Alias dns1
New-ACMEIdentifier -Dns autodiscover.frankysweb.de -Alias dns2
Complete-ACMEChallenge dns1 -ChallengeType http-01 -Handler iis -HandlerParameters @{ WebSiteRef = 'Default Web Site' }
Complete-ACMEChallenge dns2 -ChallengeType http-01 -Handler iis -HandlerParameters @{ WebSiteRef = 'Default Web Site' }

image

Hinweis: Der Parameter “-ChallengeType http-01” weist Let’s Encrypt an, die Domain Namen mail.frankysweb.de und autodiscover.frankysweb.de per HTTP Protokoll zu prüfen. Dazu bauen die Let’s Encrypt Server eine HTTP Verbindung zu diesen beiden Namen auf und versuchen pro Domain Name jeweils eine Datei abzurufen.

Damit sichergestellt ist, dass die autodisover.frankysweb.de und mail.frankysweb.de mir gehören, wird Let’s Encrypt eine HTTP Verbindung zu meinem Exchange Server aufbauen und diese URLs zu:

  • http://autodiscover.frankysweb.de/.well-known/acme-challange/<Zeichenfolge>
  • http://mail.frankysweb.de/.well-known/acme-challange/<Zeichenfolge>

Das entsprechende Verzeichnis lässt sich auch im IIS einsehen:

image

Allerdings akzeptiert die Default Website eines Exchange Servers im Normalfall keine HTTP Verbindungen auf Port 80, daher muss “SSL erforderlich” für das Verzeichnis “.well-known” abgeschaltet werden. Auch das ist per PowerShell schnell erledigt (oder auch mit dem IIS Manager):

Set-WebConfigurationProperty -Location "Default Web Site/.well-known" -Filter 'system.webserver/security/access' -name "sslFlags" -Value None

image

Sofern der Router nun Port 80 auf den Exchange Server weiterleitet und die DNS-Einträge für autodiscover.frankysweb.de und mail.frankysweb.de auf die WAN IP-Adresse des Routers zeigen, kann die Validierung durchgeführt werden:

Submit-ACMEChallenge dns1 -ChallengeType http-01
Submit-ACMEChallenge dns2 -ChallengeType http-01

image

Die Validierung hat nun den Status “Pending” haben. Nach kurzer Zeit sollte die Validierung erfolgt sein und den Status “Valid” bekommen. Der Status der Validierung lässt sich mit den folgenden Befehlen prüfen:

Update-ACMEIdentifier dns1
Update-ACMEIdentifier dns2

image

Sobald die Validierung erfolgt ist, kann das Zertifikat angefordert werden:

New-ACMECertificate dns1 -Generate -AlternativeIdentifierRefs dns1,dns2 -Alias multiNameCert
Submit-ACMECertificate multiNameCert
Update-ACMECertificate multiNameCert

image

Jetzt befindet sich das Zertifikat bereits im Let’s Encrypt Speicher, aber noch nicht im Windows Zertifikatsspeicher, daher wird es zunächst einmal aus dem Let’s Encrypt Speicher exportiert:

Get-ACMECertificate multiNameCert -ExportPkcs12 "D:\Zertifikat\cert1.pfx" -CertificatePassword <a href="mailto:'P@ssW0rd'">'P@ssW0rd'
</a>

image

Nach dem Exportieren ist das Zertifikat als PFX-Datei im entsprechenden Ordner gespeichert:

image

Jetzt kann es in den Windows Zertifikatspeicher importiert werden:

$password = ConvertTo-SecureString -String "P@ssW0rd" -Force –AsPlainText
Get-ChildItem -Path "D:\Zertifikat\cert1.pfx" | Import-PfxCertificate -CertStoreLocation cert:\localMachine\my –Exportable -Password $password

image

Jetzt muss das frische Zertifikat nur noch dem Exchange Server zugewiesen werden:

Add-PSSnapin *exchange*
Enable-ExchangeCertificate -Thumbprint "8ABEDEFDDCF0C82AFDE4E3FE3E80819FBE643AFD" -Services POP,IMAP,SMTP,IIS

image

Das war auch schon alles. Zertifikat angefordert und eingebunden:

Zertifikate von Let's Encrypt

image

Fazit

In meiner Testumgebung hat es wunderbar funktioniert, der Client macht was er soll und das auch komplett via PowerShell.

Let’s Encrypt stellt nur Zertifikate mit 3 Monaten Laufzeit aus, daher ist alle 3 Monate der Austausch der Zertifikate fällig. Mir war es daher wichtig das sich der komplette Prozess mit der PowerShell abbilden lässt. Denn so lässt sich auch der Austausch der Zertifikate komplett automatisieren. Dazu wird es noch entsprechende Beiträge geben.

Ausblick

Vielleicht kennt jemand dieses kleine Script von mir noch?

Exchange Certificate Assistent

Der bekommt mal ein Update…

50 Gedanken zu „Exchange 2016: Kostenlose Zertifikate von Let’s Encrypt“

  1. Hallo Frank,

    kann die Anleitung auch für Exchange 2019 eins zu eins genutzt werden? Und wie sieht es mit deinem Script aus für die automatische Erneuerung?

    Gruss
    Ewald

    Antworten
  2. Also, das hat funktioniert mit dem Zertifikat unter Exchange 2016. Es wird auch überall akzeptiert. Allerdings kann ich weder auf OWA noch auf ECP zugreifen, da bekomme ich nach der Anmeldung (auf dem Server):
    Serverfehler in der Anwendung /ecp.
    Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
    Alle Lösungsansätze im Web haben noch keine Abhilfe geschaffen

    Antworten
    • Hat sich scheinbar erledigt. Ich habe per Powershell die Formbased Auth abgeschaltet und jetzt gehts wieder. Erstaunlicherweise kann ich mich nicht erinnern, das angeschaltet zu haben.

      Antworten
  3. Hallo Patrick,

    in der Anleitung hier von Frank fehlt noch ein Punkt, der vielleicht ergänzt werden soll.
    Die Schritte für die Nutzung von ACME sollten von der Installation bis zu initialisierung wie folgt lauten:

    Install-Module ACMESharp
    Install-Module ACMESharp.Providers.IIS
    Import-Module ACMESharp
    Enable-ACMEExtensionModule ACMESharp.Providers.IIS

    Erst danach sind die hier beschriebenen Handler für ACME verfügbar. Sonst kommt man in den von dir beschriebenen Fehler, das der Handler nicht verfügbar ist.

    Viele Grüße Uli

    Antworten
    • Hallo Uli,
      stimmt, mittlerweile wurde einiges an dem ACMESharp Modul verändert. Ich arbeite gerade an einer neuen Version des Zertifikatsassistents der dann auch mit der aktuellen ACMESharp Version funktioniert. Bei Gelegenheit werde ich auch diesen Artikel an die aktuelle Version des ACMESharp Moduls anpassen.
      Danke für deinen Hinweis.
      Gruß,
      Frank

      Antworten
  4. Hallo zusammen,

    wie in folgendem Beitrag bereits erwähnt funktioniert Let’s Encrypt nicht ohne weiteres mit Exchange 2013, da Microsoft es seit 2006 versäumt hat eine Unterstützung für Zertifikate mit CNG/KSP zu implementieren.

    https://www.frankysweb.de/exchange-2016-kostenlose-zertifikate-von-lets-encrypt/#comment-48400

    Dies wird leider nur in dem besagtem Beitrag erwähnt und ich hab es wie einige vor mir leider übersehen. Franky sollte definitiv darauf hinweisen, da die durch das Zertifikat resultierende Login-Loop in OWA und ECP schwer nachzuvollziehen ist und man einiges an Zeit vergeudet mit der Fehlersuche.

    Weiss jemand ob Exchange 2016 mittlerweile CNG/KSP untestützt?
    Offizielle Angaben dazu hab ich bisher keine gefunden.

    Antworten
  5. Bin einen Schritt weiter gekommen:
    Get-Module –ListAvailable
    Uninstall-Module ACMESharp
    Install-Module -Name ACMESharp -RequiredVersion 0.8.1 -AllowClobber

    Danach lief der Complete-ACMEChallenge… durch.
    Aber nun leider das nächste Problem. Beide domains erhalten den Status „invalid“.
    Weiss jemand, wie man quasi neu starten kann?

    Antworten
  6. Hallo zusammen

    Hab das gleiche Problem wie Johannes Obermueller:
    Complete-ACMEChallenge dns1 -ChallengeType http-01 -Handler iis -HandlerParameters @{ WebSiteRef = ‚Default Web Site‘ }
    Complete-ACMEChallenge dns2 -ChallengeType http-01 -Handler iis -HandlerParameters @{ WebSiteRef = ‚Default Web Site‘ }
    nicht weiter.

    dort erhalte ich in der Powershell die Antwort: „Complete-ACMEChallenge :the given identifier was not found in the registry
    In Zeile:1 Zeichen:1
    …“

    Wäre super, wenn und jemand einen Tipp geben könnte.

    Antworten
  7. Hallo,

    vielen Dank für die Erklärung des Konzepts. Bei mir hats mit dem IIS nicht funktioniert, deswegen bin ich auf DNS geschwenkt. Außerdem musste ich ein Rollback auf das Modul 0.8.1 machen.

    Das mit dem Exchange Certificate Assistant wäre eine tolle Sache.

    Viele Grüße

    Johannes Tröster

    Antworten
  8. Hallo Zusammen,

    erstmal Lob an Franky, die Website ist eine große Hilfe.

    leider komme ich bei
    Complete-ACMEChallenge dns1 -ChallengeType http-01 -Handler iis -HandlerParameters @{ WebSiteRef = ‚Default Web Site‘ }
    Complete-ACMEChallenge dns2 -ChallengeType http-01 -Handler iis -HandlerParameters @{ WebSiteRef = ‚Default Web Site‘ }
    nicht weiter.

    dort erhalte ich in der Powershell die Antwort: „Complete-ACMEChallenge :the given identifier was not found in the registry
    In Zeile:1 Zeichen:1
    …“

    hat von euch jemand schon mit dieser Fehlermeldung Erfahrungen?

    Danke & viele Grüße
    johannes

    Antworten
  9. Hallo zusammen,

    ich scheitere schon bei der Installation von PowerShellGet.

    Hier bringt er mir folgendes:
    PS C:\Windows\system32> Install-Module -Name PowerShellGet -Force
    WARNUNG: The version ‚1.0.0.1‘ of module ‚PackageManagement‘ is currently in use. Retry the operation after closing the applications.
    PS C:\Windows\system32>

    Wieso ist das „PackageManagement“ Module aktuell in Benutzung und wie kann ich dennoch das PowerShellGet installieren?

    LG Michael

    Antworten
  10. Hallo,

    wie kann man nachträglich das Passwort ändern des Zertifikats ändern? Probeweise hatte ich ein sehr einfaches genutzt, und wie es so ist alles läuft und es gerät in Vergessenheit. Nun würde ich es gerne gegen ein „sicheres“ Passwort ändern.

    Gruss Peter

    Antworten
  11. Hallo Frank,
    noch ein Nachtrag, ist mir gerade aufgefallen – ich melde mich an der ECP an und nach dem ich das Passwort eingeben habe werde ich auf die OWA umgeleitet wo ich das Passwort wieder eingeben soll – vielleicht hilft das?
    Nochmals Danke
    Claus

    Antworten
  12. Hallo Frank,
    super vielen Dank für Deine geniale Beschreibung, ich hätte nur eine Frage, es hat alles klappt, ich konnte das Zertifikat einpflegen, ich kann mich auch in der OWA anmelden, nur wenn ich mich auf der ECP mit dem Admin anmelden möchte, bekomme ich das Fenster zum PW eingeben, das mache ich auch aber es passiert nicht, keine Fehlermeldung – einfach nichts, er bleibt auf der Webseite.
    Ich hab jetzt die Default Webseite der ECP auch schon nach Deiner Beschreibung rückgesetzt, leider auch kein Erfolg, DNS Einträge geprüft sieht alles gut aus, nur die Anmeldung klappt nicht – hättest Du evtl. noch eine Idee?
    Vielen Dank
    Claus

    Antworten
  13. Hallo zusammen,

    Habe ein Exchange 2016 Zertifikat mit der Anleitung und ebenfalls zwei DNS Namen (mail. und autodiscover.)erfolgreich importiert. Soweit super. Leider prangern die Clients nun den FQDN des Exchange Servers an „Der Name auf dem Sicherheitszertifikat ist ungültig oder stimmt nicht mit der Website überein“ Muss der auch noch irgendiwe ins Zertifikat?

    Gruß jens

    Antworten
  14. Hi Chris,

    ich habe ebenfalls die Anleitung von Franky auf einem Exchange 2013 durchgeführt und habe soweit alles erfolgreich abschließen können. Leider habe ich nun ebenfalls einen OWA Loop.
    Den ganzen Step by Step Guide nochmal durchzuführen mit „certutil -csp…“ funktioniert aber leider nicht, weil die Zertifikate ja schon eingespielt sind.
    Das Erneuerungsscript für Exchange 2013 gibt es leider noch nicht.
    Könntest du mir eventuell kurz die Schritte schreiben, wie ich den OWA Loop beseitigen kann, trotzdem ich Frankys Anleitung schon durchgeführt habe.

    Besten Dank im Voraus.

    LG Gerald

    Antworten
  15. Hallo zusammen,

    noch eine kleine Anmerkung für Exchange 2013:

    mittels „Import-PfxCertificate -CertStoreLocation“ (KSP / CNG) hatte ich einen OWA Loop.

    Mit „certutil -csp „Microsoft RSA SChannel Cryptographic Provider“ -importpfx “ (CSP) läuft es bislang problemlos.

    Hier noch nen Link auf ne kurze mögliche Erklärung:

    https://blogs.technet.microsoft.com/jasonsla/2015/01/15/the-one-with-the-fba-redirect-loop/

    Die Zusammenfassung ist, Exchange 2013 unterstützt die CNG (Cryptography API Next Generation) nicht…

    Beste Grüße

    Chris

    Antworten
  16. Hallo Frank,

    ich bin vermutlich „Betriebsblind“, oder einfach Dusselig.

    Da StartSSL nicht mehr von Apple unterstützt wird, habe ich LetsEncrypt installiert, Dein Howto war absolut hilfreich. Nur bekomme ich seit dem teilweise keine Emails mehr und mein iPad verweigert die Aktualisierung vom Exchange-Konto, weder Mail noch Kalender.

    Also habe ich mit Hilfe von Deinem Script die DNS-Namen ermittelt und siehe da, autodiscover wird nicht mehr als DNS aufgeführt.

    Und jetzt kommt die Betriebsblindheit: Wo zum Henker bringe ich diesen DNS-Eintrag ein? Ich habe ja schon den DNS-Eintrag „mail.domin.de“, „mail.domain.int“, „win2016exc.domain.de“ und „win2016exc.domain.int“ drin, aber „discover.domain.int“ und „discover.domain.de“ einzufügen gelingt mir nicht.

    Ich hoffe, Du kannst mir auf die Beine helfen…

    Antworten
      • Ich hatte vermutlich einen Fehler in der Zertifizierung. Mit Deinem neuen Script funktionierte es, interessanterweise.

        Zumindest werde ich erst mal nix mehr dran machen, außer eine Gesamtsicherung :)

        Unabhängig davon, Deine Blog-Einträge haben mir in vielen Punkten schon die Augen geöffnet, danke dafür und gerne weiter so…

        Antworten
  17. Hallo Frank,

    da dein Zertifikatsassistent leider noch nicht ältere Exchangeversionen unterstützt (ein paar der CMDlets werden erst ab 2016 unterstützt) habe ich nun auch erstmal manuell das Zertifikat auf einem SBS 2011 (Exchange 2010) erzeugt. Hierbei hatte ich anfangs auch diverse Herausforderungen wie die Installation der PowerShellGallery (WMF 5 installieren), aber auch weil bspw. das CMDlet „Import-PfxCertificate“ bei Windows Server 2008 R2 (SBS 2011) nicht existiert oder „Import-ExchangeCertificate“ bei Exchange 2010 nur „-FileData“ akzeptiert. Um der Nachwelt das Leben ein wenig einfacher zu machen und evtl. die Entwicklung deines Assistenten (wie wäre es mit einem GitHub-Projekt?) zu unterstützen findet ihr nachfolgend eine Auflistung meiner Kommandos. Anbei noch der Hinweis an obige Kommentatoren, dass der Status „invalid“ unbedingt erfordert nochmal vom Neuen zu beginnen mit veränderten Aliasen (ersetze: dns1, dns2 und multiNameCert).

    # Certificate.ps1 for WindowsServer 2008 R2 + Exchange 2010
    Install-Module -Name ACMESharp
    Import-Module ACMESharp
    Initialize-ACMEVault
    New-ACMERegistration -Contacts mail@frankysweb.de -AcceptTos
    New-ACMEIdentifier -Dns mail.frankysweb.de -Alias dns1
    New-ACMEIdentifier -Dns autodiscover.frankysweb.de -Alias dns2
    Complete-ACMEChallenge dns1 -ChallengeType http-01 -Handler iis -HandlerParameters @{ WebSiteRef = ‚Default Web Site‘ }
    Complete-ACMEChallenge dns2 -ChallengeType http-01 -Handler iis -HandlerParameters @{ WebSiteRef = ‚Default Web Site‘ }
    Set-WebConfigurationProperty -Location „Default Web Site/.well-known“ -Filter ’system.webserver/security/access‘ -name „sslFlags“ -Value None
    Submit-ACMEChallenge dns1 -ChallengeType http-01
    Submit-ACMEChallenge dns2 -ChallengeType http-01
    Update-ACMEIdentifier dns1
    Update-ACMEIdentifier dns2
    New-ACMECertificate dns1 -Generate -AlternativeIdentifierRefs dns1,dns2 -Alias multiNameCert
    Submit-ACMECertificate multiNameCert
    Update-ACMECertificate multiNameCert
    Get-ACMECertificate multiNameCert -ExportPkcs12 „D:\Zertifikat\cert1.pfx“ -CertificatePassword ‚P@ssW0rd‘
    Add-PSSnapin *exchange*
    Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path „D:\Zertifikat\cert1.pfx“ -Encoding byte -ReadCount 0)) -FriendlyName „Mein_Zertifikat“ -Password (ConvertTo-SecureString -String „P@ssW0rd“ -Force -AsPlainText) -PrivateKeyExportable:$true | Enable-ExchangeCertificate -Services „SMTP, IMAP, POP, IIS“ –force

    Antworten
  18. Hallo,
    vielen Dank für die Anleitung.
    Ich habe bei der Ausführung ein paar Probleme.
    So ist die Anfrage seit ein ca. 8h immer noch pending.
    Die Webseite .wellknown.. ist erreichbar per Port 80. Dies habe ich aus einem anderen Netz getestet.

    Ich hatte gestern damit ein paar Probleme und wollte es erneut probieren. Kann man denselben DNS-Identifier noch einmal nehmen oder muss es für jeden Request ein neuer sein?
    Ist dies vielleicht der Grund für den andauernden Status pending?
    Falls ja, soll ich die offenen Requests irgendwo löschen oder laufen diese automatisch ab?

    Ich habe auch den manual Weg per txt-record probiert. Aber es sieht so aus, als wenn 1und1 dies nicht zuläßt. Hat jemand damit Erfahrungen? Ich kann keinen entsprechenden Eintrag anlegen.

    Gruß
    Alex

    Antworten
  19. Hallo,

    ich hänge momentan an der Stelle „Update-ACMEIdentifier dns1“ und bekomme die Rückmeldung Status : invalid
    Route wurde in der Firewall konfiguriert für Port 80. Hat jemand eine Idee

    Danke und Gruß

    Christian

    Antworten
  20. Hallo Frank, Hallo Bernhard,

    ich wollte auch gerade eine Rückmeldung geben, aber habe gesehen ihr seit wieder super schnell gewesen mit dem Antworten :) also es hat jetzt auch bei mir geklappt und alles eingebunden ich bin total happy.

    ich hatte ebenfalls den ACMESHARP Ordner gelöscht und dann klappte es auch bei mir. Es war mir nicht so ganz die Funktionsweise vom Vault Ordner klar. Aber nachdem ich

    Get-ACMEVaultProfile

    eingegeben hatte kam ich der Sache auf die schliche ;-)

    Danke euch. Gruss aus Brandenburg

    Antworten
  21. Hallo,
    leider komme auch ich nicht weiter und evtl. kann mir wer helfen. Hatte das komplette Whitepaper durchstudiert und habe die DNS Einträge soweit alle angepasst und auch verstanden wie Autodiscover nun funktioniert, erstmal danke dafür :). PS Gallery wurde ebenfalls installiert.

    Bei mir ist Server2012R2 und Exchange 2013 installiert.

    Die Installation vom Modul klappe auch nur ohne den Parameter -AllowClobber“. Aber nun kam ich auch nicht mehr weiter:

    PS C:\Users\Administrator> Import-Module ACMESharp
    PS C:\Users\Administrator> Initialize-ACMEVault
    Initialize-ACMEVault : Vault root path contains existing vault data
    In Zeile:1 Zeichen:1
    + Initialize-ACMEVault
    + ~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : NotSpecified: (:) [Initialize-ACMEVault], Excep
    + FullyQualifiedErrorId : System.Exception,ACMESharp.POSH.InitializeVault

    Beim Import Befehl erscheint noch kein Fehler aber beim Initialize Befehl. Hat jemand eine Ahnung woran es liegt ? Ich komme gerade leider nicht mehr weiter. Was mir noch aufgefallen ist, im IIS ist keine Seite /.well-known vorhanden. Vielleicht kann mir wer helfen.

    Martin

    Antworten
  22. Hi,
    ich hänge hier an einem Problem gleich am Anfang…
    PowerShellGet für 3/4 habe ich installiert.

    Beim ersten Befehl „Install-Module -Name ACMESharp -AllowClobber“ kommt diese Fehlermeldung:

    Install-Module : Es wurde kein Parameter gefunden, der dem Parameternamen „AllowClobber“ entspricht.

    Habe ich irgendwas vergessen? Es ist ein Win 2012R2, Exchange 2016 CU2 (Update auf CU4 kommt).

    Gruß
    Michael

    Antworten
  23. Hallo Franky,

    ich probiere es unter Server 2012R2 mit Exchange 2013 durchzuspielen und scheitere schon beim ersten Schritt:

    PS C:\Windows\system32> Install-Module -Name ACMESharp -AllowClobber
    Install-Module : Die Benennung „Install-Module“ wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines ausführbaren Programms erkannt. Überprüfen Sie die
    Schreibweise des Namens, oder ob der Pfad korrekt ist (sofern enthalten), und wiederholen Sie den Vorgang.
    In Zeile:1 Zeichen:1
    + Install-Module -Name ACMESharp -AllowClobber
    + ~~~~~~~~~~~~~~
    + CategoryInfo : ObjectNotFound: (Install-Module:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

    Hast Du da eine entscheidende Starthilfe für mich?

    Vielen Dank und liebe Grüße
    Michael

    Antworten
  24. Hallo Franky,

    kennst Du auch eine Variante um LetsEncrypt mit automatischer Aktualisierung unter Exchange 2013 einzusetzen?

    Liebe Grüße
    Michael

    Antworten
  25. Hallo Franky,

    wie wäre es mit

    Import-ExchangeCertificate -FileName „D:\Zertifikat\cert1.pfx“ -FriendlyName „Mein_Zertifikat“ | Enable-ExchangeCertificate -Services „SMTP, IMAP, POP, IIS“ – force

    statt
    Import-PfxCertificate
    Dann könnte man sich das ganze mit dem Thumbprint sparen.
    Habe ich bei http://www.netometer.com gefunden

    Antworten
    • Hi Bernhard,

      stimmt, an das CMDLet habe ich gar nicht gedacht… Man müsste es etwas anpassen:

      Import-ExchangeCertificate -FileName „D:\Zertifikat\cert1.pfx“ -FriendlyName „Mein_Zertifikat“ -Password P@ssW0rd -PrivateKeyExportable:$true | Enable-ExchangeCertificate -Services „SMTP, IMAP, POP, IIS“ – force

      Danke für den Hinweis!

      Gruß und schönes Wochenende,

      Frank

      Antworten
  26. Hallo Frank,

    danke für den Beitrag. Ich habe mich jedoch dann doch gegen den Powershellclient entschieden und lieber auc den cmd-client gedetzs. Er erkennt die Hostnamen automatisch und tauscht auch Zertifikat im iis aus. Für die automatische erneuerung wird dann im Abschluss automatisch ein Task erstellt. Man muss nur einmal die Hostnamen, den Bindungen im IIS hinzufügen.
    Ich persönlich mav die PowerShell auch lieber, aber diese Lösung ist leider nicht vollautomatisiert.

    Beste Grüße
    Chris

    Antworten

Schreibe einen Kommentar