Archive for the ‘Android’ Category

OpenVPN in Cyanogenmod9

Sonntag, April 29th, 2012

I just upgraded my Phone (Samsung Galaxy S GT-i9000) to Cyanogenmod9 which is based on Android 4.0.4! Why? Out of pure curiosity. CM9 has not been officially released, yet, but here you can find nightly builds, one of which I installed: http://download.cyanogenmod.com/?device=galaxysmtd. I was expecting something really alpha, but actually, it is really useable!

What has changed since Cyanogenmod 7.2? The boot splash screen reminds me of Doctor Who. :) At first glance, the user interface is very different, I have to get used to the slightly different menus. It looks more stylish. At second glance, I saw that there are cool changes in the “background”. Busybox is preinstalled, I have tools like ifconfig, traceroute and others without doing anything. Great! It is also much easier to install one’s own server certificates which is obviously a great benefit for cacert.org users. You can simply install new certificates from your sd card via the menu.

There was only one thing that took me quite some time to find out: How do I get my OpenVPN tunnel to work? At first, I was slightly shocked not to find OpenVPN in the configuration menu any more. Nor could I find the tun.ko kernel module in /system/lib/modules. In the end, I found out, it’s all there! The module apparently is compiled into the kernel and no longer a “stand-alone” module. There is no need to load it anymore.

