Archiv des Autors: Sven

SSL-Verbindungen unter Debian sicher machen

Die Heartbleed- oder Logjam-Attacke sind nur zwei Beispiele aus der jüngeren Vergangenheit, die disruptive Auswirkungen auf die Sicherheit der grundlegendsten Infrastrukturkomponten im Internet hatte: SSL-verschlüsselte Datenverbindungen.

Das verlinkte Howto von Till Brehm beschreibt sehr gut und einfach, wie man Linux im Allgemeinen und Debian inkl. Apache, Nginx, Postfix, Dovecot und Pure-ftpd im Speziellen absichern kann:

How to protect your Debian or Ubuntu Server against the Logjam attack

Tipp: auf ssllabs.com kannst du die Verschlüsselungsqualität deiner Webseite testen.

StarMoney: Anzahl Signaturen fuer diesen Auftrag unzureichend laut UPD oder BPD

Beim Versuch eine SEPA-Überweisung in StarMoney für den Mac (Version 1.9.1) loszuschicken, bekam ich folgende Fehlermeldung:

Anzahl Signaturen fuer diesen Auftrag unzureichend laut UPD oder BPD

Das Problem lässt sich einfach lösen, indem man die Bankdaten seiner Konten aktualisiert. Dazu einfach in der Programmzeile auf „StarMoney“ und im Menü „Bankdaten aktualisieren“ klicken.

Bankdaten aktualisieren unter StarMoney für Mac

Bankdaten aktualisieren unter StarMoney für Mac

 

Mac schaltet sich beim Herunterfahren nicht ab

Mein MacBook Pro schaltete sich seit einer längeren Zeit nicht mehr ab, wenn man es herunterfährt oder wie es beim Mac heißt „ausschaltet“. Der Mac lief ewig weiter, auch langes warten half nicht. Die Lösung, die auch mir geholfen hat, ist bereits hier beschrieben.

  1. Kaspersky richtig deinstallieren
    • die Testversion von Kaspersky Internet Security for Mac  bzw. Kaspersky Antivirus herunterladen
    • das Deinstallationsprogramm ausführen
    • Hinweis: dafür ist keine Installation von Kaspersky notwendig
  2. Die Zugriffsrechte des Mac OS X Volumes überprüfen und reparieren
    • Starte das Festplattendienstprogramm und wähle das Mac OS X Volume aus
    • Klicke auf „Zugriffsrechte des Volumes überprüfen“
    • Danach „Zugriffsrechte des Volumes reparieren“
    • Der Vorgang dauerte bei mir etwa 30 Minuten

Zugriffsrechte des Volumes unter MacOSX reparieren

Hintergrundinformationen

 

get virsh console working

In my last blog post I described how you can shut down your virtual machines with the virsh shutdown command under Debian and Ubuntu. Now I want to show you how virsh console can be used to access the serial console for login and watching the virtual machine’s shutdown and startup.

Step 1A: Preparing an Ubuntu Guest VM

  1. login on the ubuntu vm with ssh
  2. Copy tty1.conf to ttyS0.conf:
    sudo cp /etc/init/tty1.conf /etc/init/ttyS0.conf
  3. open ttyS0 and change the last line to
    exec /sbin/getty -8 115200 ttyS0 xterm

Step 1B: Preparing a Debian Guest VM

  1. login on the ubuntu VM with ssh
  2. open /etc/inittab
  3. uncomment the following line:
    T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100

Step 2: Make Grub output on ttyS0 (Debian & Ubuntu VM)

  1. open /etc/default/grub
  2. update GRUB_CMDLINE_LINUX:
    GRUB_CMDLINE_LINUX=“console=ttyS0″
  3. save & close the file and update grub with
    # update-grub
  4. reboot the virtual machine

On the host you can now access the serial console with virsh console vm1.

To get back to the host use ctrl + ]. An opened session will not be closed so you have to logout explicitly (like if you were right in front of the machine).

get virsh shutdown working

