Kostenlose HTTPS-Zertifikate von WoSign / China

Da Let’s encrypt noch nicht so weit ist, ich aber trotzdem immer mal wieder HTTPS Zertifikate haben möchte die von den bekannten Webbrowsern ohne Rückfrage akzeptiert werden hab ich mir schon mal das ein oder andere günstige gekauft. Den Großteil verwalte ich aber noch mit CAcert.

Für die Zertifikate zu bezahlen war mir aber schon immer ein Dorn im Auge. Schon früh hatte ich mir StartSSL angeschaut aber das war mir alles deutlich zu umständlich. Über Twitter wurde ich dann auf einen neuen chinesischen Anbieter hingewiesen:

Lange Rede kurzer Sinn. Das ganze ist sehr simpel und funktioniert super:

  • Key + CSR erzeugen:
    openssl req -new -nodes -newkey rsa:4096 -sha256 -keyout host.example.net.key -out host.example.net.csr
  • URL öffnen: https://buy.wosign.com/free/
  • Formular ausfüllen, Domain bestätigen, Zertifikat beantragen, auf Email warten
  • Nach Erhalt der ZIP Datei mit Zertifikat und Intermediates die Bundle-Datei öffnen und den letzten Eintrag entfernen
  • Im Webserver einbinden und SSL Server Test machen um zu prüfen ob alles korrekt ist

iodine – IPv4 über DNS tunneln

Ich habe schon öfter über Dinge geschrieben die unterwegs nützlich sind um Zugriff aufs Internet zu bekommen. Ein Tool habe ich bereits seit langem installiert, jedoch jetzt kürzlich das erste Mal praktisch genutzt: iodine.

Zugiodine ermöglicht es einem IPv4 Traffic über DNS zu tunneln. Das ist immer dann praktisch wenn der Internetzugriff per Firewall gesperrt, DNS aber erlaubt ist.

Die Hürden für ein iodine Setup sind erst einmal groß. Um den Server zu installieren bedarf es nicht nur eines entsprechenden Hosts auf dem das Paket installiert werden kann, sondern man muss auch in seinem DNS Einstellungen machen können. Bei mir funktioniert das folgende Setup:

Auf dem gewünschten Server habe ich das iodine Paket aus den Paketquellen installiert:

aptitude install iodine

Anschließend habe ich in der Konfigurationsdatei /etc/default/iodine die folgenden Einstellungen hinterlegt:

START_IODINED="true"
IODINED_ARGS="10.9.0.123 iodine.example.net -c"
IODINED_PASSWORD="MYSECRETPASSWORD"

Nun zum DNS. Dort benötigt man zwei Einträge. Angenommen der Host auf dem iodine installiert ist hat die IP 1.2.3.4, dann bekommt dieser zuerst einen ganz normalen IN A Eintrag. host.example.net zeigt auf 1.2.3.4. Das  ist nichts besonderes sondern so einen Eintrag setzt man ja eigentlich immer.

IN A

Der zweite Eintrag ist nun der abweichende. Wie in den IODINED_ARGS angegeben benötigen wir den DNS-Eintrag iodine.example.net. Dieser bekommt aber keinen IN A Eintrag, sondern als Nameserver den host.example.net eingetragen.

IN NS

Wenn der Server eingerichtet ist, kann man sich an den Client machen. Ich nutze den Network-Manager und dafür gibt es ein praktisches Plugin. Auf dem Client:

aptitude install network-manager-iodine-gnome

Anschließend kann man den nm-connection-editor starten und dort eine neue Verbindung vom Typ VPN – Iodine VPN Tunnel  hinzufügen. Als Verbindungsname wählt man das was man will, als Toplevel Domain trägt man iodine.example.net ein, und das auf dem Server unter IODINED_PASSWORD gesetzte Passwort speichert man auch optional ab. Fertig.

Schnell ist die Anbindung nicht, das ist technisch bedingt, aber sie ist stabil, selbst wenn man von dem Hotspot alle X Minuten per DHCP eine neue IP bekommt bricht der Tunnel nicht ab. Klasse!

Projekt: pregos tracks

Mit der Zeit habe ich eine ganze Menge GPX-Tracks angesammelt und ich habe nach einer Möglichkeit gesucht diese leicht anzuschauen und Infos daraus zu bekommen. Aus Spaß an der Freude hab ich mir mit PHP und JavaScript selber etwas zusammen kopiert. Der Track wird auf einer Karte angezeigt, es gibt einige wenige Statistiken zum Track sowie einen Graph über den Höhenverlauf und einen optionalen über die Geschwindigkeit. Neue GPX-Tracks können direkt auf der Seite hochgeladen werden. Nix besonderes, ziemlich dreckig wenn man in den Code schaut aber mir egal, genau das wollte ich haben.

pregos tracks

Wer den Code haben möchte, ich habe ihn auf Github als pregos-tracks veröffentlicht.