Archive for the ‘HOWTO’ Category

nokia und eplus umts

Monday, July 23rd, 2007

Ich wetterte ja ne zeitlang bitterboese ueber das UMTS Netz von E-Plus bzw BASE. Nu musste ich aber feststellen, dass es mehr an dem Nokia E61 lag, als an E-Plus.
Nicht, dass ich jetzt ploetzlich deren Netz in Schutz nehmen wollte, oh nein. Das ist immernoch das mieseste, was ich seit langem gesehen habe.
Und genau da lag/liegt naemlich mein Problem. Hat das E61 naemlich sowohl UMTS als auch GPRS Empfang im Grenzbereich, also bei beiden nur so 1-2 Balken gibts kaum ne Moeglichkeit, per Modembetrieb vernueftig Internet zu bekommen.

Hier die Loesung.
Scheinbar schaltet das E61 in dieser Situation quasi staendig zwischen UMTS und GPRS hin und her. Per Surfen oder sonstige Anwendung direkt per Handy scheint das nicht zu passieren, aber im Modembetrieb gibts hier nur Stress.
Wenn man das E61 direkt auf UMTS Betrieb festklopft, funktioniert der Modembetrieb auch bei ganz schlechtem Empfang wunderbar!
Leider muss man dazu das Telefon komplett rebooten beim umstellen.

System->Einstellungen->Netz->Netzbetrieb auf UMTS statt Dualmodus.

la fonera ‘richtig’ nutzen (koennen)

Monday, July 2nd, 2007

Eigentlich ist diese Fon Sache was nettes. Man teilt sein eigenes Netz mit anderen Fon Usern und kann fortan auch die Netze der anderen Fon Usern benutzen, theoretisch weltweit. Firmensitz von Fon ist in Spanien, was mir zunehmend Bauchschmerzen bereitet. Was passiert, wenn jmd ueber mein Netz dumme Sachen macht? Klar, nur Registierte koennen den Fon Service nutzen, aber der Kripo ist das egal. Die klopft an meine Tuer…
UPDATE: Seit ein paar Tagen kann man sich nun an jedem FON Hotspot einen vollkommen anonymen 15 Minuten Schnupperaccount erstellen – Schoene Scheisse!

Also sah ich mir den Router mal etwas genauer an. Dieser hat einen tollen Formfaktor, kaum groesser als eine Zigarrettenschachtel (BigBox). Drin steckt wohl ein mit Linksys’ WRT54-GL baugleiches Innenleben. Die Leistung ist auch nicht schlecht, die Moeglichkeiten, ins Netz zu gelangen gehen von DHCP, statischer IP bis hin zu PPPoE. Netterweise ist das OS ein Linux, basierend auf OpenWRT. Hinzu kommt nur noch eine Software, um Internet fuer Fremduser erst nach Autorisation freigibt (chilispot).

Da dem so ist, gibts im Netz natuerlich eine Million Anleitungen, das Teil zu knacken um z.B. eigene Dienste darauf zu installieren. Mit der Zahl hab ich vermutlich nichtmal uebertrieben, weil jeder nur fuer eine bestimmte Firmware version instruiert. Fon bemueht sich natuerlich auf der anderen Seite, die Router dicht zu bekommen durch Updates. Diese werden uebrigens Automatisiert im Hintergrund eingespielt, ohne dass der Eigner viel davon mitbekommt. Bei jedem einschalten und spaetestens alle 24h telefoniert die Box naemlich nach Hause und fragt nach Updates oder Konfigurationsaenderungen. Man kann die Grundkonfiguration naemlich auch einfach auf der Zentralen Fon Seite vornehmen statt mit dem eigenen Router Webinterface.

Ok, lange Rede, aber warum schreib ich das hier ueberhaupt? Ich hab mich natuerlich ans hacken der Box gemacht… Das kam dabei raus:

Wie ich oben schon erwaehnte, es gibt tonnen von Anleitungen, nur wenige funktionieren, weil sie fuer eine spezielle Firmware Version gemacht sind.
Einer der ersten Hacks basierte auf code injection ueber das Webinterface des Routers. Diese Luecke wurde schnell geschlossen.
Auf Stefans Datenbruch Seite werden noch ein paar andere Moeglichkeiten besprochen, aber die Letzte ist wirklich Interessant. Fuer diese habe ich mich entschieden.

Was auch gut zu wissen ist: Niemals den Router selbt per Webinterface updaten! Die ausgelieferten Foneras haben bis heute meisstens Firmware versionen um 0.7.1-1 oder 0.7.1-2. Mit einer Reset Methode (Reset Taster 20 Sekunden halten und ohne Internet booten lassen.) kann man immer zu dieser Ausgelieferten Version zurueck. Auch wenn schon automatische Updates liefen, die z.b. unten besprochene Hacks verhindern. Man muss aber unbedingt drauf achten, dass die Fonera auf keinen Fall Zugang zum Internet bekommt, sonst sind die Updates wieder drauf ;)

Jetzt kommen wir also zum Kolofonium Hack der Datenbruch Seite. Die Vorgehensweise hat mir hier sehr gut gefallen. Jede Fonera greift beim Systemstart auf einen Radius Server zu um sich die besagten Konfigurationsaenderungen und/oder neue User(Freunde, die umsonst surfen koennen) abzuholen. Das geschieht in Form eines Bashscripts. Tadaa ;) Was Stefan nun macht, ist sich einen eigenen Radius zusammenzuhacken, der die Zeile “ipup /etc/init.d/dropbear” in diese Konfiguration einfuegt, das startet einen kleinen SSH Server. Man muss natuerlich irgendwie den DNS von radius01.fon.com und radius02.fon.com aendern. Nichts einfacheres als das, man traegt einfach (auch stefans) DNS Server ein. Nach einem Neustart hat man dann einen SSH Server am laufen, der allerdings nur auf dem Internen WLAN lauscht, fuer die andern Netze ist die Firewall (noch) zu.

Hier also eine Kurzanleitung die mindestens bis FW 0.7.1-3 funktioniert:

  • La Fonera starten und warten, bis der Router komplett durchgebootet hat, so um 5 minuten.
  • La Fonera per Webinterface Internetfaehig machen und folgenden DNS manuell eintragen: 88.198.165.155
  • Reboot und wieder warten, bis die Box komplett durchgebootet hat.
  • Jetzt muesste der SSH Server via Private Wlan erreichbar sein (Firewall verhindert noch Zugriff aus anderen Netzen)
  • z.b. via ssh root@192.168.10.1 auf den Router connecten. Passwort ist das gesetzte Web Passwort, oder default “admin”

An dieser Stelle sollte man einige Vorkehrungen treffen, dass erstens der SSHD dauerhaft anbleibt und FON der Remotekonfigurationszugang genommen wird.
Das stellt man wie folgt an:

  • mv /etc/init.d/dropbear /etc/init.d/S50dropbear
  • vi /etc/firewall.user # und in den diese Zeilen entkommentieren:
    iptables -t nat -A prerouting_rule -i $WAN -p tcp—dport 22 -j ACCEPT
    iptables -A input_rule -i $WAN -p tcp—dport 22 -j ACCEPT
  • vi /bin/thinclient # Die letzten Zeilen z.B. so umschreiben (dann sieht man auch, was Fon so treibt auf den Kisten)
    #. /tmp/.thinclient.sh
    cp /tmp/.thinclient.sh /tmp/thinclient-$(date '+%Y%m%d-%H%M')

Jetzt noch das offene FON_* Netz abklemmen:

  • vi /sbin/ifup # ganz unten den case “hotspot” auskommentieren:
    hotspot)
    # ifdown hotspot
    # setup_hotspot_wifi
    ;;

    Bei der Gelegenheit kann man auch gleich den ganzen Hotspot Kram abschalten…