There is a quite common problem with kvm and virsh shutdown which is likely not working with all virtual guests. In my case, I’m using Ubuntu 10.04 LTS and 12.04 LTS as host OS. All guests are working with ubuntu or debian, too.

If your guests are ignoring the virsh-shutdown command, check these indicators:

  • Enable ACPI in the guest configuration file
    ...
      <features>
        ...
        <acpi/>
        ...
      </features>
    ...
  • Install acpid on the guest
    # apt-get install acpid
  • Install acpi-support-base package
    # apt-get install acpi-support-base

Next time, I will show how to get the virsh console command working properly.

If you also want to get the virsh console command working properly read the article Get virsh console working.

Debian sauber halten – Pakete mit rc Status vollständig entfernen

Debian zeichnet sich als konservative, aber sehr robuste und zuverlässige Distribution aus und war nicht zuletzt aus diesem Grund meine Wahl für einige Server-Systeme, die mittlerweile schon einige Jahre auf dem Buckel haben.

Mittlerweile wurde ein System zum dritten mal auf eine neues Major-Release gehoben und mit der Zeit sammelt sich allerhand historischer Datenmüll auf der Platte. Auch bei Desktop-Systemen mit kürzeren Release-Zyklen wie bei Ubuntu kann sich in wenigen Jahren viel Balast auftürmen.

Ein Weg, das System zu entschlacken ist das Löschen alter Konfigurationsdateien. Listet man durch dpkg -l  installierte Pakete auf, fällt der Status „rc“ bei einigen Zeilen auf. Bei rc ist das Paket nicht installiert, jedoch sind seine Konfigurationsdateien auf dem System vorhanden. Diese entstehen bei Technologiewechseln während Major-Upgrades oder durch das manuelle installieren und deinstallieren von Software.

Dieser Schlacke kann man einfach über folgende Kommandos untersuchen (Output ist gleich, rein aus Lernzwecken sind beide aufgeführt):

dpkg -l | grep ^rc | tr -s " " | cut -d " " -f 2
dpkg -l | grep ^rc | awk '{print $2}'

Beispiel Output:

dpkg -l | grep ^rc | awk '{print $2}'
automysqlbackup
libbind9-50
libdatrie0
libdevmapper1.02
libdns55

Es ist sehr wichtig, die Pakete manuell zu prüfen! Es kann auch false-positives durch z.B. manuell installierte Pakete geben, die nicht aus dem Repository installiert wurden.

Ist man sich seiner Sache sicher, können die Pakete bzw. ihre Konfigurationsdateien vollständig entfernt werden:

apt-get purge `dpkg -l | grep ^rc | awk '{print $2}'`

Beispiel Output:

apt-get purge `dpkg -l | grep ^rc | awk '{print $2}'`
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
automysqlbackup* libbind9-50* libdatrie0* libdevmapper1.02* libdns55*

Schütze deinen Browser!

Dieser Blogeintrag entsteht aus einer Mail an Freunde und Familie, denen ich dringende Maßnahmen vorschlug, um ihre Sicherheit im Web zu erhöhen. Grund sind die gravierenden Sicherheitslücken in Java, Flash und anderen Technologien, die unsere PCs und Macs extrem verwundbar machen.

Betrifft das auch Dich?

Ja, denn egal ob du Linux, Mac oder Windows verwendest: Java und Flash sind auf fast allen Systemen installiert! Weiterhin betrifft es jeden Browser, was zur Folge hat, dass man durch bloßes Ansurfen einer Webseite infiziert werden kann.

Braucht man die Plugins von Flash, Java und Co?

Bis zum heutigen Tag muss man leider noch sagen: Ja. Auch wenn in Zukunft HTML5 die Plugins von heute Schritt für Schritt ablösen wird, ist gerade Flash noch häufig im Einsatz.

Wie kannst du dich schützen?

Kriminelle könnne durch prärarierte Inhalte, welche die Sicherheitslücken unserer Browser-Plugins ausnutzen, auf sehr effektive Weise unseren Computer infizieren. Man kann sich schützen, indem man das automatisierte Laden der Plugins verhindert – der sogennanten Click-to-Play Funktion.

