Archiv der Kategorie: Software

Alles was mit Software zu tun hat

Kostenloses Push-Mail für Windows Mobile per Google

Push-Mail ist spätestens seit Blackberry ein etabliertes Buzzword auf dem Mobilen Bingo-Bogen: Statt nur alle paar Minuten Mails abzurufen kommen sie fast in Echtzeit auf dem mobilen Begleiter an. Unter Windows Mobile benötigt man hierzu einen Exchange-Server – eigentlich, denn auch Google’s kostenloser E-Mail-Dienst kann genutzt werden. Anleitungen dazu schweben schon lange durchs Netz, aber da immer irgendwas fehlt hier meine kleine Version

  • Als erstes benötigt man natürlich ein GMail Googlemail-Konto – die Einrichtung sollte nicht all zu schwer sein, Google hat viele Erklärungen dabei.
  • Um sicher zu gehen, dass das Konto funktioniert sollte mal im Webinterface Mailversand und -empfang testen
  • Nun gehts ans Mobiltelefon – Hier öffnet man „ActiveSync“, meist irgendwo mit grünem Ball und zwei Pfeilen im Startmenü zu finden – die HTC-Manila-Einrichtung funktioniert nicht.
  • Im Menü „Mehr“ findet sich der Punkt „Server konfigurieren“
  • Hier gibt es je nach Gerät eine Zusatzseite – wird nach einer Email gefragt trägt man seine vollständige Googlemail-Adresse ein, den Haken um den Server automatisch zu ermitteln muss entfernt werden.
  • Als Serveradresse kommt „m.google.com“ zum Einsatz, die Verschlüsselung muss eingeschaltet sein.
    Bild: https://www.adlerweb.info/blog/wp-content/uploads/2010/11/CapScr0001.bmp-150×150.png
  • Nun folgen Benutzername (Die komplette Googlemail-Adresse) sowie das Kennwort. Für Push-Mail muss das Kennwort verständlicherweise gespeichert werden.
    Bild: https://www.adlerweb.info/blog/wp-content/uploads/2010/11/CapScr0002.bmp1-150×150.png
  • Als nächstes hat man die Auswahl was mit Google abgeglichen werden soll. Da mich nur Push-Mail interessiert wähle ich nur E-Mail – Google unterstützt bei Bedarf auch Kalender und Kontakte, Aufgaben darf nicht gewählt werden.
    Bild: https://www.adlerweb.info/blog/wp-content/uploads/2010/11/CapScr0003.bmp-150×150.png
  • Die eigentliche Einrichtung ist nun abgeschlossen – Interessierte sollten jedoch einen Blick auf den Zeitplan werfen, welcher ebenfalls im Menü von ActiveSync zu finden ist – Wie man sieht wird zwischen Haupt- und Nebenzeit unterschieden. Während in der Hauptzeit die Mails per Push-Mail („Bei Elementeingang“) eintreffen wird in der Nebenzeit nur alle 60 Minuten auf neue Mails geprüft. Wer Abends testet muss sich also nicht wundern, wenn er umsonst auf die schnelle Post wartet.
    Bild: https://www.adlerweb.info/blog/wp-content/uploads/2010/11/CapScr0006.bmp-150×150.png
  • Am unteren Rand des Zeitplans findet sich ein Link zur Einstellung der Hauptzeit – normalerweise Mo-Fr 8:00-18:00
    Bild: https://www.adlerweb.info/blog/wp-content/uploads/2010/11/CapScr0007.bmp-150×150.png

Bitte bedenkt, dass Google – wie jeder andere Provider – die Mails mitlesen könnte und das auch (automatisiert) zur Werbeauswahl macht, man sollte private Mails also wie überall verschlüsseln oder über andere, sichere Kanäle versenden.

SVG im Browser – noch immer ein Mysterium?

Disclaimer: Derzeit bin ich mit ein paar Projekten beschäftigt, daher gabs die letzte Zeit nichts Neues im Blog – vergessen ist er aber nicht…