Nun hat man einen handlichen Reiserouter und/oder Wlanextender. Dank offenem System sind die Moeglichkeiten nahezu unbegrenzt ;)

debian und uw-imapd

Thursday, May 31st, 2007

Ich bin ja ein verfechter von SSL Diensten. Leider kann man nicht immer NUR SSL Anbieten. Gerade wenn gewoehnliche Kunden betroffen sind. In meinem heutigen Fall ging es um den UW-IMAPD der netterweise von Debian mitgeliefert wird. Schaltet man nach der Installation per inetd “imap2″ an (was eh schon ein schlechter Witz ist, gemeint ist hiermiet imap4 v2…), kann man sich nicht anmelden.
im auth.log erscheint folgendes:

May 31 13:33:45 server imapd[xxxx]: Login disabled user=xxxxx auth=xxxx host=xxxxx [x.x.x.x.x]

Ein telnet auf port 143 verraet folgendes (Raus kommt man hier uebrigens mit “q logout”):

* OK [CAPABILITY IMAP4REV1 LOGIN-REFERRALS STARTTLS LOGINDISABLED] server IMAP4rev1 2003.339 at Thu, 31 May 2007 13:41:14 +0200 (CEST)

Ohne SSL also kein login. Ok, warum fragen wir uns? Ganz klar! weil eine Datei “/etc/c-client.cf” fehlt mir folgendem Inhalt:

I accept the risk
set disable-plaintext nil

Kein Scheiss, das muss wirklich da rein. Dann klappts auch mit unverschluesseltem plaintext login am Imapd.
Telnet auf 143 sollte nun folgendes sagen:
* OK [CAPABILITY IMAP4REV1 LOGIN-REFERRALS STARTTLS AUTH=LOGIN] server IMAP4rev1 2003.339 at Thu, 31 May 2007 13:42:51 +0200 (CEST)

Wie kommt man da drauf? Minutenlanges googlen… Selbst in /usr/share/doc/uw-imapd/README.Debian steht nichts diesbezgl.

laufzeit von perl scripten begrenzen

Tuesday, May 29th, 2007

Wie im vorherigen Post schon erwaehnt nehmen die “gehackten” Webspaces langsam ueberhand. Das groesste Problem hier ist, dass es wenig Loesungen gibt, Perlscipte in ihrer Laufzeit zu begrenzen. Was PHP schon ewig macht, ist sucgi immernoch Fremd.
Traumhaft waere es natuerlich, wenn alle Kunden immer schoen sichere CMS und/oder Forenscripte nehmen und auch immer artig updaten wuerden… A man can dream….

Dem ist leider nicht so, also setze ich da mal ausserhalb vom Apachen an. Wie waere es, einfach per cron alle x Minuten durch die Prozessliste zu gehen und zu schauen ob ein userscript laenger als x minuten laeuft? Nichts einfacheres als das. Soviel zur Theorie. Nach so einigem gecode kam ich dann zu diesem ersten script:


#!/bin/bash
# script zum ueberwachen von zu lange laufenden scripten
# killt alle scipte (ausser whitelist) nach $maxruntime minuten
#
hostname=$(hostname)
maxruntime=1
minuserid=10000
if [ "$1" != "" ] ; then debug=1 ; fi

for i in $(find /proc -maxdepth 1 -uid +$minuserid -type d -cmin +$maxruntime)
do
cmdline=$(cat $i/cmdline)
proftptest=$(fgrep proftpd $i/cmdline)
if [ "$proftptest" = "" ] ; then
uid=$(stat -c%U $i)
if [ "$debug" = "1" ] ; then
echo $cmdline von user $uid laeuft laenger als $maxruntime minute"(n)"
else
echo | mutt root -s "$cmdline von user $uid laeuft auf $h
ostname laenger als $maxruntime minute(n)"
fi
else
if [ "$debug" = "1" ] ; then
echo $proftptest laeuft
fi
fi
done

