Let’s Encrypt SSL-Zertifikat auf Synology vorzeitig erneuern

Da ich von Let’s Encrypt ein Mail erhalten habe, in welchem ich auf den nahenden Ablauf meines Synology-SSL Zertifikats hingewiesen wurde, wollte ich dies vorzeitig erneuern. Leider geht das aktuell nicht über das GUI, sondern nur via Commandline. Daher hier der funktionierende Ablauf:

  • SSH/Telnet einschalten
  • Login mit einem Administrator-Account
  • Wechsel mit „sudo -i“ und Eingabe von Admin-Passwort auf root
  • Ins Verzeichnis /usr/syno/sbin wechseln
  • Ausführen „./syno-letsencrypt renew-all vv“

Sollte wider Erwarten kein Output am Bildschirm erscheinen, bitte prüfen, ob der Wechsel auf Root wirklich funktioniert hat. Mit dem „normalen“ Benutzer klappts nämlich nicht…

Powershell-Script ausführen

Wenn nun auf dem Desktop eine Verknüpfung zu einem Powershell-Script erstellt wird, führt ein Doppelclick interessanterweise ins Notepad, d.h. ein automatisches Ausführen des Scripts funktioniert nicht einfach so. Zu diesem Zweck muss der Link der Verknüpfung angepasst werden – vor dem effektiven Script ist noch der Powershell-Pfad samt dem Befehl „-noexit“ hinzuzufügen. Mit Noexit kann zumindestens am Anfang noch geprüft werden, ob es irgendwelche Fehler gibt oder nicht.

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -noexit " & 'U:\mypath\myscript.ps1'"

Falls keine Fehler vorhanden sind, bzw. immer alles funktioniert, kann anstelle von -noexit der Parameter -command verwendet werden.

Je nachdem wo Ihr das Script nun speichert kann es sein, dass es wegen fehlender digitaler Signatur nicht ausgeführt wird. Das ist zwar unschön, dem kann aber abgeholfen werden – allerdings wird es jetzt etwas aufwendig (weil wir ja eigentlich nur ein Script laufen lassen möchten)…

Unter dieser Adresse kann der SDK-Webinstaller des .Net Framework 4 aufgerufen werden, der einem einen selektiven Download ermöglicht. Eine allfällige Fehlermeldung beim Start (von wegen nur .Net 4 Client und nicht Full installiert) kann ignoriert werden. Alle Auswahlen bis zu den Installationsoptions standardmässig durchklicken – hier dann unter „Windows Native Code Development“ den Punkt „Tools“ anklicken und den Rest deaktivieren. Nach Abschluss der Installation sollte jetzt ein Verzeichnis „C:\Program Files\Microsoft SDKs\Windows\v7.1“ bestehen.

Dann mit dem Commandline-Prompt (Achtung wichtig: mit Admin-Rechten) in das Verzeichnis C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin wechseln und die folgenden Befehle ausführen:

makecert -n "CN=PowerShell Local Certificate Root" -a sha1 -eku 1.3.6.1.5.5.7.3.3 -r -sv root.pvk root.cer -ss Root -sr localMachine
makecert -pe -n "CN=PowerShell User" -ss MY -a sha1 -eku 1.3.6.1.5.5.7.3.3 -iv root.pvk -ic root.cer

Für das Erstellen des privaten Schlüssels ist ein Kennwort (z.bsp. „certpassword“) zu definieren; dieses bitte notieren – es muss anschliessend wieder eingegeben werden. Die obigen Befehle müssen mit „Succeeded“ bestätigt werden, ansonsten stimmt etwas nicht.

Danach den folgenden Text in eine Textdatei kopieren und diese mit „Add-Signature.ps1“ benennen.

## add-signature.ps1
## Signiert eine Datei
param([string] $file=$(throw "Geben Sie einen Dateinamen an."))
$cert = @(Get-ChildItem cert:\CurrentUser\My -codesigning)[0]
Set-AuthenticodeSignature $file $cert

Geben Sie folgende Befehle an der Windows PowerShell-Eingabeaufforderung ein, um die Skriptdatei „Add-Signature.ps1“ zu signieren:

$cert = @(Get-ChildItem cert:\CurrentUser\My -codesigning)[0]
Set-AuthenticodeSignature add-signature.ps1 $cert

Damit ist nun das Skript signiert und es kann nun – endlich – das ursprüngliche Skript mit „.\add-signature.ps1 meinscript.ps1“ signiert werden. Wenn man nun die Skript-Datei anschaut, sieht man, dass am Ende der Datei eine Signatur angehängt wurde.

Somit kann nun endlich die eigene Skript-Datei mittels Doppelklick gestartet werden!

SuisseID – nur was für IT-Profis

Ich habe mir als „early adopter“ mal eine SuisseID bei der Post bestellt, was problemlos funktioniert hat. Negativ zu erwähnen ist dabei höchstens (das hat aber mit der Post nichts zu tun), dass die viel beworbenen Verbilligungen („Subventionen“) nur rückerstattet werden, d.h. zuerst wird mal die Kreditkarte mit einem Betrag von CHF 164.- belastet (bei einem 3-jährigen Zertifikat). Mit der aktuellen Bundessubvention von CHF 65.- kostet die Geschichte netto somit CHF 99.-.

Die Registrierung und der komplette Ablauf ist bei der Post gut gelöst und innerhalb einer Woche sind alle Unterlagen von der Post zuhause eingetroffen.

Nachdem ich einen USB-Stick mit dem Zertifikat bestellt habe (das Zertifikat ist dann auf einem SIM-ähnlichen Chip gespeichert und dieser Chip steckt im USB-Leser), ging ich davon aus, dass ich nun den Stick einfach in den PC stecke, sich die Software installiert und fertig.

In Tat und Wahrheit funktioniert auf diese Weise nichts – zuerst muss von der Post noch diverse Software (mindestens 13 MB) runtergeladen werden, damit das Zertifikat überhaupt benutzt werden kann. Es ist zu hoffen, dass jeder einen Breitband-Anschluss hat…

Den Ausschlag für diesen Blogeintrag hat dann das Cashback-Portal gegeben, auf welchem ich den Antrag zur Rückerstattung stellen musste.

Für den Cashback-Vorgang muss die SuisseID benutzt werden, was für mich noch nachvollziehbar ist. Weniger spassig wird es dann, wenn das Portal meckert, dass keine SuisseID vorhanden ist oder diese gesperrt sei. Zurückzuführen ist dieser Umstand bei mir anscheinend auf die Tatsache, dass ich Windows7 verwende, nicht aber den Internet Explorer, sondern aus Geschwindigkeitsgründen den Opera-Browser.

Nach dem Wechsel auf IE, gehts dann einen Schritt weiter, jedoch wird klar, dass die ganze installierte Software wohl etwas mit der schnellen Nadel gestrickt ist (siehe Screenshot):

Daher das Fazit im Titel – die Usability ist aus meiner Sicht noch lange nicht dort wo sie sein muss, damit auch Otto  Normalverbraucher etwas damit anfangen kann.

Der Cashback-Prozess selber ist ziemlich einfach – Login mit SuisseID und PIN, danach Angabe der eigenen Adresse und der IBAN-Kontonummer. Das habe ich nun am 19. Mai gemacht und bin gespannt, wie lange es dauert, bis die Rückerstattung eintrifft.