Wenn es um Zeichnungen am PC geht wird man früher oder später bei Vektorgrafiken laden. Im Gegensatz zu den bekannten Rastergrafiken (jpeg, png, …) speichern diese keine Bildpunkte, sondern beschreiben geometrische Formen und deren Eigenschaften. Das ganze hat einen Vorteil: Wenn ich weiß, wie eine Form aufgebaut ist, kann ich ohne Qualitätsverlust zoomen ohne den von Fotos bekannten „Pixelbrei“ zu erhalten. Als Editor ist z.B. Inkscape zu nennen, welcher unter einer freien Lizenz zu haben ist.

Eben diesen verwende ich gerne um Logos oder andere Zeichnungen für meine Webseiten anzufertigen – dabei nutze ich meist am Ende die Exportfunktion um aus der Vektorgrafik eine PNG in der richtigen Größe zu generieren, was auch zuverlässig funktioniert.

Momentan arbeite ich an einer Webseite, welche eine breite Zielgruppe ansprechen soll, darunter auch viele Senioren. Aus Erfahrung weiß ich inzwischen, dass einige der späteren Nutzer gerne und ausgiebig mit den Zoomfunktionen die Webseiten in die passende Größe bringen – also sollte es ein recht dynamischer Aufbau werden. Keine Pixelangaben, alles relativ zur Schriftgröße – aber halt: Das als PNG gespeicherte Logo verwandelt sich nach starkem Zoom in eine unansehnliche Pixelsuppe, eine andere Lösung muss her. Wäre es nicht schön, wenn man SVG direkt im Browser nutzen könnte? Angedacht ist das schon seit Jahren, nach einer kurzen Googelei und einigen Tests ging die Idee aber sofort wieder in die Tonne: Als „object“ waren in Firefox waren nur Teile der Grafik zu sehen, Chrome hingegen versteht keine Transparenz – als „img“ funktioniert Chrome wie gewünscht, Firefox verweigert dafür komplett die Anzeige (mit 4.0 soll es funktionieren). Also entnervt aufgegeben, natürlich mit entsprechender Info auf Twitter. SVG-Kenner @pawelf hatte jedoch gegen mein „geht nicht“ etwas einzuwenden – mit einigen Beispielen und Links brachte er mich auf den richtigen Weg bezüglich Skalierung:

  • Als erstes muss man natürlich ein Bild in Inkscape zeichnen – wie das geht sollte schnell klar sein, Linien, Kreise & co dürften Jedem ein Begriff sein
  • Beim Speichern geht es jedoch schon los: Normalerweise speichert Inkscape ein SVG mit Größenangabe – Browser halten sich jedoch an diese und blenden ggf. Scrollbalken ein statt die Zeichnung zu verkleinern. Abhilfe schafft mal, in dem man als Dateiformat bei „Speichern unter“ auf „Optimiertes Inkscape-SVG“ umschaltet. Versucht man nun zu speichern erhält man weitere Optionen – hier ist ein wichtiger Haken zu setzen: „Vorschau einschalten“. Wie man diese Übersetzung des Englischen „Enable ViewBoxing“ verstehen soll ist mir nicht ganz klar, aber es sorgt dafür, dass die SVG statt einer fixen Größenangabe eine ViewBox nutzt und damit in Browsern passend skaliert werden kann.

Das Transparenzproblem ließe sich über eine Javascript-Browserweiche lösen, ich versuch mich aber lieber an einem CSS-basierten PNG-Fallback :/

Gleichgesinnte: Windows-Handy und Linux-PC synchronisieren

(Dieser Artikel liegt schon 2008 in meinen Entwürfen – eventuell hilft er ja trotzdem…)

Was früher das Filofax war ist Heute der PDA: Adressen und Termine immer Griffbereit, ein Notizen hat man auch dabei und die Todolisten verfolgen einen leider auch immer weiter. Der große Vorteil der PDA-Variante: Viele Informationen auf kleinem Raum und synchron mit dem Rechner, naja, theoretisch. Während früher noch die Anbindung PDA<->PC häufig nur mit Tricks möglich war sind heutige Geräte Dank WLAN, Bluetooth und Co. recht pflegeleicht. Dennoch ist eine Zusammenarbeit zwischen meiner Windows-Mobile-Geräte und den Linux-Kisten nicht ganz so einfach. Auf der PDA-Seite ist dank der großartigen Arbeit des Funambol-Projektes nicht mehr viel zu basteln: Server aufsetzen, Clients einrichten und schon synchronisiert der PDA seine Daten mehr oder weniger korrekt über HTTP mit dem PC – nur wohin? Die Daten landen zuerst einmal im Funambol SyncML-Server. Dort sind sie zwar gut aufbewahrt und es lassen sich auch mehrere PDAs auf den gleichen Stand bringen, aber das rudimentäre Beispiel eines Webinterface ist als Desktoplösung nicht wirklich zu brauchen.

