DKIM für weitere Domains einrichten

vom

Ich habe mein Mail-Server mit iRedMail installiert. Dies legt bei der Installation für die Hauptdomain eine DKIM-Signatur an. Fügt man nun aber neue Domains hinzu, werde für diese keine DKIM-Signaturen angelegt. Es gibt leider auch keine Möglichkeit in der Admin-Oberfläche DKIM-Signaturen einzurichten.

Folgende Schritte sind durchzuführen um DKIM-Signaturen anzulegen:

Zuerst erzeugen wir einen privaten Schlüssel für die Domain und geben diesen die entsprechenden Rechte:

cd /var/lib/dkim/
sudo amavisd-new genrsa new_domain.de.pem
sudo chown amavis.amavis new_domain.de.pem
sudo chmod 0644 new_domain.de.pem

Jetzt ergänzen wir die amavis Konfiguration um den erzeugen Schlüssel:

vim /etc/amavis/conf.d/50-user

Hier suchen wir nach dem Eintrag für die Hauptdomain und fügen unsere neue Domain in der Zeile darunter hinzu:

dkim_key("new_domain.de", "dkim", "/var/lib/dkim/new_domain.de.pem");

Zuletzt starten wir den amavisd Service neu:

sudo service amavis restart

Nun muss die neue DKIM-Signatur nur noch der Domain hinzugefügt werden. Dafür benötigen wir den öffentlichen Schlüssel. Diesen erhalten wir mit showkeys:

sudo amavisd-new showkeys new_domain.de

Ich gehe davon aus, dass bekannt ist wie Ihr diesen Schlüssel hinzufügt.

Trojaner Locky

vom

Der Trojaner Locky, sowie die neue “BKA Warnungsmail” zeigt, wie wichtig es ist sich, auch als 0/8/15-User, etwas mehr mit dem Computer sowie dem Internet auseinanderzusetzen. Locky zum Beispiel wäre gar kein Problem, wenn Bilder, Dokumente und Co. Richtig gebackupt werden. Würde Locky dann den Rechner infizieren und die Festplatte verschlüsseln, würde man die infizierten Systeme formatieren, das Betriebssystem neu installieren und hinterher die Daten aus dem Back-up wiederherstellen. Locky wäre sogar noch weniger ein Problem, wenn man nicht jeden Anhang aus E-Mails öffnet. Wenn man zum Beispiel eine Rechnung bekommt, über etwas Bestelltes bei Amazon und Co., man da aber nix bestellt hat, sollte man dieser E-Mail skeptisch gegenüberstehen. Um den Vorfall zu klären, geht man am besten direkt die Seite des Anbieters und nutzt dafür nicht einen Link aus der E-Mail, und prüft den Fall dort. Ist man sich dann sicher, dass die E-Mail nicht echt ist, sollte diese an den Anbieter weitergeleitet werden damit dieser andere Kunden über die gefälschte E-Mail informieren kann. An der BKA Warnungsmail sieht man wie unbedacht Anhänge geöffnet werden. Bei dieser E-Mail kann es sich nur um ein Virus handeln. Woher soll auch das BKA die E-Mail-Adressen alle Bundesbürger haben bzw. die der Infizierten? Würde es ein Tool zum Entfernen von Locky geben, so würde dies über die Presseabteilung veröffentlicht werden und somit in den Nachrichten landen und nicht per E-Mail an alle rausgehen. Zudem wäre auch der BSI und nicht das BKA dafür zuständig.

Leute… seid nicht so naiv im Internet. Glaubt keinem E-Mail-Anhang

RaspberryPi als Server

vom

Meine Raspberry Pis laufen mit Raspbian einer für ARM optimierten Linux Distribution dessen Basis ein Debian ist. Für die Installation von Diensten und zur weiteren Wartung verbinde ich mich den rPis nur per SSH, was ich völlig ausreicht. Da Raspbian mit einer vorinstallieren grafischen Oberfläche installiert wird kann man diese entfernen und damit kostbare Ressourcen freigeben.

Dafür entfernen wir alle X11 relevanten Pakete. Falls die Konfigurationsdateien erhalten bleiben sollen, nutzt “remove” statt “purge” Mit dem Parameter -y wird die aktion ohne weitere Abfrage direkt ausgeführt.

