Archiv

Archiv für die Kategorie ‘Open Source’

Hacker aussperren mit fail2ban

8. Oktober 2013 3 Kommentare

Seid einigen Tagen wird unser Server im Sekundentakt mit Verbindungsanforderungen von permanent wechselnden IP-Adressen traktiert. Botnet at work, würde ich mal sagen. Sieht dann im Log so aus:

Oct  8 20:04:14 h2145820 postfix/smtpd[20627]: lost connection after UNKNOWN from unknown[197.148.232.61]
Oct  8 20:04:14 h2145820 postfix/smtpd[20627]: disconnect from unknown[197.148.232.61]
Oct  8 20:04:14 h2145820 postfix/smtpd[21223]: connect from rrcs-24-106-99-253.central.biz.rr.com[24.106.99.253]
Oct  8 20:04:16 h2145820 postfix/smtpd[20569]: warning: hostname customer-187-141-162-172-sta.uninet-ide.com.mx does not resolve to address 187.141.162.172: No address associated with hostname
Oct  8 20:04:16 h2145820 postfix/smtpd[20569]: connect from unknown[187.141.162.172]
root@h2145820:# tail /var/log/syslog
Oct  8 20:04:14 h2145820 postfix/smtpd[20627]: lost connection after UNKNOWN from unknown[197.148.232.61]
Oct  8 20:04:14 h2145820 postfix/smtpd[20627]: disconnect from unknown[197.148.232.61]
Oct  8 20:04:14 h2145820 postfix/smtpd[21223]: connect from rrcs-24-106-99-253.central.biz.rr.com[24.106.99.253]
Oct  8 20:04:16 h2145820 postfix/smtpd[20569]: warning: hostname customer-187-141-162-172-sta.uninet-ide.com.mx does not resolve to address 187.141.162.172: No address associated with hostname
Oct  8 20:04:16 h2145820 postfix/smtpd[20569]: connect from unknown[187.141.162.172]
Oct  8 20:04:17 h2145820 postfix/smtpd[21354]: connect from 85-250-130-223.bb.netvision.net.il[85.250.130.223]
Oct  8 20:04:18 h2145820 postfix/smtpd[20582]: connect from 89-96-53-186.ip10.fastwebnet.it[89.96.53.186]
Oct  8 20:04:18 h2145820 postfix/smtpd[21357]: lost connection after UNKNOWN from unknown[202.126.212.192]
Oct  8 20:04:18 h2145820 postfix/smtpd[21357]: disconnect from unknown[202.126.212.192]
Oct  8 20:04:19 h2145820 postfix/smtpd[21352]: connect from 70-90-111-49-nh.hfc.comcastbusiness.net[70.90.111.49]


Nett, nicht wahr ?  Was tut man dann nun ? Es gibt ja auch noch einige andere Angriffspunkte, wie ssh, den Webserver etc.

Die wichtigsten Massnahmen sind natürlich

  1. ein aktuelles System : Update, Update, Update …
  2. sichere Passwörter

Darüber hinaus gibt es u.a. noch ein leicht einsetzbares Tool, mit dem dynamisch solche Einbruchsversuche erkannt werden und die IP-Adressen des Angreifers dann für einen festzulegenden Zeitraum gesperrt werden können.

fail2ban

Mehr…

KategorienOpen Source, Systemverwaltung Tags:

Alfresco auf einem Managed Server

31. Dezember 2012 5 Kommentare

Liebe Leser,

lange habe ich nichts mehr in meinem Blog veröffentlicht. Grund war schiere Arbeitsüberlastung. Per se ja nicht so schlecht, nicht wahr 😉 ?

Ich habe in den letzten Monaten neben Geschäftsführertätigkeiten, Marketing und  Vetrieb jede freie Minute in meine Projekte und Produkte investiert. Hier ein paar Beispiele:

Bevor das Jahr 2012 jetzt zu Ende geht, habe ich meine Webseiten „system worx- enablingIT“ in einem ersten Wurf überarbeitet und schreibe jetzt wenigstens eine kurzen technischen Artikel.

Heute geht es um die Installation von Alfresco auf einem Managed Server.

Mehr…

Extensions für Google Chrome / Chromium

Ich schreibe derzeit einige Extensions für den Google Browser und finde das ein ganzes Stück einfacher als bei Firefox. Bin zwar nach wie vor Firefox-Nutzer und schreibe auch Extensions für diesen Browser, aber hier gebührt Google wirklich Lob. Das ist sehr gut gelöst.

Hintergrund für meine Extension-Entwicklung ist das Projekt 2ndspring. Letztlich geht es um ein Entwicklung für das Tablet um ältere Mitbürger mit einer vereinfachten Bedienoberfläche den Einstieg in das Netz der Netze möglichst einfach und intuitiv zu gestalten. Dabei nutzen wir natürlich Browser-Technologie als Basis und haben uns hier für den Google-Browser entschieden. Diese Entscheidung ist maßgeblich bestimmt durch 2 Dinge

  • Chrome gibt es auch als App für das iPad
  • Wir werden Telefonie und Video-Conferencing im Browser anbieten und nutzen daher WebRTC („WebRTC is a free, open project that enables web browsers with Real-Time Communications (RTC) capabilities via simple Javascript APIs.“)