Klar, im ersten Versuch killt es noch nichts, sondern mailt erstmal die Verstoesse. Nach den ersten paar Minuten im cron fiel mir allerdings auf, dass viele Kunden cgi upload scripte haben und dergleichen. Hier muss ich also die “whitelist” noch ein wenig aufbohren, nach einem proftpd alleine zu checken reicht wohl nicht ;)
Das endgueltige script werde ich wohl im Downloadbereich posten.

zeig her deine soft.

Sunday, April 29th, 2007

Fuer alle, die es noch nicht gefunden haben, ich hab da mal ne Page erstellt mit hoffentlich all meiner Software, die ich so nutze.

Hier gehts lang. Lang passt grad, die Liste wurde wirklich lang ;) Ich hoffe es ist hilfreich fuer den ein oder anderen.

mehrere rechner, eine tastatur/maus?

Monday, April 23rd, 2007

Kennt ihr das Problem, mehrere Rechner am Schreibtisch, jeder hat nen extra Keyboard und ne Maus. Bei 2 Rechner kann man sich evtl noch dran gewoehnen, aber selbst das ist schon nervig genug. Die andere Moeglichkeit, mehrere Monitore an einem Computer. Auch hier wirds schnell nervig, zumindest wurde es das, zu der Zeit, als ich es noch versuchte. CPU/RAM Probleme waren an der Tagesordnung. Keyboard Switches waren auch keine tolle Sache, staendig tippt man auf dem falschen Screen ;)

Nun, seit ein paar Jahren nutze ich 2 ernsthafte Alternativen. ’99 gings mit x2vnc los. Ich war damals Linux Desktop User und hatte meisst noch einen Windows Rechner nebenbei. Das Programm arbeitet nach folgendem Prinzip. Auf dem Slave Rechner muss ein VNC Server Installiert sein. Der Hauptrechner uebertraegt nun alle Tastatur/Maus Daten ueber VNC sobald man ueber die angegebene Kante des eigenen Monitors hinaus faehrt. Man stellt also seine Monitore um den Monitor des Hauptrechners herum wie bei echtem Multihead. Leider gabs hier, auch nach zahlreichen updates immernoch Probleme mit Sonderzeichen. Ausserdem war es auf 4 Slaves begrenzt. Das klingt zwar viel, aber die obere und untere Kante sind kaum zu nutzen und der Hauptrechner muss gezwungenermassen in der Mitte stehen. Aber durchs VNC Protokoll liess sich diese Loesung auch wunderbar mit OSX nutzen. Auch einige Spiele funktionierten wunderbar “ferngesteuert”. So hab ich ne halbe Ewigkeit Eve Online gespielt ;)
Auf selben Code basierend kam dann auch win2vnc raus. Selbe arbeitsweise, fuer Windows Hauptrechner.

Irgendwann wurde aber OSX immer interessanter und ich musste mir eine Loesung fuer OSX als Hauptrechner suchen. 2005 kam ich also zu Synergy. Synergy war am Anfang sehr rudimentaer, lediglich als commandline Tool ausgelegt und mit einem Textfile als Konfiguration.
Dafuer hat es einen ganz entscheidenen Vorteil. Es ist voellig egal wo Master und Slave Monitore verteilt sind. Wenn der Master Monitor links steht, koennen rechts davon auch 2 Slave Schirme stehen. Faellt ihr der mittlere Rechner mal weg, connected Synergy direkt und ueberbrueckt die Luecke automatisch. In meinem aktuellen Fall habe ich 2 Rechner mit je 2 Monitoren per Synergy verbunden. die Windows Maschine ist der Host. Der Mac Laptop rechts spielt Slave und als besonderheit steht dessen zweiter Schirm links von den Windows Monitoren. Durch spezielle Konfiguration ist es nun moeglich mit der Maus “rund zu fahren” – Sprich wenn man lange genug nach rechts bewegt, kommt man links wieder an. Dadurch laesst sich der zweite Mac Monitor bequem erreichen.
Das ist aber noch nicht alles, was Synergy im Naehkaestchen hat. Wie bei x2vnc auch, kann es Text Clipboard Inhalte synchronisieren. Ungleich grosse Aufloesungen oder Monitor hoehenunterschiede lassen sich kompensieren und was sehr hilfreich ist, besonders beim zocken, man kann die Maus auf einem Schirm durch druecken der Scroll-Lock Taste locken um versehentliches wechseln des Screens zu vermeiden.
Synergy gibt es fuer Windows mit recht guter GUI und Autostart Funktion und fuer OSX/Linux/diverse Unixe als commandline Tool. Zu erwaehnen ist wohl SynergyKM – Ein Konfigurations-GUI fuer Mac OSX die allerdings noch eine aeltere Synergy Version bundled.

