Time to relax: CouchDB 1.6.1

Updates, Updates, Updates. Wer will noch mal, wer hat noch nicht? Eine frische CouchDB ist auf allen Servern verteilt, weitere Informationen dazu wie gewohnt im Wiki. Neu angelegte Datenbanken gibt’s ab sofort in Version 1.6.1, für bereits vorhandene Datenbanken müsst ihr etwas tricksen: Passt eure ~/service/couchdb/run-Datei auf den neuen Pfad an. Aus … export COUCHPATH="/package/host/localhost/couchdb-1.5/" … mach … export COUCHPATH="/package/host/localhost/couchdb-1.6/" Dann noch ein beherztes … [moritz@andromeda ~]$ svc -du ~/service/couchdb Er voilà:

Erlang/OTP 17.5

Ein frisches Erlang ist auf allen Servern verteilt, weitere Informationen dazu wie gewohnt im Wiki. Unter den Symlinks unter /package/host/localhost haben wir angepasst: erlang -> erlang-17 erlang-17 -> erlang-17.5 Wenn ihr also erlang in eueren Scripten benutzt, reicht es, den Dienst einfach neu zu starten. Alternativ zur Angabe des vollen Pfades könnt ihr eure .bash_profile anpassen. Wenn ihr euch da auf die Major-Version 17 festlegen wollt, ginge das per …

node.js 0.12.4

Kurz und schmerzlos wie immer: Ein frisches node.js ist auf allen Servern verteilt, weitere Informationen dazu wie gewohnt im Wiki. Unter den Symlinks unter /package/host/localhost haben wir angepasst: nodejs-0.12 -> nodejs-0.12.4 Wie gehabt bleibt vorerst: nodejs-0 -> nodejs-0.10 Wenn ihr also nodejs-0.12 in eueren Scripten benutzt reicht es, den Dienst einfach neu zu starten.

Mit dem Jobrad ins Büro

Eigentlich war ich auf der Suche nach einem günstigen Fahrrad für den Winter. Irgendwie muss man als oft vor dem Rechner sitzender Admin ja fit halten. Die durch viel Schweiss und etwas Disziplin im letzten Jahr verlorenen 12kg sollten über den Winter ja nicht schleichend eine Rückkehr feiern können. Nachdem es im letzten Sommer bereits ein modernes Alu-Rennrad wurde, gesellte sich im Herbst ein klassischer Stahl-Renner zu meiner Sammlung.* Im Winter sollte es dann aber ein Fahrrad mit Profilreifen und Scheibenbremsen werden, dem auch Schlamm, Schnelligkeit, holpriges Gelände und die Kombination aus all dem nichts ausmachen.

Zugriff auf's Dashboard nach Googles OpenID 2.0-Apokalypse

Wir haben bereits vermehrt per Twitter darauf hingewiesen und auch Google hat bei jedem OpenID-Login mit einem Google-Account vehement auf das Ende des Supports von OpenID 2.0 hingewiesen und nun, da der 20. April hinter uns liegt, schlagen bei uns die Support-Anfragen auf, dass einige User nicht mehr an das Dashboard ihrer Uberspaces kommen, weil sie sich bisher vollständig auf OpenID verlassen haben. Für diejenigen, die die Warnung beim Login der letzten Monaten übersehen haben, möchten wir hier kurz erläutern, wie sich der Zugriff auf das Dashboard wiederherstellen lässt - einen SSH-Zugang oder Zugriff auf die primäre Mailadresse vorausgesetzt.

AnsibleFest 2015 in London

Es ist wahrscheinlich gar kein Geheimnis mehr, dass wir uns seit einiger Zeit intensiver mit Ansible befassen. Dabei wollen wir unsere Infrastruktur Schritt für Schritt mit Ansible modernisieren, um die Provisionierung neuer Uberspace-Hosts zu automatisieren und um einfacher neue Features zu verteilen, die wir dann auch verlässlich mit Updates versehen können. Um also ein wenig die Community zu beschnuppern und dabei noch einige interessante Vorträge mitzunehmen, hatte ich die Gelegenheit das erste AnsibleFest außerhalb der Vereinigten Staaten zu besuchen.

Kuck mal, wer da hört - OpenSSH 6.8

Nachdem wir nun drei Monate lang OpenSSH 6.7 getestet haben, sind wir jetzt so mutig und tauschen sshd, der auf Port 22 lauscht, gegen eine aktuelle Version aus: OpenSSH 6.8. Wir verwenden dabei die folgende Konfiguration: KexAlgorithms curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1 Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr,aes256-cbc,aes192-cbc,aes128-cbc MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-ripemd160-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-512,hmac-sha2-256,hmac-ripemd160,umac-128@openssh.com Netter Nebeneffekt: Wir unterstützten nun ed25519. Alle Hosts haben bereits entsprechende Keys: HostKey /etc/ssh/ssh_host_ed25519_key Weiterhin unterstützen wir natürlich noch RSA: HostKey /etc/ssh/ssh_host_rsa_key Wir unterstützen kein DSA (mehr) und kein ECDSA.

Interview mit ½ Uberspace

Bei der Garage Bilk ist es üblich, den dort arbeitenden Coworkern die Gelegenheit zu geben, sich einfach mal vorzustellen und ein paar Fragen über die eigene Arbeit zu beantworten. Seit einem Monat arbeiten Mic und ich dort aus einem Startup-Büro heraus und so ergab es sich dann, dass wir auch mal Rede und Antwort stehen sollten. Wie’s der Zufall wollte, waren Jonas und Kim ohnehin auch gerade in Düsseldorf. So hatten wir also Gelegenheit zu erklären, was wir denn genau tun und warum wir plötzlich ein Büro haben, obwohl wir bisher immer damit angegeben haben, überall arbeiten zu können, wo Platz genug ist um ein Laptop aufzuklappen und wo halbwegs taugliches Internet bereit steht.

Uberspace Host Manifest

Als wir angefangen haben, alle unsere Uberspace-Hosts mit Ansible zu managen, hat uns etwas genervt: das manuelle Abgleichen von SSH-Fingerprints. Da dachten wir, man könnte ja mal die Liste der Uberspace-Hosts mit ihren IP-Adressen und SSH-Fingerprints automatisch generieren. Diese kann man nun herunterladen, die Signatur überprüfen und die Liste der bekannten SSH-Hosts übernehmen. Dies kommt nun auch dir zu Gute; denn so hast du auf einen Schlag alle Uberspace-Hosts vorliegen und kannst dich fröhlich auf jeden davon verbinden – ohne nervige Fingerprint-Abfrage.

Feature: MySQL Read-Only User

Ein User hat uns gefragt, ob er nicht einen zusätzlichen MySQL-Zugang haben könne, dessen Zugriffsrechte sich auf lesende Operationen beschränken. Für einen Workshop mit Schülern möchte er Anwendungen auf die Datenbank seines Uberspace loslassen, die dort keine Veränderungen vornehmen sollen. Keine schlechte Idee – dachten wir uns. Denn für diesen Zweck oder ähnliche Szenarien kann dies durchaus nützlich sein. Aber wenn wir eine solche Funktion realisieren, dann soll sie allen Usern zu Gute kommen.