Ziel unserer Entwicklung ist eine Web-Applikation, die im Kioskmode betrieben wird. Der Anwender am Tablet sieht also eine Seite ohne Browser-Rahmen und Navigation im Vollbild-Modus. Damit er aber während des Surfens wieder zurück zu seinem Heimathafen, der 2ndspring-Startseite, findet, benötigt er als Overlay eine unaufdringliche, aber permanent verfügbare Navigation über jeder besuchten Seite. Dazu soll die 2ndspring-Extension sich bei jedem Seitenaufruf einklinken und diese Navi drüberlegen (inject html auf gut Neudeutsch).

Nun aber genug Hintergrund. Ich beschreibe jetzt einfach kurz die Komponenten einer solchen Extension und biete dann zum Schluss einen Link um sich den Source-Code herunterzuladen. Mehr…

Ein unternehmensinterner „Twitter“ : StatusNet

11. Dezember 2011 Keine Kommentare

Unser Unternehmen system worx GmbH&Co. KG hat seinen Sitz und seine Büros in München. Ich selbst wohne und arbeite im Rhein-Main-Gebiet. ein anderer lebt seid kurzem in Berlin. Dazu kommen noch eine Reihe von unabhängigen Partnern und Unternehmen, mit denen wir eng zusammen arbeiten. Diese sind über ganz Deutschland verteilt. Wie halten wir nun engen täglichen Kontakt miteinander und halten unsere Kommunikation aufrecht ?

Natürlich gibt es Mail und Skype und wir besitzen u.a. auch einen gemeinsamen Kalender und einen Dokumenten-Backbone. Telefon gibt es natürlich auch noch :-). Haben wir auch alles im Einsatz, aber so ganz zufrieden waren wir nicht. Telefon ist eine Eins-zu-eins-Angelegenheit.  2 Leute reden miteinander. Skype-Chats sind meist ähnlich angelegt. Außerdem muss man so einen Kanal auch aus Zeitgründen mal abschalten, da man sonst dauernd gestört wird. Auch Rundmails haben ihre Nachteile. Mal einfach einen „Seufzer“, einen Link oder ein Erfolgserlebnis an alle zu schicken, dafür taugt Mail nichts. Ist zu offiziell, aufdringlich und reisst die Partner aus der Konzentration. Alles nicht wirklich perfekt.

Dann kam uns die Idee Twitter zu nutzen. Für diese Zwecke perfekt, ABER nicht privat genug. Wir wollten unter uns bleiben und unsere Kommunikation verbessern, aber nicht alles was uns bewegt in die Welt posaunen :-).  Dann entdeckten wir einen solchen Service im Internet. Aber es war nicht so ganz klar, ob der auch kostenlos ist und was mit unseren Daten so passiert. Solche Befürchtungen sorgen auch nicht für ein sicheres Gefühl und das wirkt sich negativ auf die Kommunikation aus.

Glücklicherweise entdeckte ich dann ein geniales OpenSource-Projekt : StatusNet

Mehr…

vTiger und Cron-Jobs

25. Oktober 2011 2 Kommentare

Nach einer längeren Pause wegen hoher Arbeitslast, Kurzurlaub und Herzinfarkt melde ich mich zurück :-). Mein Blog lebt also weiter. Ja so wie ich wohl auch 🙂 …

Mein Thema heute sind die Cronjobs bei vTiger, mit denen ich gerade in einem meiner Kundenprojekte viel zu tun habe. In diesem Projekt werden die Daten einer wirklich komplexen Online-Registrierung zum Wechsel des Energieanbieters (realisiert mit Joomla und CommunityBuilder) automatisch in das CRM-System vTiger gepostet. In vTiger wird dann ein Großteil des gesamten Wechselprozesses inkl. der vollständigen Rechnungslegung abgebildet. Um dies weitgehend  vollautomatisch abzuwickeln, haben wir eine ganze Reihe von zeitlich abgestimmten Cron-Jobs gebaut. Das generelle Vorgehen zur Erzeugung eines solchen Jobs in vTiger möchte ich hier kurz skizzieren.

Definition : Cron-Job

Ein Programm/Ein Script auf dem Server, das in definierten Zeitabständen vom System automatisch gestartet wird.

Mehr…

Selenium: Test von Web-Applikationen

28. August 2011 6 Kommentare

Welcher Entwickler kennt das nicht : Endlose langweilige manuelle Tests, auch wenn man mal gerade nur ne Kleinigkeit geändert hat.

Testen ist ein Hauptbestandteil der Entwicklungsarbeit und nimmt eine Unmenge von Zeit in Anspruch.  Wenn man dann mal wochenlang gearbeitet hat und bis zum Erbrechen immer wieder die gleichen Tests durchgeführt hat, wird man leicht schlampig und die Qualität leidet darunter. Das darf nicht sein !