Zuletzt sollte man allerdings eine kleine Warnung aussprechen: Benutzt Synergy nur in einem vertrauten Netz, denn alle Keyboard/Clipboard Daten gehen unverschluesselt uebers Netz. Die Synergy Seite weisst hier auf ssh Tunnel hin, die man in unvertrauten Umgebungen nutzen sollte.

Nun hoffe ich nur, dass die Entwicklung von Synergy bald mal wieder weiter geht. Besonders die OSX Version brauch noch etwas liebe. Nichts desto trotz ist diese Software mit das beste, was mir die letzten Jahre untergekommen ist.

sshfs unter os x

Monday, April 16th, 2007

Man kennt die Situation, auf der Shell liegen Daten. Jedesmal wenn man drauf zugreifen moechte muss man den Kram Lokal ziehen, bearbeiten, hochladen. Kein Spass. Ein Loesungsansatz waere das eingebaute ftpfs des Finders. Allerdings mounted der FTP shares nur readonly, warum auch immer und der Spass ist reichlich unverschluesselt. Will man also nicht.

Hier kommen sshfs und fuse ins Spiel. Nach Installation der fusefs Kernelextension kann man das kleine, grafische Hilfsprogramm sshfs starten welches dann die mounts uebernimmt. Es wird nach einem erfolgreichen mount nicht mehr gebraucht.

Nun hat man vollen Zugriff auf das neue Laufwerk aus Finder oder direkt aus der shell herraus, natuerlich nur soweit sie Userrechte das erlauben. Geschwindigkeitstechnisch bin ich recht begeistert, ich komme an das Maximum meiner Leitung hier. Das schafft die scp implementation von Cyberduck nicht mal annaehernd. Mp3 streaming ist also kein Problem.

Leider gibts noch ein paar Nachteile, wer haette das gedacht ;) Zum einen sollte man definitiv vorm abklemmen des Netzwerks die sshfs Laufwerke trennen. Scheinbar kann das fuse/sshfs Gespann mit einem disconnect sehr gut um und macht einen reconnect sobald das Netz wieder da ist. Allerdings faellt OS X wie so jedes normale Unix auch, schoen auffe Schnautze. Das gilt auch fuer den Finder. Es gibt aber noch ein paar andere unangenehme Effekte. Z.B.:

$ tail -f access_log
Bus error

Aber alles in allem hilft mir das Gespann schon sehr viel weiter.

Hier die Links/Infos:

del.icio.us mobil

Monday, March 19th, 2007

Nu spiel ich schon seit ner weile mit del.icio.us rum und fand wenig Gefallen and der “sozialen” Seite von dem Dienst.
Jetzt kam mir allerdings ne nette Idee um den Dienst fuer mich noch sinnvoller zu nutzen. Wie auch im Desktopbereich wechsle ich staendig zwischen mehreren mobilen Geraeten. Delicious koennte hier helfen. Leider ist die Oberflaeche weder Handy freundlich, noch gut zu bedienen. Also kramte ich mal wieder meine geballten PHP Kenntnisse raus und baute einen delicious parser. Die Arbeitsweise ist denkbar einfach, das Script rennt zu delicious und schnappt sich alle Links zu einer bestimmten Kategorie und formatiert diese in einer einfachen Liste. Hinzu kommt noch eine einfache Sortierung via Kommentarfeld und voila, fertig ist ein mobiles Linkpad.
Es lebe web2.0 ;)

