Categories
Computer

Google Reader Alternative

Auf der Suche nach einem Ersatz für Google Reader bin ich dank Heise auf Tiny Tiny RSS gestoßen. Das Teil ist ein serverbasierter RSS-Aggregator, der im Prinzip Google Reader komplett nachbildet – mit dem Vorteil, dass man Herr “seiner” Feeds ist. Einmal installiert, kann man – wie bisher über Google Reader auch – über einen Webbrowser auf die Feeds zugreifen. Das Tool ist gut konfigurierbar und es gibt auch eine einstellbare Tastaturnavigation. Über einen Cron-Job können die Feeds regelmäßig aktualisiert werden, wenn man das nicht immer manuell machen möchte. Großartige Anforderungen außer PHP und MySQL oder PostgreSQL gibts nicht.

Heise hat auch eine schöne Installationsanleitung!

Ich find Tiny Tiny RSS auch schöner als Feedly, weil letzteres (zumindest bislang) immer noch im Hintergrund auf Google Reader zugreift, und damit einen Google Login erfordert. So hab ich jetzt keinen Grund mehr, mich bei Google überhaupt noch mit einem Account anzumelden.

 

Categories
Computer

USB-Geräte unter VirtualBox erkennen

Die virtuellen Gäste meiner Ubuntu-Installation 12.10 haben keine USB-Geräte erkennen können.

Die Lösung des Problems bestand darin, meinen Benutzer in die Gruppe “vboxusers” hinzuzufügen:

usermod -aG vboxusers <username>

Ein Restart war danach nötig, wobei wohl im Nachhinein auch der Restart des VirtualBox-Serverdienstes gereicht hätte.

Anschließend kann man über das USB-Icon unten im Fenster des virtuellen Gastes die erkannten USB-Geräte einzeln einbinden.

Categories
Computer Gruntle

Apache2 Config – Trailing Slashes

Memo-to-self:

  • <directory >-Direktiven immer ohne den abschließenden “/” (Slash) definieren, dann klappt es auch mit dem Zugriff auf das Verzeichnis selbst und URL-Zugriffe ohne trailing slash.
Categories
Computer

Mail-Client-Einstellungen (IP, Authentifizierung) bei Postfix anonymisieren

Im Rahmen der Neuinstallation eines Servers habe ich mich mal wieder des Themas “Anonymisierung der Client-Headerdaten” angenommen. Bei Nutzung von Postfix habe ich mich hierbei dessen header_checks-Funktionalität bedient. Die Einstellung basiert mal wieder auf des IPSmail-Howtos (siehe voriger Blogpost).

Ich nutze zusätzlich den sogenannten “Submission”-Dienst auf Port 587. Über diesen Port werden nur Mails von authentifizierten Benutzern versandt. Um ihn zu nutzen, ist in der master.cf dieser Dienst zu aktivieren. Dazu sollte es genügen, die Kommentarzeichen vor dem bereits standardmäßig vorhandenen Dienst zu entfernen. Zusätzlich muss eine zusätzliche Zeile eingefügt werden, die es uns erlaubt, über Submission eingereichte Mails (authentifizierte Nutzer) von denen über Port 25 eingehenden (i.d.R. andere Mailserver) zu unterscheiden. Damit werden dann lediglich die Daten unserer Clients und nicht solche von anderen Mailservern angepasst.

Das Setup in master.cf für submission sollte dann so aussehen:

submission inet n       –       –       –       –       smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING
-o cleanup_service_name=subcleanup

Die letzte Zeile definiert “subcleanup” als zu benutzenden Namen für den cleanup-Dienst, wenn Mails über Port 587 eingehen. Dieser Dienst muss nun ebenfalls in der master.cf definiert werden:

subcleanup unix n – – – 0 cleanup
-o header_checks=pcre:/etc/postfix/submission_header_checks

Dieser subcleanup-Dienst beinhaltet nun gegenüber dem regulären cleanup-Dienst einen Verweis auf die header_checks-Datei /etc/postfix/submission_header_checks. Diese Datei kann eine Reihe von regulären Ausdrücken enthalten, die die Header-Einträge bearbeiten.

Als Beispiel hier zunächst, wie bei mir vorher der Mailheader aussah, der von meiner Postfix-Installation hinzugefügt wurde:

Received: from [10.10.1.109] (e182201243.adsl.alicedsl.de [83.2.1.243])
(Authenticated sender: blahblub@meinedomain.com)
by mail.meinedomain.com (Postfix) with ESMTPSA id 17415808C9
for <recipient@gmx.net>; Sun, 16 Dec 2012 17:04:11 +0100 (CET)

(Die Daten habe ich leicht verschleiert…)

Damit das so aussieht, müssen zwei Optionen in der main.cf von Postfix gesetzt sein:

smtpd_sasl_authenticated_header = yes
smtpd_tls_received_header = no

Der Parameter smtpd_sasl_authenticated_header-Parameter fügt die Information “Authenticated sender” oben hinzu. Der Parameter smtpd_tls_received_header würde, wenn aktiviert, zusätzliche Informationen über die TLS-Parameter hinzufügen. Für die folgenden Schritte ist der Parameter deaktiviert – der folgende reguläre Ausdruck passt sonst nicht.

Über den regulären Ausdruck soll nun nicht einfach die entsprechende Header-Zeile entfernt werden, da dies eventuelle Spamfilter anschlagen lassen könnte und zudem nicht RFC-konform ist. Stattdessen soll die tatsächliche IP-Adresse durch eine anonymisierte ersetzt werden:

/^Received: from [.*?] ([-.[:alnum:]]* [.*?])(s+)(Authenticated sender: ([[:alnum:]]+@[.[:alnum:]]+))(s+)by mail.meinedomain.com (Postfix) with (E?SMTPS?A?) id ([A-Fd]+)(s+)(.*)?/
REPLACE Received: from [127.0.0.1] (localhost [127.0.0.1])${1}(Authenticated sender: authenticated)${3}by mail.meinedomain.com (Postfix) with ${4} id ${5}${6}${7}

Der erste Teil des regulären Ausdrucks – bis vor REPLACE – erkennt nun die oben angegebene Header-Zeile. Der zweite Teil – nach REPLACE – gibt den Ersatztext aus. Teilweise greife ich auf die erkannten Werte aus dem ursprünglichen Header wieder zu (Erkennung durch Nutzung von “()” im ersten Teil, Zugriff durch ${n} im REPLACE-Teil). So kann bei Bedarf durch Anpassung auch die ursprüngliche IP-Adresse oder der authentifizierte Benutzer wieder eingesetzt werden. Insbesondere greife ich die Zeilenumbrüche aus dem Quell-Header ab, damit die Ersetzung genauso formatiert wird wie das Original.

Die geänderten Header sehen nun so aus:

Received: from [127.0.0.1] (localhost [127.0.0.1])
(Authenticated sender: authenticated)
by mail.meinedomain.com (Postfix) with ESMTPSA id 809F7818C9
for <recipient@gmx.net>; Sun, 16 Dec 2012 17:26:58 +0100 (CET)

Standardmäßig sollte in den Mail-Logs nun ein Eintrag a la “replace: header” erscheinen. Ebenfalls wirft Postfix dort Fehlermeldungen aus, wenn etwas nicht klappen sollte.