Oder ein anderes Szenario, das auch nicht ungewöhnlich und gerade bei einem aktuellen Projekt ein Thema ist:  Es gibt einen umfangreichen Registrationsprozeß für die Nutzer. Allgemeine Daten wie Adresse etc., technische Daten, sonstige Daten. In unserem Fall eine 5-stufige Abfolge von Formularen um die notwendigen Daten abzufragen. Auch hier muss man ständig testen ;-). Wer 50x diese Formulare ausgefüllt hat, wird dir die Füße küssen, wenn Du ihm eine Automatisierungsmöglichkeit bietest !

Für diese beiden Fälle (und eine Menge anderer, die im Laufe der Zeit auftauchen werden), gibt es eine sehr elegante und mächtige Lösung:

Das Open-Source Test-Framework Selenium IDE

Mehr…

Ein nützliches System-Plugin für Joomla : JB Library Plugin

19. Juni 2011 2 Kommentare

Heute eine kurze Vorstellung eines System-Plugins, das ich auf nahezu allen Joomla-Websites installiere :

JB Library Plugin

Was tut das Biest und warum empfehle ich es ?

Mehr…

Kochrezept: Installation Alfresco mit war-Files auf existierendem Tomcat6

Und nochmals ein Alfresco-Artikel 😉 …

Die neueste Version Alfresco Community 3.4d kann man sich in verschiedenen Geschmacksrichtungen runterladen und installieren: als Windows- oder Linux-Installer, oder als WAR-Files.

Dabei hat der Installer einen großen Nachteil : er installiert auch Tomcat und sogar mySQL. Das bedeudet, dass man mit hoher Wahrscheinlichkeit in Portkonflikte rennt, wenn man mySQL und/oder Tomcat bereits installiert hat. Auf unserem gemieteten Strato-Server war das Ding jedenfalls nicht zu gebrauchen. Da man nicht weiß, was dieser sog. Wizard treibt, steht man bei Fehlermeldungen auch etwas hilflos da. Ich habe nach kurzer Zeit den Installer in die Tonne getreten und Alfresco per War-Files auf einem laufenden Tomcat6 installiert. Die notwendigen Infos kann man verstreut finden, aber nachstehend das simple Kochrezept. Ich beschränke mich hier auf die Linux-Variante (openSUSE und Ubuntu) und gehe von einer ordnungsgemäßen und lauffähigen Tomcat-Installation mit Standardports (8080 bzw 8443) aus. Eine Tomcat-Installation hat man schnell mittels der Linux-Paketverwaltung oder auch einem Windows-Installer. Geht in der Regel problemlos.

1. Struktur von Tomcat nach der Installation

Mehr…

PDFs bearbeiten mit Open Office Draw

9. April 2011 2 Kommentare

Manchmal ist es notwendig kleiner Änderungen in PDF-Dateien durchzuführen. Ohne Anspruch auf Vollständigkeit können solche Gründe sein:

  • kleine Tipfehler beseitigen, wenn das Original-Dokument, aus dem das pdf erzeugt wurde,  gerade nicht greifbar ist
  • Anmerkungen zufügen
  • Textstellen löschen

Diese Änderungsmöglichkeiten können natürlich auch missbraucht werden, aber das kann eine Gabel auch ;-). Trotzdem ist sie zum Essen zweifelsohne nützlich 😉

Übrigens ist die Änderungsmöglichkeit von PDF-Dateien der Grund diese Dokumente bei geschäftsrelevanten Inhalten zu signieren. Eine sehr schöne FAQ zu diesem Thema habe ich hier gefunden: http://www.secardeo.de/wissen/pdf-faq.html

Nun aber zum eigentlichen Thema…

Mehr…

Eigene Firefox-Erweiterung für automatischen Update signieren

Ich habe uns bei system worx GmbH&Co. KG vor geraumer Zeit eine eigene Firefox-Extension gebastelt, um meinen Kollegen und unseren Partnern einen schnellen Zugriff auf wichtige Links und unsere webgestützen Tools und Prozesse zu geben.

Sieht dann in etwa so aus:

system work Firefox Toolbar

Meine Kollegen verlassen sich voll auf diese Toolbar und nutzen sie permanent für ihre tägliche Arbeit. Naturgemäß ändert sich des öfteren etwas am Inhalt dieser Extension. Es kommen neue Links dazu, alte fallen weg oder ändern sich. Man entwickelt sich ja permanent weiter, nicht wahr 😉 ?

Deshalb benötigen wir den automatischen Update-Mechanismus für Firefox-Addons, damit ich diese Extension zentral pflegen kann und meine Kollegen automatisch die dabei geänderten Versionen bekommen.

In diesem Artikel werde ich jetzt, auch als Notizzettel für mich ;-), die notwendigen Schritte aufzeigen, damit dieser Update-Mechanismus problemlos funktioniert.

Mehr…