Als erster Test musste Windows dran glauben: Outlook wird offiziell unterstützt und da ich gerade eine Testinstallation laufen hatte durfte diese direkt herhalten. Viola! Alle Daten des PDAs finden sich in Outlook. OK, das ginge über ActiveSync oder dessen Vista-Version einfacher und Outlook ist nicht unbedingt die Software, welcher ich freiwillig meine Daten anvertraue, aber immerhin scheint die Synchronisation auch über mehrere Geräte ohne Informationsverlust zu laufen.

Nächster Test war Sunbird/Lightning, die Kalenderapplikation der Mozilla-Stiftung. Zwar gibt es hier ein Plugin, aber leider ist es offenbar noch nicht ganz ausgereift. Wiederholende Termine machen zum Teil noch Probleme und werden nicht angezeigt. Trostpflaster: Sie werden auch nicht gelöscht, dennnoch für mich erst mal nicht nutzbar.

Momentan bastel ich an Evolution, einer Groupware welche häufig bei Gnome Verwendung findet. In Verbindung mit Multisync

Ergänzung: Evolution mit der Software „Syncevolution“ ist soweit nutzbar!

GCalcTool Todesoptimierungen

Neue Funktionen finde ich generell immer ganz toll: Neue Funktionen und weniger Sicherheitslücken kommen üblicherweise recht zügig auf meine Systeme. Große Bauchschmerzen bekomme ich allerdings, wenn an der UI geschraubt wird. Zwar ist gegen Verbesserungen der Benutzerschnittstelle nichts auszusetzen, in letzter Zeit beschränken sich die Änderungen aber meist auf ein Thema: DAU-Freundlichkeit um jeden Preis. Da wird auch schon mal ein Funktionsverlust in Kauf genommen. Ein schönes Beispiel bietet jüngst der Gnome-Taschenrechner aka. gcalctool, welcher vor kurzem eine „Schönheitskur“ verordnet bekam.

Der erste Blick geht auf den Programmierer-Modus der 5.28.x-Serie, welche die alte Funktion schön zeigt:

Bild: https://www.adlerweb.info/blog/wp-content/uploads/2010/07/gcalctool11-267×300.png

Interessant ist für mich vor allem der obere Bereich: Ähnlich meines Hardware-Taschenrechners kann ich direkt unter dem Eingabefeld das Zahlensystem zwischen Binär, Oktal, Dezimal und Hexadezimal welchseln. Die aktuellen Zahlen werden automatisch in die entsprechende Anzeige umgewandelt. Wenn man z.B. mit Hexadezimalen Messwerten eines µC in Kombination mit dezimalen Vergleichswerten arbeitet eine unschlagbare Kombination. Der Vorteil, dann man die Werte direkt in den Rechner kopieren kann und nicht abtippen muss versteht sich ja von selbst.

Bild: https://www.adlerweb.info/blog/wp-content/uploads/2010/07/gcalctool2-300×229.png

Beim ersten Start einer 5.30.x traute ich meinen Augen nicht: Ein Bug muss sich in meinen Build eingeschlichen haben: Das Eingabefeld ist überdimensional groß, die Wahl zwischen den Zahlensystemen verschwunden, Buttons haben eine seltsame Beschriftung. 2 Rekompilierungen und einige Web-Suchen später die Ernüchterung: It’s not a bug, it’s a feature! Die sichtbare und trotz Ausdünnung sichtbar gequetschte Objektanordnung soll das neue Design des Gnome-Rechners darstellen. Die Zahlensysteme lassen sich nun im Menü umstellen. SRSLY? Die BIN/OCT/DEZ/HEX-Umrechnung aus der PROGRAMMIERERANSICHT eines Taschenrechners schmeißen und im Menü verstecken? Das sind 500% der ursprünglich nötigen Klicks! Ich geh mich jetzt noch ne Runde aufregen und werd dann die alte Version nochmal für alle meine Systeme kompilieren *gnah*

