getssl: Let’s Encrypt ohne Python-Client

Vorwort

Nachdem Mozilla starke Kritik an Wosign und Startcom geübt hat, entfernte nun Apple als erstes die Zertifizierungsstelle aus seinen Trust-Stores. Für den Otto-Normal-Verbraucher heißt das nun, dass die Zertifikate von StartCom und Wosign faktisch wertlos sind; es ist ungewiss, ob sich die CA davon wieder erholt, auch wenn die Maßnahme vorerst auf ein Jahr begrenzt ist, und sich WoSign dann erneut einer unabhängigen Überprüfung unterziehen lassen kann.

Damit bleibt Let’s Encrypt die letzte mir bekannte Möglichkeit, kostenlos SSL-Zertifikate zu nutzen. Und bei aller berechtigten Kritik an dem Vorgehen, Zertifikte nur für 90 Tage auszustellen und diese mit einem Client automatisiert erneuern zu lassen, ist das Verfahren zumindest transparent und quelloffen.

Wem der native Python-Client nicht zusagt, der kann aus einer Vielfalt von alternativen Clients wählen. Ich habe mich für getssl entschieden, und möchte hier kurz eine Einführung geben.

Installation

Getssl ist ein simples Bash-Skript – daher kann auch ein unerfahrener Entwickler in den Code schauen und nachvollziehen, was dort eigentlich passiert. Installiert wird das Skript folgendermaßen:

curl --silent https://raw.githubusercontent.com/srvrco/getssl/master/getssl > /usr/local/sbin/getssl
chmod 700 /usr/local/sbin/getssl

Anschließend kann man das Skript mit -h aufrufen, um sich verfügbare Parameter ausgeben zu lassen:

$ getssl -h getssl ver. 1.61 Obtain SSL certificates from the letsencrypt.org ACME server Usage: getssl [-h|--help] [-d|--debug] [-c|--create] [-f|--force] [-a|--all] [-q|--quiet] [-Q|--mute] [-u|--upgrade] [-U|--nocheck] [-w working_dir] domain Options: -h, --help Display this help message and exit -d, --debug Outputs debug information -c, --create Create default config files -f, --force Force renewal of cert (overrides expiry checks) -a, --all Check all certificates -q, --quiet Quiet mode (only outputs on error, success of new cert, or getssl was upgraded) -Q, --mute Like -q, but mutes notification about successful upgrade -u, --upgrade Upgrade getssl if a more recent version is available -U, --nocheck Do not check if a more recent version is available -w working_dir Working directory weiterlesen

WordPress: Aktuelle Version via Skript installieren

Ich muss immer mal wieder ein WordPress-System installieren, deshalb dachte ich mir, ich lege das Zip-Archiv, welches ich sonst jedes mal downloaden müsste, irgendwo ab. Problem dabei: WordPress wird ständig geupdated, weswegen dieses Archiv auch immer aktuell gehalten werden müsste. weiterlesen

Bash: in Dateien suchen

Wenn man einen bestimmten Begriff innerhalb von mehreren Dateien sucht, gibt verschiedene Wege, hier 2 davon:

$ find ./ -type f -exec grep -qi "foo" ; -print

$ grep -l foo *

Letzteres ist schneller, sucht aber nicht in Unterverzeichnissen, ersteres ist etwas langsamer, dafür kann man aber in Unterverzeichnissen suchen. Wahlweise lässt sich bei find auch noch die maximale Rekursionstiefe einstellen (-maxdepth 2). weiterlesen

MobaXTerm: Linuxlike unter Windows

MobaXTerm ist ein Tool, welches ich seit einigen Tagen benutze und nicht mehr vermissen will. Es ist eine erweiterte Konsole für Windows, die neben den essentiellen Unix-Commands wie find, sed oder awk auch einen X11 Server und verschiedene Netzwerktools (SSH) enthält.
Krönung der ganzen Sache ist, dass es nur eine einzelne, portable Exe-Datei ist, die sich zwar eine Einstellungsdatei in eigenen Verzeichnis anlegt, diese aber auch gelöscht werden kann.
Wer gezwungen ist mit Windows zu arbeiten, sich aber in vielen Situationen eine Bash wünscht, der wird mit MobaXTerm seine Freude haben. weiterlesen

bash: Dateien per RegEx umbenennen (Update)

Update

Die meisten Distributionen bieten das Tool „rename“. Dieses kann Dateien ganz einfach per Regex umgebennen:

# Generelle Syntax: rename <EXPR> <FILE(S)> $ ls -1 img00.JPEG img01.JPEG img02.JPEG img03.JPEG img04.JPEG img05.JPEG img06.JPEG img07.JPEG img08.JPEG img09.JPEG img10.JPEG $ rename "s/img/Bild/" * $ rename "s/JPEG$/jpg/" * $ ls -1 Bild00.jpg Bild01.jpg Bild02.jpg Bild03.jpg Bild04.jpg Bild05.jpg Bild06.jpg Bild07.jpg Bild08.jpg Bild09.jpg Bild10.jpg weiterlesen