apt-get purge -y gpicview xarchiver xpdf galculator scratch dillo midori netsurf-gtk omxplayer alsa-base alsa-utils penguinspuzzle python-pygame lxde-core lxde-common lxde-icon-theme lxinput lxmenu-data lxpolkit lxrandr lxsession lxsession-edit lxshortcut lxtask lxterminal lxappearance lightdm lightdm-gtk-greeter openbox ttf-dejavu-core fontconfig fontconfig-config fonts-freefont-ttf wpagui x11-common dbus-x11 desktop-base desktop-file-utils hicolor-icon-theme leafpad xdg-utils xauth gnome-themes-standard gtk2-engines raspberrypi-artwork wolfram-engine

Nach dem Aufräumen müssen wir noch “dpkg” bereinigen.

dpkg --configure -a

Fertig! Damit ist der Raspberry Pi von allen befreit, was eine Desktop Oberfläche erzeugt ober benutzt und kann Server sein.

twitter_ebooks-Bot

vom

Ich habe nun ein Twitter-Bot. Wozu? Na, weil ich es kann! ;-)

Es handelt sich hierbei um ein twitter_ebooks-Bot. Ich könnte euch hier jetzt aufwendig erklären wie ich den Bot erstellt habe. Aber dazu habe ich keine Lust. Wäre auch schwachsinnig. Es gibt dafür schon Anleitungen und wozu das Rad neu erfinden? Auf der GitHub Seite des Entwicklers ist z.B. eine Anleitung. Falls ihr eine detailreichere Anleitung benötigt so könnt Ihr die von @autoritaetsprbl benutzen (link).

Es ist lustig zu sehen, was der Bot - eigenständig - aus dem eigenen Twitter Archive so zaubert. Lustig sind auch die Antworten, die der Bot auf Mentions und DM’s schreibt. Manchmal machen die Antworten auch sinn ;-)

Hier mal ein paar nette Tweets vom Bot:

Mein Bot nutzt auch den Hamburger ÖPNV und sucht sich Alternativen, wenn er zu lange warten muss :-P

Twitter Bot und die Hashtag Problematik

vom

Beim Nutzen des Bots, fiel mir auf, dass dieser auch Hashtags benutzt. Ist ja auch klar, denn der Bot erstellt neue Tweets aus Wörtern von alten Tweets. Und da in diesen auch Hashtags verwendet worden sind, nutzt der Bot auch diese. Das ist aber… bescheiden. Denn so werden unnötig Tweets auf Hashtags erzeugt und das muss nicht sein. Besonders dann, wenn es sich um wichtige Hashtags handeln. Leider hat der von mir verwendete Bot selber keine Einstellungsmöglichkeit um die Nutzung von Hashtags zu untersagen. Also muss man selber ran.

Dafür gibt es zwei möglichkeiten:

  • Methode eins: Man entfernt, über Suchen & Ersetzen, alle in der Archive.csv Datei vorhandene “#” und liest diese dann erneut ein.
  • Methode zwei (die schönere Methode): Man lässt den Bot solange neue Tweets erstellen bis keine ‘#’ mehr vorkommt. Erst dann darf er diesen Twittern.

Natürlich habe ich mit für Methode zwei entschieben. Und so habe ich dies Umgesetzt: Die Tweets werden in der bots.rb erzeugt. Und dort habe ich auch die ganzen Änderungen hinzugefügt. Zuerst habe ich eine Funktion geschrieben, welche prüft ob in einem Text eine “#” vorkommt. Ganz Simpel:

def checkTweet(tweetText)
  if not tweetText =~ /#/
    return true
  end
  return false
end

Damit ist auch schon die halbe Arbeit getan. Nun muss nur noch an den stellen, wo ein Tweet erzeugt wird, eine Schleife drum herum gebaut werden, welche so lange ein neuen Tweet erstellt bis die Funktion ein true zurück gibt.

genTweet = true
while genTweet do
  tweetText = model.make_statement
  if checkTweet(tweetText)
    genTweet = false
  end
end
	  
tweet(tweetText)

Fertig. Simpel oder? Die fertige bots.rb findet Ihr hier.

Ihr könnt natürlich die Funktion erweitern und so dem Bot verbieten bestimmte Zeichen oder Wörter zu benutzen.