Kategorie-Archiv: security

Windows – Linux

PPA key Importskript reloaded

[Update]Da Launchpad die Art geändert hat wie die OpenPGP-Keys auf der jeweiligen PPA-Seite erscheinen, hier ein Update des Skriptes[/Update]

So schnell kanns gehen, gestern noch aktuell, heute schon wieder komplett veraltet, naja fast.

Gestern gabs ja das Skript zum Import der PPA-Keys, ihr erinnert euch...

In den unglaublich zahlreichen Kommentaren ;-) kam die Idee auf, das ganze so umzugestalten das einfach automatisch alle Keys der in der sources.list aufgeführten PPAs heruntergeladen werden.

Et Voila:

Einmal als Paste

Und einmal zum Download

Nach dem Download die Datei ausführbar machen
chmod +x import-all-ppa-keys
und ausführen
import-all-ppa-keys [pfad zur sources.list]

zum Beispiel:

import-all-ppa-keys /etc/apt/sources.list.d/eure.sources.list

Beim ausführen werden alle OpenPGP Keys aus den Seiten extrahiert und ins lokale “apt-System” importiert.

Einen weiteren Vorteil hat das ganze auch noch. Ich beginne mich langsam mit sed anzufreunden.

Skript zum Import von Launchpad PPA OpenPGP Keys

[Update]Hier gibts eine etwas verbesserte Version des Skriptes, das automatisch alle Keys für die in der sources.list vorhandenen PPAs importiert[/Update]

In der neuesten Version unterstützt das Launchpad PPA System auch endlich das signieren der PPAs. Allerdings ist das Hinzufügen der Keys in das lokale System durchaus als Quälerei zu bezeichnen (hier ist der Prozess beschrieben).

Darum hier ein kleines Skript, welches das ganze ein wenig vereinfachen sollte:

#!/bin/bash
# Script for retrieving and adding
# Launchpad PPA OpenPGP keys to the local system.

if [ "$1" != "" ]; then
string=`curl -s $1 | grep 'OpenPGP key' | sed -e 's/.*code>\(.*\)<\/code.*/\1/'`
echo "$string"

gpg --no-verbose --no-default-keyring --keyring /tmp/tmp.keyring --keyserver keyserver.ubuntu.com --recv $string&& gpg --no-default-keyring --keyring /tmp/tmp.keyring --export --armor $string | sudo apt-key add - && rm /tmp/tmp.keyring
if [ $? = 0 ]; then
echo ""
echo "Key successfully imported"
echo ""
exit 0
elif [ $? = 1 ]; then
echo ""
echo "An error occured, please check the PPA URL"
echo ""
fi
else
echo "Please use the right syntax:"
echo "import-ppa-key [PPA URL]"
echo "PPA URL looks like this: https://edge.launchpad.net/~user/+archive/ppa"
exit 1
fi

Das ganze gibts auch nochmal hier im noPaste-Service: http://paste.pocoo.org/show/102735/
Oder hier direkt als Datei zum herunterladen: http://zeroathome.de/files/import-ppa-key

Wie immer, nicht schön, aber es funktioniert ;-)

Nach dem Download die Datei ausführbar machen
chmod +x import-ppa-key
und ausführen
import-ppa-key [PPA URL]
der Parameter [PPA-URL] sollte folgendermaßen aussehen:

https://edge.launchpad.net/~user/+archive/ppa

zum Beispiel:

import-ppa-key https://edge.launchpad.net/~transmissionbt/+archive/ppa

Beim ausführen wird der OpenPGP Key aus der Seite extrahiert und ins lokale "apt-System" eingefügt.

Spam- und Virenfilter für den Mailserver mit Spamassassin und ClamAV

Mailboxes

Nachdem wir ja letztes Mal die Grundkonfiguration des Mailservers abgeschlossen haben, gibt es heute zwei Extras, die nicht fehlen sollten. Und zwar Spam- und Virusfilter. Ersteres wird bei uns Spamassassin erledigen, die Viren überlassen wir dem freien Virenscanner ClamAV.

Zur Tat. Erst natürlich die benötigte Software installieren:
sudo apt-get install spamassassin spamc clamav clamav-daemon mutt cpio arj zoo nomarch lzop cabextract pax unrar lha

Wie ihr seht werden auch einige Packer/Entpacker mit installiert, damit ClamAV auch zum Beispiel zip-Archive prüfen kann.

Spamassassin einrichten

Dazu bearbeiten wir die Datei '/etc/spamassassin/local.cf' wiefolgt:

rewrite_header Subject ***SPAM***
Wenn diese Zeile aktiv ist wird in jeder Spam-Mail '***SPAM***' am Ende der Betreffzeile angehängt.
Diese Zeile bestimmt ab welchem Wert Mails als Spam markiert werden:
required_score 6.31
Ebenfalls de-kommentieren und den Wert entsprechend ändern. Falls zu viel Spam durchkommt sollte dieser Wert gegebenenfalls nach unten korrigiert werden, bzw. anders herum wenn zu viele reguläre Mails das Spam-Tag erhalten.
Diese beiden Zeilen sorgen dafür das der Bayessche Filter zum erkennen von Spam benutzt wird und dieser automatisch trainiert wird:
use_bayes 1
bayes_auto_learn 1

