RSS
 

Archive for the ‘Software’ Category

insserv: warning: script ‘K20svnserve’ missing LSB tags and overrides

15 Sep

Auf diesen Fehler bin ich gestoßen, als ich ein Debian Lenny auf Squeeze ziehen wollte. Es handelt sich hierbei offensichtlich um ein System das im Bootprozess prüft, ob alle Abhängigkeiten des zu startenden Scripts vorhanden sind. An sich also keine große Sache.

Ein Tipp eines Kollegen hat mich auf folgenden Post gebracht:

Folgender Code muss also einfach im Header der Datei untergebracht werden:

### BEGIN INIT INFO
# Provides: SCRIPTNAME
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO

nun nur noch SCRIPTNAME mit dem tatsächlichen Dateinamen ersetzen. Bei mir sieht der Header im Beispiel von SVN also so aus:

#!/bin/sh -e
### BEGIN INIT INFO
# Provides: svnserve
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO#
# svnserve - brings up the svn server so anonymous users
# can access svn
#

Danach ein lustiges

dpkg-reconfigure sysv-rc

Und schon hat man das neue Bootsystem aktiviert.

 
No Comments

Posted in Software

 

2 Klicks für mehr Datenschutz | c’t

07 Sep

Die Jungs vom Heise Online-Magazin haben sich die Mühe gemacht und eine Datenschutz-optimierte Variante zur Integration von Google+, Twitter und Facebook auf Webseiten erstellt. Im Artikel 2 Klicks für mehr Datenschutz | c’t wird beschrieben wie es genau funktioniert.

Der Gag dabei ist, dass man zuerst den Button selbst aktivieren muss bevor er aktiv wird. Dann bekommt man einen Hinweis, dass seine Daten im Ausland gespeichert werden und erst dann kann man den Button selbst betätigen.

Der Hintergrund ist natürlich klar. Auf jeder beliebigen Webseite gibt es heute einen Facebook- oder Google+-Button. Und die Benutzer nutzen diese auch teils exzessiv ohne sich Gedanken darüber zu machen, was im Hintergrund eigentlich passiert. Kaum jemandem ist bewusst, dass bei einem harmlosen Klick auf einen Like-Button sofort bei Facebook gespeichert wird, dass der Benutzer diese Seite besucht und dass er auch am Kontext dieser Seite interessiert ist. Eigentlich sogar noch schlimmer… ist man permanent bei Facebook eingeloggt, reicht sogar schon der Besuch auf der Seite mit dem Button damit Facebook dies mitbekommt. So lassen sich natürlich wunderbar detaillierte Bewegungsprofile im Internet erzeugen. Daraus ergeben sich dann im nächsten Schritt automatisierte Zuordnung von Interessengebieten und schon bekommt man angepasste Werbung.

Wie man auf diesen Seiten sehen kann, gibt es auch schon ein Plugin für WordPress mit dem man dieses System einfach integrieren kann. Es funktioniert zwar noch nicht 100%ig, ist aber jetzt schon besser als alle anderen Varianten.

 
 

Squirrelmail mit Courier und extrem lange Ladezeiten

07 Sep

Seit einiger Zeit stellte ich fest, dass er insbesondere direkt nach dem Login bei Squirrelmail sehr lange dauert, bis die Inbox-Ansicht geladen hat. Bei Recherchen im Internet (Ich kenn die Jungs von Goggl ;) ) konnte ich sogar Fälle finden bei denen es zum Timeout kam und die Seite gar nicht geladen wurde.

Wie immer – großes Problem, einfache Lösung:

Courier selbst will dem Mailclient ja ein bisschen Arbeit abnehmen und scheint die Inhalte der Mailbox vorab zu sortieren. Zur Geburt jeder Inbox ist das ja kein Problem, da es nicht viel zu sortieren gibt. Je mehr Mails allerdings gespeichert werden umso mehr muss der liebe Courier auch arbeiten.

Die Abhilfe:

Bearbeitet folgende Datei (Dateipfad aus Debian Lenny):

/etc/courier/imapd

Darin solltet ihr folgende Zeile finden:

IMAP_DISABLETHREADSORT=0

Nun ändert ihr den Wert dieser Variable von 0 auf 1 und startet den Courier neu mit

/etc/init.d/courier-imap restart

Ab sofort ist die einzige Instanz die sortiert das liebe Squirrelmail. Ob dies Auswirkung auf einen Mailclient ala Outlook & Co. hat, konnte ich bislang noch nicht feststellen. Wenn ihr was feststellt, freue ich mich über einen Kommentar diesbezüglich.

 
No Comments

Posted in Software

 

ssh ohne passwort – authorized_keys ist dein Freund

11 Aug

Es gibt verschiedene Möglichkeiten hier zum Ziel zu kommen. Ich werde nur eine davon beschreiben.

Ich habe mich für einen DSA-Key entschieden. Diesen erstellt man folgendermaßen:

$ ssh-keygen -t dsa

Damit ich nicht doch wieder was eintippen muss wenn ich mich auf dem anderen Host einloggen will, lasse ich die Passphrase leer.

Daraufhin haben wir jetzt folgende Dateien:
~/.ssh/id_dsa
~/.ssh/id_dsa.pub

Die *.pub-Datei muss nun auf den Zielserver kopiert und dort der Datei ~/.ssh/authorized_keys angehängt werden:

$ ssh-copy-id -i ~/.ssh/id_dsa.pub user@host

Jetzt einmal kurz testen obs geklappt hat:

$ ssh user@host

Eigentlich sollte jetzt keine Passwortabfrage mehr kommen.

 
No Comments

Posted in Software

 

ERROR iptables -n -L INPUT | grep -q fail2ban-ssh returned 100

06 Jul

Und noch ein Eintrag aus der Rubrik “Fehlermeldungen verstehen” ;)

Nachdem ich einen neuen VServer mit ISPConfig3 aufgesetzt habe, habe ich mir zum ersten Mal genauer das fail2ban Logfile angesehen. fail2ban ist ein Tool das die Frequenz von Zugriffen auf den Server registriert und automatisch über die systemeigene Firewall mit iptables einzelne IP-Adressen sperrt wenn diese zu häufig zugreifen wollen. An sich eine schöne Erleichterung für den Sysadmin.

Nun aber zur Fehlermeldung:

ERROR iptables -n -L INPUT | grep -q fail2ban-ssh returned 100

Heißt so viel wie “iptables funktioniert nicht”. Ein einfacher Test gibt Aufschluss über den Hintergrund. Einfach in der Kommandozeile mal folgendes eingeben:

modprobe ip_tables

Wenn dann sowas hier kommt

FATAL: Could not load /lib/modules/2.6.36.4-vs2.3.0.36.39-netcup/modules.dep: No such file or directory

bedeutet das, dass iptables nicht geladen wurde und somit auch nicht zur Verfügung steht.

Wie man in der Fehlermeldung sieht, steht besagter Server bei Netcup. Hier soll es angeblich eine Möglichkeit geben dennoch auf iptables zuzugreifen. Ich werde das mal recherchieren und bei Erfolg hier nachtragen. Ansonsten scheint es aber üblich zu sein, dass man keinen Zugriff auf iptables auf einem VServer bekommt.

Weitere Quellen sagen jedoch ohnehin aus, dass fail2ban nicht unbedingt das beste Stück Software ist und gerne auch die Serversicherheit ein wenig runter schraubt. Ich kann das nicht bestätigen und lasse diese Aussage somit einfach mal im Raum stehen, würde mich aber über fachliche Kommentare dazu sehr freuen.

Meine Lösung:
Bisher hab ich noch keine. Ich werde mir mal ein hübsches Script überlegen, was die Zugriffe überwacht und mich dann entsprechend per Mail informiert oder sowas in der Richtung. Auch hier bin ich für jegliche Lösungsvorschläge dankbar.