Das bedeutet, dass man bei Youtube z.B. zuerst das Video mit einem Klick „aktivieren“ muss. Das ist nicht nur benutzerfreundlich und sicher, sondern kann auch die Ladegeschwindigkeit von Seiten erhöhen.

Click-to-Play für deinen Browser

Für Firefox

Firefox wird in einer zukünftigen Version Click-to-Play standardmäßig aktivieren. Bis dahin reicht es die folgende Erweiterung zu installieren: https://addons.mozilla.org/de/firefox/addon/click-to-play/

Für Chrome

Bei Chrome muss man in die Einstellungen, dann unten auf Erweiterte Einstellungen anzeigen… und dann bei Datenschutz auf Inhaltseinstellungen klicken. Bei der Überschrift „Plug-ins“ wählt man Click-to-Play.

Für Safari

Für Safari existiert eine Erweiterung namen ClicktoPlugin, welche Click-to-Play aktiviert: http://www.chip.de/downloads/ClickToPlugin-fuer-Safari_52050502.html

Für Internet Explorer, Opera und Co

Ein englischsprachiger Artikel befasst sich auch mit diesem Thema und kann für weitere Informationen hier erreicher werden.

Youtube mit aktiviertem Click to Play

Vergleiche Strukturen zwischen MySQL Datenbanken

Möchte man die ALTER Statements zweier Datenbank-Revisionen automatisch generieren lassen, bietet sich das Commandline Tool mysqldiff an. Damit kann man auf einfache Art und Weise die benötigten DDL-Statements zwischen Produktiv-Version und aktuellem Development-Snapshot erstellen.

Unter Ubuntu installiert man das in Perl geschriebene Programm am einfachsten via CPAN:

> sudo cpan
cpan[1]> install MySQL::Diff

Nach der Installation führt man den Vergleich durch

> mysqldiff -u root -p PASS powerlab_latest_stable powerlab_dev

In meinem Beispiel möchte ich die Änderungen der Datenbank powerlab_latest_stable hin zu powerlab_dev bekommen.

Der Output sieht dabei wie folgt aus:

ALTER TABLE lab_event_tags ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8; # was ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1
ALTER TABLE lab_event_tags_mapping ENGINE=InnoDB DEFAULT CHARSET=utf8; # was ENGINE=InnoDB DEFAULT CHARSET=latin1
ALTER TABLE lab_person DROP COLUMN last_participation; # was varchar(30) DEFAULT NULL
ALTER TABLE lab_person CHANGE COLUMN comment comment text; # was varchar(45) DEFAULT NULL
ALTER TABLE lab_person ADD COLUMN is_deleted tinyint(1) DEFAULT NULL;
ALTER TABLE lab_person ENGINE=InnoDB AUTO_INCREMENT=3113 DEFAULT CHARSET=utf8; # was ENGINE=InnoDB AUTO_INCREMENT=3112 DEFAULT CHARSET=utf8
ALTER TABLE lab_person_values ENGINE=InnoDB AUTO_INCREMENT=42424 DEFAULT CHARSET=utf8; # was ENGINE=InnoDB AUTO_INCREMENT=42390 DEFAULT CHARSET=utf8

Nach php5-intl Installtion: Unable to load dynamic library idn.so

Nach einer Installation von php5-intl auf einem Debian 6.0 Host erschien regelmäßig die folgende Fehlermeldung:

PHP Warning: PHP Startup: Unable to load dynamic library
'/usr/lib/php5/20090626/idn.so' - /usr/lib/php5/20090626/idn.so:
cannot open shared object file: No such file or directory in Unknown on line 0

Negative Auswirkungen hat diese Meldung zunächst keine, aber es ist eine Fehlkonfiguration die zeitnah behoben werden sollte:

rm /etc/php5/conf.d/idn.ini

php5-idn wird bei der Installation von php5-intl deinstalliert, jedoch wird fälschlicherweise weiterhin versucht idn zu laden.

