IT

rcsieve

Sieve mit Webmin unter Debian Squeeze

0

Eine Webmin-Installation, sofern sie über das install.sh Script installiert wurde, kommt schon mit einigen Filter-Möglichkeiten daher. Spamassassin ist dabei, clamAV gegen Viren ebenfalls und Procmail als Serverseitiger Filter. Gerade Procmail ist sehr mächtig. Aber was, wenn man jedem User des Servers eine Möglichkeit geben möchte, selbst Filter zu definieren? Klar, jeder bessere Mail-Client kann Filter erstellen. Aber die funktionieren eben nur Clientseitig. Nutzt man mehrere Clients (Arbeit, Zuhause, Handy usw.)  wird es schwer, alle Filter synchron zu halten. Ausserdem möchte man ja mal vielleicht einen Abwesenheitsassistenten einrichten. Also einen Filter, der reagiert wenn man eben nicht die Möglichkeit hat den Client anzuschmeißen. Hier kommt Sieve ins Spiel. Sieve ist im Grunde nur eine Definition einer Script-Sprache, mit der Regeln zum filtern erstellt werden können. Allerdings bringt Dovecot ein Sieve-Plugin mit. Und Dovecot ist bei einer Standard Webmin Installation für die Auslieferung über IMAP/POP3 zuständig. Was spricht also dagegen Dovecot als LDA zu verwenden und damit das Sieve-Plugin zu nutzen? Nichts. Eben.

Die Arbeitskette sieht wie folgt aus: Postfix -> Spamassassin/ClamAV -> Procmail -> MailDir

Hinter Procmail schieben wir Dovecot Deliver ein. Bitte beachten, das die Anleitung auf Dovecot 1.2.x und Webmin mit Virtualmin 3.84 basiert.

/etc/dovecot/dovecot.conf
protocols = imap imaps pop3 pop3s managesieve
protocol lda {
 # Address to use when sending rejection mails.
 postmaster_address = postmaster@domain.de
 mail_plugin_dir = /usr/lib/dovecot/modules/lda 
 mail_plugins = sieve
}
plugin {
 sieve_global_path = /etc/globalsieverc
 sieve=~/.dovecot.sieve
 sieve_storage=~/sieve
 sieve_dir=~/sieve
}

Als Protokoll wird managesieve hinzugefügt. Darüber können später Clients auf die Regeln zugreifen, um sie zu ändern. Im Protokoll lda wird das Plugin sieve aktiviert. Unter plugin wird das Plugin konfiguriert. Dazu wird das User-spezifische Sieve-File definiert, das im Home Directory des Users liegt. Auch die globale Sieve-Datei /etc/globalsieverc wird angegeben. Sie kommt zum tragen, wenn der User keine eigenen Filter definiert hat. Legen Sie dazu die Datei /etc/globalsieverc an.

/etc/globalsieverc
require ["fileinto"];
# Move spam to spam folder
if header :contains "X-Spam-Flag" ["YES"] {
  fileinto "spam";
  stop;
}

Um Procmail davon abzuhalten die Mails selbst in die Postfächer zu legen, und das Ganze Dovecot zu überlassen, wird die Datei /etc/procmailrc angepasst.

/etc/procmailrc
LOGFILE=/var/log/procmail.log
TRAP=/etc/webmin/virtual-server/procmail-logger.pl
:0wi
VIRTUALMIN=|/etc/webmin/virtual-server/lookup-domain.pl $LOGNAME
DELIVER="/usr/lib/dovecot/deliver"
EXITCODE=$?
:0
* ?/usr/bin/test "$EXITCODE" = "73"
/dev/null
:0
* ?/usr/bin/test "$VIRTUALMIN" != ""
{
INCLUDERC=/etc/webmin/virtual-server/procmail/$VIRTUALMIN
}
DEFAULT=$HOME/Maildir/
ORGMAIL=$HOME/Maildir/
DROPPRIVS=yes
:0 w
| $DELIVER

Nach einem Neustart von Dovecot sollte ein filtern möglich sein. Sieve Plugins gibt es unter anderem für Thunderbird und den Webmailer Roundcube.

img_1267

SSH Logins melden

2

Nichts ist ärgerlicher, als wenn aus irgendeinem Grund der Login via SSH auf einem Server kompromittiert wurde. Meldet sich ein Fremder an, kann er einiges auf dem System anstellen. Natürlich sollte es root verboten werden, sich via SSH anzumelden. Dennoch will man auch keinen Fremden im normalen Userspace. Sollte es doch einmal passieren, will man es wenigstens so schnell wie möglich wissen. Wie wäre es also mit einer Alarm-Meldung auf das Handy? Mit dem iPhone, einer App und einem Perl-Script ist das möglich.

Als erstes holt man sich die App “Prowl” aus dem AppStore. Diese kostet zwar stolze 2,39€, aber das sollte einem die Sicherheit des Servers schon wert sein. Als nächstes braucht man einen Account bei http://prowl.weks.net. Ist dieser angelegt, kann man im Menu unter Settings einen API-Key generieren. Diesen kopiert man sich, denn der wird gleich gebraucht. Um Nachrichten an Prowl zu schicken benötigen wir noch ein kleines Perl-Script. Dieses findet man hier. Dieses speichert man unter /usr/local/share ab. Ändere mit chmod +x prowl.pl die Berechtigung.  Jetzt muss nur noch die Datei .bashrc im Home-Verzeichnis angepasst werden. Fügt einfach die folgende Zeile hinzu:

/usr/local/share/prowl.pl -apikey=APIKEY -application=Shell -event=Login
-notification="SSH Login auf SERVERNAME" -priority=2

Natürlich muss APIKEY durch den 40stelligen API-Key ersetzt werden, den wir auf der Webseite generiert haben. Auch SERVERNAME sollt entsprechend angepasst werden. Speichert die Datei ab und meldet Euch von System ab. Bei jedem Login wird nun eine Nachricht gesendet, die als Push-Notification auf dem iPhone aufploppt.

dropbox

Neue Dropbox Version für das iPhone

0

Der File-Hosting-Dienst Dropbox hat seine iPhone Anwendung überarbeitet. Up- und Downloads laufen jetzt im Hintergrund ab, Ordner können erstellt werden und das Interface wurde überarbeitet. Dropbox ist einer der wenigen Pflich-Downloads. Damit ist es möglich, Dateien auf einfachste Weise auf allen Computern synchron zu halten und notfalls sogar über ein Webinterface verfügbar zu machen. Ordner können mit anderen Usern zusammen verwendet werden. Unter Windows, Mac und Linux hängt sich Dropbox in das Filesystem ein und verhält sich wie ein normaler Ordner.

http://www.dropbox.com/referrals/NTkwNDIxNjI5

Go to Top