Käferjagd – MySQL, Roundcube und die Zeichenkodierung

Schei? Encoding

Das trifft meine Beschäftigung in den letzten Tagen ganz gut. Ich habe bereits länger auf meinem Mailserver sieve im Zusammenspiel mit Dovecot im Einsatz. Als Frontend ist nach vim und dem ThunderbirdPlugin schlussendlich ein (inzwischen integriertes) Plugin für meinen Webmailer Roundcube zum Einsatz gekommen. Im Gegensatz zu den vorherigen Lösungen ist es hier über eine GUI möglich sich einfache Regeln, wie aus vielen Mailprogrammen bekannt, zusammen zu klicken. Inzwischen gibt es eine Weiterentwicklung, welche einige lang erwartete Features mitbringt. Leider verlief mein Test nicht ganz wie geplant.

Erste Beobachtung: Immer wenn man ein Sonderzeichen verwendet ist der Webmailer nicht mehr nutzbar. Die aktuelle Sitzung wird beendet, versucht man sich neu einzuloggen kann man Mails lesen, ein Klick auf die Filterseite führt aber zu einem neuen Absturz. Einzige Lösung: Das Filterscript mit einem anderen Editor löschen. Nicht ganz was ich wollte, aber eine Nachfrage beim Entwickler verheißt nichts Gutes: Kein Fehler in der Richtung bekannt. So weit so schlecht.

Sinnvollste Möglichkeit: Testserver hochziehen (LVM-Snapshots ftw) und Problem einschränken. Schnell war klar: Es muss wohl an der Config liegen. Auf einem frischen Server ließ sich die aktuelle Roundcube mit Plugin nutzen, auf der Kopie des Produktivservers tritt immer wieder der Fehler auf. Etwas hin und her – ratlosigkeit. Der Testserver konnte auf dem Filterserver des Testservers problemlos arbeiten, also kann es nicht am Mail-/Filterserver. Auch die Kopie des Programmverzeichnisses vom Produktiv auf den frischen Testserver arbeitete dort problemlos. Doch die Konfiguration? Also nahezu das komplette /etc vom frischen Testserver auf die Produktivkopie gezogen, PHP-FCGI auf mod_apache, etc, etc – nada. Einziger Unterschied, der mir auffiel war 64< ->32Bit – das wirds ja wohl kaum sein.

Hilft nichts – der Holzhammer muss her: Das komplette Plugin mit echos durchsetzt und huh – der Abbruch passiert beim Speichern der Session. OK, generell würde ich ja sagen nicht korrekt escaped, aber warum tritt es dann nur auf einem Server auf?!

Stunden später war mir dann meine eigene Blindheit auch klar: Ich hatte zwar alle Daten kopiert, aber nicht die Datenbank. Die hatte ich zwar kurz verglichen, aber ein kleines aber verhängnisvolles habe ich übersehen. Roundcube nutzte in den ersten Versionen ASCII als Zeichencodierung für die in MySQL gespeicherte Session-Table. Dies wurde irgendwann auf UTF8 umgestellt, jedoch nur in den Scripten für Neuinstallationen – die Update-Datei enthält keine entsprechende Konvertierung. Da mein RC schon lange läuft hing die Tabelle entsprechend auf ASCII und machte bei UTF8-Zeichen in der Session die Fliege. 3 Tage gebastel und ein ALTER TABLE später funktioniert nun alles – so kann man sich auch beschäftigen…

Der ganz normale Gentoo-Wahnsinn