[EDIT]
In den FAQ von Netcup steht, dass man den Support kontaktieren soll wenn man iptables freigeschaltet haben möchte. Dies habe ich eben getan und warte nun gespannt auf Antwort. Wär natürlich ne feine Sache wenn das klappen würde.

[EDIT 2]
Da hatte ich wohl was falsch verstanden. iptables steht prinzipiell nicht zur Verfügung. Netcup arbeitet aber bereits an einer eigenen API für das vservercontrollpanel. Dadurch wird es möglich sein, fail2ban direkt auf diese API zugreifen zu lassen.
Ein Kollege von mir hat sich jedoch die Arbeit gemacht und für die Übergangszeit ein Script geschrieben mit dem das jetzt schon ohne API funktioniert. Das Script gibts hier:
http://blog.n-durch-x.de/2011/07/fail2ban-auf-netcup-vservern/
Funktioniert bislang tadellos auf meinem Server. Somit klappts dann auch mit fail2ban ;)

 
4 Comments

Posted in Software

 

warning: database /etc/aliases.db is older than source file /etc/aliases

06 Jul

Wer diesen Fehler in seinen Error-Logs bekommt hat nicht wirklich ein Problem. Der Administrator des Servers oder irgendein Script haben die Datei /etc/aliases editiert. Damit die Änderungen aber systemweit übernommen werden, ist die Ausführung des folgenden Befehls von Nöten:

newaliases

Der Befehl gibt keine Rückmeldung wenn alles gut gelaufen ist. Und die Meldung sollte alsbald auch aus den Logfiles verschwunden sein.

 
No Comments

Posted in Software

 

Session und Cookies Domainübergreifend im Frameset im Internet Explorer – ja es geht!

08 Jun

Heute hatte ich mal wieder ein lustiges Problem mit dem allseits beliebten IE. Offensichtlich ist es schon seit einer Weile so, dass der IE ab der Standardsicherheitsstufe keine Cookies von sog. 3rd Parties mehr akzeptiert. Als 3rd Party gilt natürlich auch eine Seite, die von Domain abc.de in einem Frameset aufgerufen wird und unter der Domain xyz.de erreichbar ist. Dem Firefox ist das übrigens komplett wurscht. Er schreibt den Cookie ohnehin nur für die Domain xyz.de wenn er von dort aus gesetzt werden soll.

Nun gut – auf Anhieb scheint das Problem unlösbar. Man kann es drehen und wenden wie man will, der IE verweigert sich einfach. Ob Session oder direktes Setzen eines Cookies – man bleibt vor verschlossenen Türen.

Die Lösung dieses Problems ist tatsächlich denkbar einfach und stellt die ach so tolle Sicherheitsregel des IE gehörig in Frage:

Man schickt im Header der Seite, also vor Auslieferung des Contents und auch vor dem Setzen des ersten Cookies, einfach folgende Zeile mit:
P3P: CP="CAO PSA OUR

In PHP sähe das zum Beispiel so aus:

<?php
header('P3P: CP="CAO PSA OUR"');
?>

Und schon werden Cookies brav akzeptiert. Was hat das nun für einen Hintergrund?
Der IE erwartet die Einhaltung definierter Security Policies. Diese findet man hier:
http://www.w3c.org/TR/P3P/

Der sogenannte sog. P3P Standard (Platform for Privacy Preferences)

Was bedeuten die Angaben im Detail? Das ist schnell erklärt:
CAO: Die Webseite gewährt Zugang zu den eigenen Kontaktdaten
PSA: Erhobene Daten werden nicht mit einer natürlichen Person in Verbindung gebracht
OUR: Erhobene Daten werden nicht an Dritte weiter gegeben