Um unseren Bayes-Filter nicht durch Header zu verwirren, die von anderen Mailservern (z.B. dem des Providers) oder unserem getmail angefügt wurden, werden diese durch die folgenden Zeilen ignoriert:
bayes_ignore_header X-Bogosity
bayes_ignore_header X-Spam-Flag
bayes_ignore_header X-Spam-Status
bayes_ignore_header X-getmail-filter-classifier

Danach muss Spamassassin noch aktiviert werden, dazu wird in der Datei '/etc/default/spamassassin', die Zeile "ENABLED=0" in "ENABLED=1" umgeschrieben.

Dann kann Spamassassin gestartet werden:
sudo /etc/init.d/spamassassin start

Jetzt müssen wir nur noch getmail sagen, das es Spamassassin die Mails zur Prüfung geben soll. Dazu fügen wir folgenden Absatz in die 'getmailrc' des jeweiligen Benutzers ein:
[filter-spamassassin]
type = Filter_external
path = /usr/bin/spamc
arguments = ("--max-size=100000", )

Beim nächsten Aufruf von getmail sollte dieses die empfangenen Mails durch Spamassassin checken lassen. Prüfen kann man das wiefolgt:
Mail an die entsprechende Mail-Adresse schicken, dann getmail als Benutzer (nicht als root) aufrufen:
getmail
Dann den Posteingang checken:
mutt -f /home/benutzer/mail
Dort sollte dann eine E-Mail liegen, die mit Enter aufgerufen wird. Im oberen Bereich sollten dann Zeilen ähnlich dieser gefunden werden:
X-Spam-Checker-Version: SpamAssassin 3.2.4 (2008-01-01) on server
Dann wurde alles richtig gemacht, ansonsten noch einmal alle Einstellungen checken, bzw das getmail-Log unter '/home/benutzer/.getmail/log'.

ClamAV einrichten

Da wir ClamAV oben schon mit installiert haben und er von sich aus schon eingerichtet ist, muss nur der folgende Abschnitt in die getmailrc des jeweiligen Benutzers eingefügt werden:
[filter-clamav]
type = Filter_classifier
path = /usr/bin/clamdscan
arguments = ("--stdout", "--no-summary", "-")
exitcodes_drop = (1, )

Damit werden Mails die Viren enthalten automatisch verworfen. Falls das nicht gewünscht ist und die Mails trotzdem zugestellt werden sollen (was ich nicht unbedingt empfehlen würde), muss die letzte Zeile so lauten:
exitcodes_keep = (0,1)

Damit wäre auch diese Einrichtung geschehen und es kann Spam- und Virenfrei ge-E-mailt werden.

Um die Mails in eurem Mail-Programm automatisch in den Spam-Ordner werfen zu lassen, müsst ihr dort einstellen das die Header von Spamassassin benutzt werden sollen. Wie das geht findet ihr in der Dokumentation eures jeweiligen Mailprogrammes.

Natürlich gilt auch hier wieder: Für etwaige Schäden, oder ähnliches was durch Benutzung dieses Tutorials geschehen sollte, übernehme ich keine Haftung. Das Setup habe ich selbst in Betrieb und es funktioniert. Schreibfehler sind aber natürlich nicht ausgeschlossen. Falls euch etwas auffällt bitte ich um eine kurze Nachricht, damit ich gegebenenfalls Korrekturen machen kann.

Backup, so wie es sein sollte…

...zeigt dieser Screencast vom gerade erst veröffentlichten OpenSolaris 2008.11:

via [Erwann Chénedé's Weblog]

DNS-Lücke – Update jetzt!

Heute dürfte wieder ein Traffic-reicher Tag auf den Datenautobahnen werden. Denn so langsam trudeln die Updates für eine Lücke im "Internet-Telefonbuch" DNS. DNS-Server sorgen dafür das Adressen wie www.zeroathome.de in die passende IP-Adresse zu übersetzen. Durch die Lücke in so ziemlich allen Implementierungen des DNS-Systems (betroffen sind Versionen aller großen Hersteller - ISC, Cisco, Microsoft), können solche Telefonbucheinträge verändert bzw. umgeleitet werden. Das läßt sich zum Beispiel für Phishing-Attacken nutzen, in dem von der Adresse einer Bank z.B. auf einen eigenen Server umgeleitet wird.

Ob der DNS über den ihr gerade surft betroffen ist kann auf der Seite des Entdeckers der Lücke überprüft werden. Das seit gestern veröffentlichte Update schließt die Lücke übrigens nicht komplett, sondern erschwert lediglich dessen Ausnutzung. Wirkliche Abhilfe wird wohl erst die Einführung von DNSSEC schaffen, was aber wohl nicht so schnell passieren wird. Bis dahin heißt es, nicht nur für Betreiber eines DNS-Servers, Augen und Ohren offen halten!

Mehr Infos unter folgenden Adressen:

https://www.adminlife.net/allgemein/kritische-dns-luecken-erzeugen-updatewelle/

http://www.heise.de/newsticker/Massives-DNS-Sicherheitsproblem-gefaehrdet-das-Internet--/meldung/110641/