Das php5-Modul intl stellt Internationalisierungsfunktionen zur Verfügung und wird von Frameworks wie Symfony2 oder Web-Apps wie Roundcubemail verwendet.

Nexus S: Kamera Bug mit Android 4.0.3

Android Logo


Android 4 geistert ja schon lange durch meine favoritiserten Newsseiten und Blogs und auch auf SPIEGEL Online tauchen neuste Screenshots und Fakten zum neuen Google Betriebssystem auf. Ich war mit meinem Android 2.3 an sich sehr zufrieden, aber als ich letzten Samstag gelesen habe, dass Google seit kurzem das Over-the-Air Update für das Nexus S ausliefert, konnte ich es doch nicht mehr erwarten das Update zu bekommen.

Auf der Geburtstagsparty am Abend war es dann soweit: Ein herber Rückschlag für meine Kommunikationsfreudigkeit, aber das neue OS hat nicht nur mich fasziniert. Läuft schnell, kann tolle neue Sachen und sieht fantastisch aus.

Android4 on Google Nexus S Screenshot

Party + Handy = Photos. Jedenfalls bei mir. Also Kamera gestartet und Cheeeeeess sagen… aber von wegen. Es macht nicht klick sondern nichts. Denn mein Nexus S behauptet „Ihr USB-Speicher ist voll“.

Ich habe bisher noch keine Ahnung woran es scheitert. Es ist jedenfalls noch Platz auf meinem 16GB großen Speicher vorhanden und Panorama Fotos kann ich aufnehmen (tolles neues Feature!), Videos und normale Fotos hingegen nicht.

Es ist vermutlich ein Bug und ich werde hier die Lösung posten, sobald ich sie gefunden habe. Screentshots kann man man übrigens unter Android 4 jetzt auch ohne zusätzliche Software machen: Volume-Down und Power-Taste gleichzeitig drücken.

[Update 1]

Mittlerweile kann ich wieder Bilder machen. Ich habe zuerst alte und nicht mehr benötigte Daten gelöscht und den DCIM Ordner umbenannt, sodass dieser neu erstellt wurde. Außerdem verstaubte Apps deinstalliert und neu gestartet. Seit dem kann ich wieder Fotos machen. Ich habe jetzt statt einiger hundert MB wieder 2,5 GB freien Speicherplatz – was genau die Ursache des „vollen“ Speichers war, kann ich leider nicht genau sagen.

[Update 2]

Wie Hardyin den Kommentaren berichtet, sind die Bilder seit Android 4 bei ihm dunkel und farblos. Ich kann zum Thema Kamera im Nexus S soviel sagen, dass mich die Qualität nicht vom Hocker haut. Unter Android 3.2 habe ich oft den Party-Modus aktiviert, damit die Farben gut raus kommen. Das ist zwar nicht originalgetreu, aber blasse Fotos sind für mich keine Option, wenn man schöne Erinnerungen festhalten möchte. Unter Android 4.0.3 habe ich das Gefühl, dass bei Tageslicht die Bilder schnell verwackeln und zu hell sind. Wie unten zu sehen habe ich zwei Android 3.2.6 vs. Android 4.0.2 Vergleichsbilder. Dunkel sind sie bei mir nicht, eher im Gegenteil. Die Heiligabendfotos bei gedimmten Licht sind hingegen wirklich dunkler und verwackelter ausgefallen. Ich schiebe das aber eher auf die mäßige Kamerahardware, die im Nexus S verbaut ist.

Nexus-S_Android-4.0.3-Camera-Example-1

Nexus S mit Android 4.0.3 Beispiel Hund

Nexus-S_Android-3.2.6-Camera-Example-1

Nexus S mit Android 3.2.6 Beispiel Technisches Museum Wien

Nexus-S_Android-4.0.3-Camera-Example-2

Nexus S mit Android 4.0.3 Beispiel Auto

Nexus-S_Android-3.2.6-Camera-Example-2

Nexus S mit Android 3.2.6 Beispiel Baustelle