Nun mag man vielleicht auf den Gedanken kommen “Verdammt, aber ich halte diese Angaben doch gar nicht ein…” – macht nix. Bisher gibt es keine Methode, diese Angaben auf ihre Richtigkeit zu überprüfen.
Das soll jetzt natürlich kein Aufruf zu illegalen Machenschaften sein. In meiner Nebenrolle als betrieblicher Datenschutzbeauftragter, lege ich natürlich höchsten Wert auf die Einhaltung solcher Regeln und die Beachtung des BDSG. Eine solche Maßnahme von den Internet Explorer Entwicklern scheint mir aber so dermaßen sinnlos wenn sie so leicht umgangen werden kann, dass ich im gleichen Zuge keinen Grund sehe, sich einfach drum herum zu mogeln.

 

 
1 Comment

Posted in Software

 

Mein iPhone Homescreen

27 Dez

So mal sehen, was hab ich denn da alles? Die Standard-Apps erkläre ich nicht extra und liste sie auch nicht auf.

WhatsApp

Ein cooler Messaging-Dienst. Spart mir einiges an SMS-Gebühren. Schickt die Nachrichten übers Netz. Man sieht, wenn der Empfänger die Nachricht empfangen und wann er sie gelesen hat. Man kann Bilder usw. verschicken und einiges mehr. WhatsApp wird auch für andere Betriebssysteme entwickelt. Die Chancen stehen also groß, dass man jemand im Bekanntenkreis findet der das auch hat.

Shazzam

Sollte jeder kennen und besitzen. Kostet nix und ist äußerst hilfreich wenn man wissen will, wie Titel und Interpret des Liedes lauten welches da gerade im Radio läuft. Funktioniert außerdem erstaunlich zuverlässig.

Navigon Select

Für Kunden von T-Mobile kostenlos. Ich brauchs nicht wirklich weil ich ein festes Navi im Auto hab. Das Navigon hat mir aber trotzdem schon oft den Arsch gerettet als ich mal zu Fuß unterwegs war. Für lau ein absolutes Muss.

Calory Guard 2

Wer mich kennt, weiß dass ich ein paar Kilo zu viel auf den Rippen habe. Calory Guard 2 hat mir dabei geholfen bislang vier dieser Kilos wieder loszuwerden. Ein simples Tool mit dem man über den Tag hinweg eingeben kann, welche Mahlzeiten man zu sich genommen hat. Das Gerät errechnet daraufhin automatisch wieviele Kalorien man noch zu sich nehmen darf. Ich habe bewusst meinen Tagesbedarf weit runter geschraubt und somit nehme ich zwangläufig ab.

GymGoal

Zwei mal in der Woche gehts ab ins Fitness-Studio (wenn nix dazwischen kommt). Da ich ein eher normales Gedächtnis habe und wir oft die Geräte durchwechseln, kann ich mir selten merken, wieviel Gewicht ich auf welchem Gerät zuletzt genommen hab. Dabei hilft mir GymGoal. Kostet zwar was (ich glaub irgendwas um die 3 Euro) aber dafür ist es auch sehr umfangreich. Ich nutze gar nicht alle Funktionen die es bietet. Besonders toll ist die Übersicht über die Muskelgruppen und die Auflistung welche Muskeln man vernachlässigt hat.

Sleep Cycle

Hat man schon oft gehört. Geräte die einen dann aufwecken, wenn es für den Körper am angenehmsten ist. Man legt das iPhone unter das Bettlaken und die Software zeichnet die Bewegungen auf. Wenig Bewegungen = tiefer Schlaf. Wenn ich also um 8 Uhr aufstehen möchte, beobachtet der Wecker ab 7:30 Uhr mein Schlafverhalten und wenn ich mich dem Wachzustand ausreichend angenähert habe (was übrigens mehrmals nachts passiert), werde ich sanft aufgeweckt. Mit intelligenter Schlummer-Funktion und frei wählbaren Weckliedern (auch aus dem iPod raus). Für 0,75 Euro durchaus empfehlenswert.

Den Ordner Alltag öffne ich im nächsten Post ;)

 
No Comments

Posted in Software

 

Apache-Sicherheit – SSLv2 deaktivieren und starke Verschlüsselung einsetzen