yahoo, ich bin nicht billig!

PS: das script haenge ich spaeter hier an.

Sicherheit und Nokia

Monday, March 5th, 2007

Nun hab ich mein schoenes Nokia E61 schon ein paar Tage. Nachdem ich jetzt auch meinen Mailserver Spamsicher(er) gemacht habe, koennte ich dieses tolle Handy ja auch zum Email lesen verwenden. Soweit so, so gut. Aber wenn, dann richtig. Gleich mit SSL. Sehr schoen.

Was tu ich also? Besorge mir endlich mal ein SSL Zertifikat fuer trafficsau.de – Richtig, ab sofort ist auch diese Webseite per https zu erreichen. Per modernem Browser tut das nun auch wunderbar. Apple Mail beschwert sich auch nicht ueber das neue Zertifikat. Aber was stellt mein tolles Nokia fest? Es meckert genauso ueber das neue, rechtmaessig signierte Zertifikat, wie ueber das alte selbstsignierte.

Der ganze Spass kostete mich nun ein paar Tage Sherlock spielen. Der Grund war mir recht schnell klar. Ich bin nen Billichheimer, also geh ich nicht zu Verisign, zahle auch keine 700 Dollar fuer so ein Zertifikat. Ich hab wohl eine recht neue Authorithy erwischt, von welcher Nokia wohl noch nichts gehoert hat.

Nichts einfacheres als das, ich mach einfach das schon lange anstehende Firmware Update. Hier werden bestimmte neuere Stammzertifikate eingespielt. Soviel zur Theorie. Nachdem ich alle Einstellungen wieder hergestellt hatte, sagte mir das doofe Ding immernoch, mein Zertifikat waer nen feuchten Mist wert. Ok, also gibts doch bestimmt einen Weg, mein Zertifikat zu importieren.

Eine Suche auf Nokia.com liess ich schnell sein. Die Handy Doku half auch nicht weiter. Per Zufall fand ich den Eintrag unter “System -> Einstellungen -> Telefon -> Aktenreiter Sicherheitseinstellungen -> Zertifikat-Management”

Wer zur Hoelle versteckt da diesen, doch recht wichtigen Menuepunkt?? Hier sagt mir die Hilfe, dass ich eigene Zertifikate nur von lokalen Medien importieren kann… Sehr schoen, ueber das Format steht hier nichts, aber soviele verschiedene wirds wohl nicht geben. Beim zusammensuchen kam mir dann die Idee. Was nun, wenn ich das Stammzertifikat aus meiner Apple Keychain exportiere und dem Handy naeherbringe?

Auf gehts. Apple Schluesselbund gestartet, den Schluesselbund X509Anchors ausgewaehlt, in meinem Fall Equifax Secure Global eBusiness CA-1 ausgewaehlt, Ablage -> Exportieren, auf die Memorykarte geschoben und in den Handy Dateimanager, der grossartigerweise unter “Office” zu finden ist, hier einfach aufs Zertifikat klicken, bzw oeffnen waehlen. Speichern auswaehlen und voila, es gibt ein neues Stammzertifikat im Handy, nachdem man den Sicherheitshinweis bestaetigt hat.

Nun funktioniert auch automatisches Mail abholen wunderbar ohne Nachfrage, weil was an dem Zertifikat nicht stimmen soll.

PS: wenn mir jetzt noch jemand sagt, wie ich das aktuelle Putty mit der aktuellen E61 Firmware installiere, waer ich sehr dankbar. Der Schalter im Programm Manager, er solle Alle Pakete installieren, nicht nur die signierten scheint in dieser Version nen feuchten Dreck zu tun :/