CD rein, booten, fertig – so einfach könnte das Leben sein wenn man nicht eine falsche Hardware erwischt. Derzeit bocken bei mir die Gentoo-Live-CDs auf einem Compaq/HP Evo N620C. Allein bin ich nicht, wie über 48 Kommentare im entsprechenden Bug zeigen. Auslöser ist ein Treiber für einen PATA-Controller. Gebraucht wird er nicht wirklich: Zum einen ist die Hardware eine VLB-Karte, also noch in der Ära vor PCI zu Hause, zum Andern kann der „Generic“-Treiber für PATA-Chipsätze die gesamte Funktion ebenfalls abdecken. Leider scheint das im Kernel-Team keinen zu interessieren: Auf der Kernel-ML ging bereits mehrmals der Request rund den Treiber zu entfernen, ohne Ergebnis. Bleibt mir nur bei jedem Boot die Kernelparameter zu ändern oder eine eigene DVD zu erstellen.

Neuer GPG-Key

Huch – doch schon wieder so lange her? Durch die ganze Arbeit hier ganz verpeilt, dass mein GPG wieder fällig ist. Ab sofort bin ich mit der der 0x5A43E94F unterwegs, der vorherige (0x908BE3C7) ist bereits ausgelaufen und entsprechend nicht mehr gültig. Der Public-Key ist auf den üblichen Keyservern verfügbar.

Für alle die, die nicht wissen was das bedeutet: GPG ist in diesem Fall ein Verfahren um E-Mails digital zu unterschreiben oder verschlüsseln. Mit hilfe dieser Technik kann man prüfen, ob die Mail wirklich vom angegebenen Anwender stammt und ob sie manipuliert wurde. Bei verschlüsselten Mails ist es zudem für Außenstehende – im Gegensatz zu einer normalen Mail – den Inhalt mitzulesen. Für viele Mailprogramme gibt es entsprechende Erweiterungen, bei Thunderbird z.B. Enigmail.

Nativer Client für VMWare ESXi unter Linux

VMWare ESXi bzw. VMWare ESX ist nahezu der „de facto Standard“ für die professionelle Virtualisierung. Die Verwaltung erfolgt dabei über den VMware Infrastructure Client – eine .NET-Software, welche aber momenten nicht für Linux vorhanden ist und auch unter wine nur bedingt funktioniert. Zwar gibt es mit Kodiak einen 3rd-Party-Client, welcher die komplette Verwaltung ermöglichen soll und dank Adobe AIR auch unter Linux laufen sollte, allerdings ist dieser derzeit in geschlossener Beta und steht noch nicht zum Download.Was viele nicht wissen: Es gibt einen einfachen Client direkt von VMWare. OK, nicht offiziell:

VMWares einfachere Variante „VMware Server“ nutzt in der aktuellen Version zur Verwaltung den Webbrowser. Der Konsolenzugriff wird dabei über ein Plugin ermöglicht, welches auch für Firefox unter Linux zur Verfügung steht. Mit einem kleinen trick kann man dieses Plugin dafür nutzen eine Verbindung zu ESX(i) aufzubauen und so immerhin die Konsolen anzuzeigen:

  1. Zuerst muss natürlich das Plugin installiert sein. Hierzu muss man seinen Browser auf einen installierten VMWare-Server verbinden und dort die Konsole öffnen. Da der VMWare-Server kostenlos ist sollte auch eine temporäre Installation machbar sein. Da das Plugin eine XPI ist lässt sie sich auch einmalig auslesen und (technisch gesehen) auf eine unbegrenzte Anzahl von Rechnern verteilen. Ob das Plugin installiert ist kann man bei Firefox 3.5 unter Extras -> Add-Ons -> Plugins prüfen:
    Bild: https://www.adlerweb.info/blog/wp-content/uploads/2009/11/Bildschirmfoto-3-300×98.png
  2. Nun gilt es das Plugin zu lokalisieren. Üblicherweise sollte es sich ein einem Ordner dieses Formates befinden:
    /home/username/.mozilla/firefox/****.default/extensions/VMwareVMRC@vmware.com/plugins
  3. Hier findet sich die Binärdatei des Plugins, welche auch ohne Browser gestartet werden kann. Mit
    ./vmware-vmrc -h
    startet eine GUI und fragt nach Server, Nutzer und Kennwort. Darauf folgt eine Liste mit VMs.
    Bild: https://www.adlerweb.info/blog/wp-content/uploads/2009/11/Bildschirmfoto-4-300×220.png
    Bild: https://www.adlerweb.info/blog/wp-content/uploads/2009/11/Bildschirmfoto-5-300×230.png

Achtung: Wählt man eine ausgeschaltete VM wird diese automatisch gestartet.

Das einbinden von CD-ISOs sowie Restart und Shutdown funktionieren Problemlos, USB-Geräte und Netzeinstellungen lassen sich nicht anpassen. Im VMWare-Forum findet sich eine Liste mit weiteren Optionen des Plugins.

Update: Offenbar funktioniert der Trick auch mit dem VMWare-Player:
vmplayer -h 1.2.3.4

Eigene Volksbank gefällig? Programmlücke der VR-Banken machts möglich

Banken leben im Internet von ihrem guten Ruf – eine Sicherheitslücke kann schwere (und vorallem teure) Folgen haben und entsprechend hart wird gegen Betrüger vorgegangen. Dabei vergessen einige Banken, dass auch in ihrem eigenen Hause die Sicherheit keine Selbstverständlichkeit ist. Gerade wenn viele Schnittstellen bestehen können Schwachstellen entstehen. Ein besonders schönes Beispiel liefert momentan die VR-Bankengruppe. VR-Banken sind Genossenschaftsbanken, gehören also den zugehörigen „Genossen und Genossinnen“. Um Kosten zu sparen haben die nordwestlichen VR-Banken ihre IT bereits 1963 an die „Gesellschaft für automatische Datenverarbeitung“ kurz GAD ausgelagert.

Im Falle der Webseiten betreiben unsere regionalen Banken gewissemaßen eigenständig Portale, welche dann auf Webbanking und Brokerageportal der GAD verlinken. Im Falle des Webbanking funktioniert das anstandslos: Die Bankleitzahl wird per URL übergeben, auf den Servern der GAD geprüft und dann die zugehörigen Logos und Schriftzuge des lokalen Verbundes in die Bankingseite eingefügt.

Bei Brokerage sieht dies etwas anders aus. Der Typische link lautet hier z.B.

https://www.brokerage[…].html?firma=xxx&home=www.yyy.de&bankid=zzz

Jeder, welcher sich etwas mit HTTP auskennt, erkennt sofort worauf ich hinaus möchte: Nicht nur Firmenname, auch Homepage und Bankleitzahl werden per URL übergeben. Zudem zeigte ein Test, dass die Daten nur grob geprüft werden: Zwar werden als Bankleitzahlen korrekterweise nur Zahlen angenommen und die weiteren Angaben von Sonderzeichen bereinigt, fantasieeingaben werden jedoch nicht erkannt. So lassen sich Portale wie folgendes erstellen:

[Hallo Welt Banking]

Wie man sieht ist der Titel des Portals auf „Hallo Welt Banking“ geändert. Ein klick auf „Home“ führt zu meiner Internetseite. Durch die Filterung stellt dies zwar keine direkte Gefahr dar, allerdings kann es genutzt werden um Nutzer zu verwirren und hinterlässt bei mir einen faden Beigeschmack.

Hinweis: Die GAD e.G. wurde am 11.10. über diese Möglichkeiten in Kenntnis gesetzt, bisher konnte ich keine Stellungnahme erhalten.

Informatik der Evolution

Gestern durfte ich wieder ein Prachtstück an Software bewundern: Ein kommerzielles Ressourcenmanagementsystem mit etwa 7000 Datensätzen machte zu schaffen. Um eine Berechnung über alle Datensätze durchzuführen brauchte das System über 45 Sekunden. 2 Indizes in der Datenbank später warens dann 8 Sekunden und nachdem alle Einzelabfragen einer JOIN-Orgie Platz gemacht hatten sind auch Zeiten von 0,2 Sekunden keine Seltenheit. Als Kommentar im Chat erhielt ich dazu folgende Antwort:

Wenn sich diese ganzen Trottelstudenten die meinen Java & Co wäre die pure Erleuchtung  beim Vögeln genau so bescheuert anstellen wie beim Programmieren ist in ein paar Generationen Ruhe

Tja, wenn er sich da nicht mal irrt und die Theorie von Idiocracy durchschlägt 😉