11 Nov

Ja ja, der liebe TÜV hat uns korrekterweise darauf aufmerksam gemacht, dass unsere Server unsichere Verschlüsselungsmethoden unterstützen und insbesondere SSLv2 deaktiviert werden muss. Absolut korrekt und Gott sei Dank auch sehr leicht zu bewerkstelligen.

Einmal bitte die /etc/apache2/httpd.conf editieren und folgende Zeilen einfügen:

SSLProtocol ALL -SSLv2
SSLCipherSuite HIGH:!SSLv2:!ADH:!aNULL:!eNULL:!NULL

Apache neu starten mit /etc/init.d/apache2 restart und schon sind wir sicher.

Zum Prüfen obs geklappt hat, gibt es diverse Shell-Scripts. Wer eines davon braucht – bitte einfach anmelden und nen Kommentar hinterlassen, dann schick ich das gerne zu.

Die Kontrolle durch mein mir vorliegendes Script war erfolgreich.

Vor der Umstellung:

Testing SSL2…
DES-CBC3-MD5 – 168 bits
RC2-CBC-MD5 – 128 bits
RC4-MD5 – 128 bits
DES-CBC-MD5 – 56 bits
EXP-RC2-CBC-MD5 – 40 bits
EXP-RC4-MD5 – 40 bits
Testing TLS1…
DHE-RSA-AES256-SHA – 256 bits
AES256-SHA – 256 bits
EDH-RSA-DES-CBC3-SHA – 168 bits
DES-CBC3-SHA – 168 bits
DHE-RSA-AES128-SHA – 128 bits
AES128-SHA – 128 bits
RC4-SHA – 128 bits
RC4-MD5 – 128 bits
EDH-RSA-DES-CBC-SHA – 56 bits
DES-CBC-SHA – 56 bits
EXP-EDH-RSA-DES-CBC-SHA – 40 bits
EXP-DES-CBC-SHA – 40 bits
EXP-RC2-CBC-MD5 – 40 bits
EXP-RC4-MD5 – 40 bits

Nach der Umstellung:

Testing SSL2…
Testing TLS1…
DHE-RSA-AES256-SHA – 256 bits
AES256-SHA – 256 bits
EDH-RSA-DES-CBC3-SHA – 168 bits
DES-CBC3-SHA – 168 bits
DHE-RSA-AES128-SHA – 128 bits
AES128-SHA – 128 bits

Alles also im grünen Bereich.

 
No Comments

Posted in Software

 

WordPress-Meldung: Das Verzeichnis “wp-content” konnte nicht gefunden werden

28 Okt

Ich habe vor kurzem mein WordPress auf einen neuen Server umgezogen. Dabei scheint es irgendwie zu einem Problem gekommen zu sein das dafür sorgte, dass meine Aktualisierung von Plugins nicht mehr funktioniert hat.

Nach langer Befragung der allwissenden Müllhalde (also dem Internet) habe ich mich selbst aufgemacht eine Lösung zu finden. Nach nur 10 Minuten habe ich diese auch gefunden.

Einfach im WordPress-Ordner die Datei “wp-config.php” editieren.

Direkt nach der Zeile define (‘WPLANG’, ‘de_DE’); habe ich dann die folgenden drei Zeilen eingefügt:

define('FTP_BASE', '/w7x.de/web/');
define('FTP_CONTENT_DIR', FTP_BASE . 'wp-content/');
define('FTP_PLUGIN_DIR', FTP_CONTENT_DIR . 'plugins/');

Davon ausgehend, wo mein FTP-Benutzer im Verzeichnisbaum einsteigt, habe ich den Pfad zum Document-Root in der Konstante FTP_BASE vervollständigt. Die anderen beiden Zeilen können so bleiben wie sie sind.

Bestimmt gibts auch eine noch einfachere Lösung aber für mich war das der schnellste Weg und meiner Meinung nach auch nicht unbedingt unsauber.

 
No Comments

Posted in Software