(I went on a longer ride trying to load it, searching for it, learning to compile it myself. This was interesting, by the way, but in the end, my phone said something like “no, thanks, I’ve already got that one.” (tun: duplicate symbol tun_get_socket (owned by kernel).) And in fact, openvpn is installed in /system/xbin. Having found out about this, I downloaded the OpenVPN Settings application (https://code.google.com/p/android-openvpn-settings/downloads/list or Google Play). In the advanced settings, I told it not to load the kernel module. My .ovpn configuration file contained a line that prevented the programme from working so I commented it out. nogroup was an unknown entity on this phone.

# Downgrade privileges after initialization
user nobody
# group nogroup

 Summary: \o/ Thanks to the developers of cm9! Awesome!

Free your Android – angetestet

Donnerstag, März 29th, 2012

Zeit für einen kleinen Android-Plausch! Es gibt ja gerade diese Kampagne “Free your Android”. Sie ist von der Free Software Foundation, dem FoeBuD e.V. und der portugiesischen ”Associação Nacional para o Software Livre” (Ansol). Ziel ist es, durch freie Software mehr Kontrolle über das eigene Android-Gerät zu erlangen. Mehr dazu gibt es hier: https://fsfe.org/campaigns/android/android.html. Der FoeBuD hat neulich auch einen Workshop dazu angeboten – eine tolle Idee!

 @Leena auf identi.ca: "Übrigens gehts! Und es ist großartig. Und OHNE Google-Account. Mein freies Smartphone. Kann es nur ampfehlen. #fya"

Als ich dann einen begeisterten identi.ca-Tweet von @leena las, wollte ich es auch ausprobieren. Hier also ein erster Erfahrungsbericht.

Welches Android?

Ich hatte auf meinem Samsung-Smartphone schon seit längerer Zeit nicht mehr das mitgelieferte Android, sondern das community-gepflegte CyanogenMod 7.1, neuerdings jetzt 7.2RC (Wikipedia hier: CyanogenMod). Mein Hauptgrund für den Wechsel war, dass ich OpenVPN brauche. (Dafür gab es in der von Samsung gereichten Variante nicht mal das Kernelmodul, geschweige denn, dass sowas in den Menüs irgendwo vorgesehen war.) root-Rechte, also Administrator_innenrechte kann ich insgesamt aber nur empfehlen! Sie erlauben, Backups zu machen, Firewalls zu nutzen und anderes. Okay, aber ich komme von Thema ab.

Kein Google-Account – geht, aber wie toll ist es?

Hauptpunkt war für mich also, das Yuppiephone vom Google-Account zu lösen. (Das könnt Ihr Euch so vorstellen: Wenn das neu installierte CyanogenMod das erste Mal startet, kommt als erstes die Frage nach dem Google-Account. Diesen Schritt kann man überspringen.)

Ich habe weder meine Mails, noch meinen Kalender bei Google (meine Beschreibung zu Zarafa hier), ich bezog aber die Apps von Google Play und habe auch meinen RSS-Reader mit Google Reader synchronisiert. Für befreite Yuppiephones gibt es eine alternative Softwarequelle, nämlich fdroid.org. Über diese App bekommt man eine Auswahl an freier Software zum Installieren. Das ist ein super Projekt! Und: Da muss noch viel mehr Software rein… (Eine Liste zu befreiender Apps wird hier gesammelt.) Ich habe mir z.B. die freien RSS-Reader angesehen und keinen gefunden, der schon so ausgereift ist, wie meiner (BeyondPod), den ich – ebenso wie die Backup-Software Titanium Backup – gekauft und für sehr gut befunden hatte. Beide können nach Zeitplan ihre Jobs erledigen, also jede Nacht ein Backup machen und Feeds aktualisieren. Da will ich auf keinen Fall drauf verzichten! Titanium Backup hab ich netterweise außerhalb von Google Play zum Download gefunden und installiert. Darin habe ich die Market Links aller gesicherten Apps gelöscht. BeyondPod habe ich dann als App mit Daten aus dem Backup wiederhergestellt. Mit viel Rumgetatsche habe ich aus allen abonnierten Feeds die Synchronisation mit Google Reader entfernt. Ich bin also sogleich wieder bei proprietärer Software, wenn auch ohne Google Play/Reader. Ich mag ja auch Microblogging und habe jetzt das freie Progrämmchen mustard. Das hatte ich früher schon verwendet und fand es auch nicht schlecht, in der jetzt aktuellen Version stürzt es leider andauernd ab. :(

Die Sache mit der Kontrolle und der Firewall

Vor der (Halb-)Befreiung hatte ich mal auf meinem Gateway rumspioniert, welche Websites mein Telefon eigentlich so kontaktiert. Da waren schon seltsame Sachen dabei – so würde mich z.B. interessieren, was Ubersocial da immer mit dem Perureisen-Portal macht… Das ist jetzt besser geworden, aber eine feinere Kontrolle wäre dann jetzt richtig Arbeit!

Der Google DNS wird dauernd aufgerufen (irgendwie klar), aber auch mustard etwa kontaktiert dauernd die Website des Herstellers. Das könnte irgendeinen Sinn haben (vielleicht Kontrolle der Internetverbindung), müsste von mir aus aber auch nicht unbedingt sein. Ich habe mir also die Firewall Droidwall aus dem fdroid-Repository angesehen. Sie erlaubt es, einzelnen Apps den Internetzugang über WLAN oder mobiles Datennetz zu entziehen/zu gestatten (Blacklisting oder Whitelisting). Eine Firewall, die gleich kleinteiligere Angebote aufgrund des Datenverkehrs macht, hab ich nicht gefunden. (Aber weist mich bitte drauf hin, wenn Ihr sowas kennt!) In Droidwall kann man auch eigene Filterregeln (iptables) anlegen. Das habe ich noch nicht ausprobiert. Es ist auf jeden Fall zu aufwändig, nach jeder Neuinstallation erstmal zu prüfen, was die App tut und so daran herumzuregulieren, dass man sich wohl damit fühlt. Und: Auf meinem Computer mache ich sowas ja auch nicht… Ihr?

Vorläufiges Fazit

Ich weiß noch nicht, ob das so lasse! Da gibt es etliche sehr gute freie Apps und die wichtigsten Dinge kann ich machen! Aber dort, wo es sie noch nicht gibt, ist die Frage: Will ich gut funktionierende proprietäre Apps durch schlechter funktionierende freie Alternativen ersetzen? Und will ich auf die Möglichkeit verzichten, zig Apps einfach mal auszuprobieren, die gerade so die Runde machen? Will ich auf ein Stück Komfort verzichten? (Beispiel: am Rechner was Interessantes sehen, es in den Google Reader schmeißen und später auf dem Telefon drin lesen.) Gleichzeitig amüsiere ich mich beim Schreiben über mich selbst: Auf dem Computer habe ich mich durch acht oder neun Jahre Linux genau daran gewöhnt, weniger Komfort und mehr Zeitaufwand, weil mir freie Software so wichtig ist… Im Übrigen steht der echte Test noch aus: Wird mir was fehlen, wenn ich unterwegs oder im Stress bin?

Android: Howto autoload a kernel module

Montag, August 29th, 2011

On my phone, I have a tun module for openvpn that i would like to autoload on boot. As it took me a while to figure out how to do this, here is how it works:

su
cd /etc/init.d
## pwd will show you that you are in
## /system/etc/init.d!!! That's what confused me.
mount -o remount,rw /system
vi 99tunmodule

The content of the file /system/etc/init.d with the right path to your tun.ko file:

insmod /system/lib/modules/tun.ko

After this execute

chown root:shell 99tunmodule
chmod 750 99tunmodule
mount -o remount,ro /system

Reboot your phone and execute lsmod to see the tun module!

root-Zertifikate von CAcert in Android importieren

Mittwoch, August 24th, 2011

Importieren ist beschönigend ausgedrückt, ich hab die Zertifikate dem Telefon eigentlich eher aufgedrängt… Da es etwas gedauert hat, überhaupt herauszufinden, wie das geht, hier ein paar Zeilen dazu: Es geht um das Samsung Galaxy S (GT i-9000), in Verbindung mit einem Ubuntu-Rechner. root-Rechte auf dem Telefon sind Voraussetzung!

[Update 2: Interessant ist auch die neue (noch alpha-) App CACertMan vom Guardian Project [4], die es erlaubt, die CAs zu verwalten. Das Projekt stellt alternativ auch eine Datei zur Verfügung, aus der zwei CAs entfernt wurden (DigiNotar und die chinesische CNNIC).]

[Update 3 (28.04.2012): Unter Android 4.0.x/Cyanogenmod9 ist alles viel schöner! Einfach die Zertifikate auf die SD-Karte kopieren, dann bei Einstellungen -> Sicherheit -> den Punkt "Von SD-Karte installieren" anklicken, die Dateien auswählen, fertig. Welchen Zertifikaten das Telefon vertraut, ist hier auch viel einfacher einzusehen, nämlich bei Einstellungen -> Sicherheit -> "Vertrauensw. Anmeldedaten". Dort kann man im Reiter "System" vorinstallierte Zertifikate abwählen und im Reiter "Nutzer"_in die selbst installierten sehen.]

Weiterlesen…

Angry Birds

Samstag, Februar 19th, 2011

Heute muss ich mal eins der richtigen großen Themen ansprechen: Die Riesenvögel in Angry Birds. Was machen die da?

Kurz zum Hintergrund: Ich weile zum Schreiben in Kroatien, südlich von Split, das Internet (irgendein offenes Wlan aus der Nachbarschaft) geht nur zeitweise, nach der Arbeit noch mehr zu lesen, dazu habe ich wenig Lust, also spiele ich Angry Birds auf dem Handy. Das sollte die geneigten Leser_innen überraschen, denn das ist sonst nicht so mein Zeitvertreib, schon weil ich mich auf die Botschaften hinter Spielen (Krieg, Kapitalismus oder beides) oft nicht einlassen mag.

Weiterlesen…

Android mit Zarafa-/Exchange-Server synchronisieren

Montag, Januar 24th, 2011

Nach viel Rumgetatsche auf dem Samsung Galaxy S und Sucherei in Foren hab ich hier nun die Schritte zusammengestellt, um den Standard-Android-Kalender, die E-Mails und die Kontakte mit einem Zarafa-Server (oder auch Exchange-Server) zu synchronisieren. Hoffe, dass es bei anderen dann schneller einzurichten geht. Und ich sage es gleich, es gibt (noch?) ein Problem: Kontakte vom Handy kommen mit verpfuschten Mailadressen auf dem Server an (s.u.).

Weiterlesen…

Akku-Sparmaßnahmen für’s Smartphone

Montag, Oktober 11th, 2010

So, heute ein kleiner Artikel über das Samsung Galaxy S i9000. Ich sag’s gleich, wenn es neu ist, und eine dauernd damit im Netz rumsurft, dann ist sie glücklich, wenn der Akku einen plötzlichen echten Telefonanruf noch übersteht. Naja, ich übertreibe ein bisschen, aber es ist schon ziemlich sinnvoll, sich mit ein paar Einstellungen und Apps zu beschäftigen, die beim Energiesparen helfen. Hier also kurz meine bisherigen Maßnahmen (alles Programme, die es kostenlos im Android Market gibt):

Weiter lesen…