Magento Development – Entwicklungsumgebung einrichten

Für die Entwicklung mit Magento sollte man sich zuerst eine lokale Entwicklungsumgebung einrichten. Ich nutze dazu Eclipse PDT, eine Eclipse Version, die auf PHP abgestimmt ist.

Nach der Installation von Apache, MySQL und PHP habe ich einen vhost für Magento eingerichtet und das Shopsystem dann dort installiert.

Magento gibt standardmäßig keine Fehler aus, PHP-Errors führen zu einer weißen Seite. In Magento muss zuerst der Development-Mode angeschaltet werden. Wenn möglich sollte das in der Konfigurationsdatei des virtuellen Hosts gemacht werden, da diese beim Deployment nicht mit in das Staging-System oder gar das Live-System übertragen wird. Soweit möglich sollte also hier die Option

SetEnv MAGE_IS_DEVELOPER_MODE 1

gesetzt werden. Sollte das nicht möglich sein, kann sie in der .htaccess (die .htaccess ist Teil vom Core und wird bei einem Update überschrieben) gesetzt werden.

Zusätzlich muss noch das anzeigen von PHP-Errors (display_errors) auf “On” gestellt werden. Idealerweise erfolgt das wieder in der Konfigurationsdatei des VHosts:

php_flag display_errors on

 

Alternativ kann auch dieser Eintrag in der .htaccess von Magento gesetzt werden.

Sollte alles korrekt eingerichtet worden sein, werden jetzt alle Fehler ausgegeben:

Nagios: Festplatten mit check_iostat überwachen

Ein Flaschenhals bei der Performance von Systemen ist der Schreib- / Lesedurchsatz der Festplatten. Sinnvoll also, das ganze mit Nagios zu überwachen bzw. die Stats mit z.B. pnp4nagios zu visualisieren.


Bei nagios exchange gibt es hierfür das Script check_iostat, welches  die Transactions/sec, KB read / s und KB written/s prüft. Für einen Ubuntu-Server hab ich das Script ein bisschen anpassen müssen, da iostat die Daten nicht mit “.” sondern mit einem “,” liefert. Auch liefert das Script immer nur die erste Ausgabe von “iostat”, was nur die durchschnittlichen Werte seit dem letzten Reboot anzeigt. Die angezeigten Werte sind in MB.

Das Script kann hier heruntergeladen werden und dann unter /usr/local/nagios/libexec/check_iostat gespeichert werden (Rechte mit chmod nicht vergessen).

Zum Einbinden in nagios in der commands.cfg diesen Abschnitt hinzufügen:

define command{
        command_name    check_iostat
        command_line    $USER1$/check_iostat -d $ARG1$ -c $ARG2$ -w $ARG3$
        }

In der Configdatei des Servers den Abschnitt

define service{
        use                             local-service
        host_name                       localhost
        service_description             IO-Stats /dev/sdb
        check_command                   check_iostat!sdb!200,200,200!100,100,100
}

einfügen, Die Werte für die Benachrichtigungen (200,200,200!100,100,100) entsprechend an die Platte anpassen, nagios restarten und fertig.

pam_mapi: Authentifizierung gegen Zarafa

Um einen SMPT nicht als Openrelay im Netz stehen zu lassen, muss sich ein Absender authentifizieren. Im Normalfall passiert das über das SASL, was gegen eine Benutzerdatenbank prüft. In größeren Umgebungen ist das ein LDAP-Server (OpenLDAP oder Active Directory).
Für kleineren Umgebungen mit MySQL als Datenbank für Zarafa hat Robert Scheck jetzt sein PAM-Modul veröffentlicht, das sich neben dem Einbinden in den SMTP-Server (z.B. Postfix) auch für andere Anmeldungen gebrauchen lässt (z.B. Samba). Mit pam_mapi wird gegen die MAPI-Schnittstelle von Zarafa authentifiziert.

Der Einbau ist auf seiner Seite beschrieben.

Dropbox verschlüsseln

Dropbox ist eine tolle Sache, allerdings bekomme ich immer Bauchschmerzen, wenn private Daten unverschlüsselt irgendwo in der Clound liegen.

Ein Ansatz ist es, einen Truecrypt-Container zu erstellen und den dann mit dem Dropbox-Verzeichnis zu synchronisieren. Einen anderen interessanten Ansatz ist EncFS, wie Web Upd8 in ihrem Blogeintrag “Encrypt Your Private Dropbox” beschreibt.

Facebook Phishing

Hier habe ich einen interessanten Artikel über eine neue Art von Phisingangriffen gelesen. Die Angreifer gehen dabei relativ geschickt und trickreich vor.
Mit dem Hinweis auf eine @facebook.com-Emailadresse wird der Benutzer auf eine Facebook-App-Seite gelockt, auf der die vermeintliche Emailadresse registriert werden kann.

“Just applied for my own @facebook.com email account. Get one before someone takes your name http://bit.ly/xxxx”

Diese bit.ly-Adresse leitet dann auf ein Facebook App um, in der im IFrame eine gefälschte Login-Maske zeigt. Gibt man hier seine Daten ein, werden diese an die Phisher weitergeleitet.
Das App macht auch noch einen Eintrag auf der Pinnwand, so dass die Phisingnachricht relativ schnell verbreitet.
Die Inhalte liegen auf verschiedenen (vermutlich kompromittierten) Webservern. Auch die URLs auf den Pinnwänden sind unterschiedlich.
Facebook biete in den Einstellungen (http://facebook.com/editaccount.php) die Möglichkeit, eine SMS oder Email zu versenden, wenn sich ein Fremder mit den selben Benutzerdaten anmelden will oder angemeldet hat.

Aktuell sind diese Scam-Nachrichten noch auch Englisch, es ist aber wahrscheinlich nur eine Frage der Zeit, bis auch deutsche Versionen in Umlauf kommen.