IPTables: IP Adressen bannen mit iptables

2011-01-26 - 6 Kommentare »

Stop Firewall © Bozworthington - Fotolia.com

Mit iptables kann man Regeln definieren die den Netzwerkzugriff für bestimmte IP Adressen erlauben oder verwehren. Definiert man die richtigen Regeln, kann man sein System vor unbefugten Zugriffen schützen und diese schon am Netzwerkinterface abweisen. Vor ein paar Tagen rief mich ein Kollege an dessen Server von einer bestimmten IP Adresse stark belastet wurde, die er gern bannen wollte. Wir redeten kurz darüber wie er dies in seiner Anwendung machen kann, bis ich ihn auf iptables hinwies, was die Sache sehr viel einfacher machte.

Sperrt man jemanden erst in seiner Anwendung (z.B. Webseite), hat dieser User schon längst eine Verbindung zum Server hergestellt und Resourcen belegt. Man sollte deshalb versuchen so früh wie möglich zu filtern und das ist bei einem einfachen Rootserver am Netzwerkinterface. Es gibt noch die Möglichkeit vor dem Server am Router oder einer vorgeschalteten Firewall zu filtern, aber dieser Weg steht nicht jedem zur Verfügung. Hier nun eine kurze Erklärung wie man mit Hilfe von iptables bestimmte IP Adressen bannen kann. Zugrunde liegt ein aktuelles Debian Lenny mit iptables v1.4.2.
Weiterlesen: IPTables: IP Adressen bannen mit iptables »

Percona kostenlose Webinar Aufzeichnungen

Die Firma Percona, die besser bekannt ist durch ihren MySQL Performance Blog, hat gestern eine Webinar Aufzeichnungen zum Thema Migration von MyISAM zu InnoDB kostenlos veröffentlicht. Das Thema interessiert mich schon eine Weile, aber bisher funktioniert alles mit MyISAM und so habe ich noch keinen Grund für einen Umstieg gesehen. Da Table Locking aber doch ganz schön nervt und man auch mal an die Zukunft denken muss, war dies ein schöner Einstieg in die Materie und es wurden einige Knackpunkte angesprochen auf die man achten sollte. Kann ich nur jedem der der englischen Sprache mächtig ist empfehlen.

Außerdem gibt es noch eine Einführung in Percona Server, XtraDB und Xtrabackup als Aufzeichnung, die ich auch recht interessant fand, da dort genau die Fragen beantwortet wurden die ich mir im Zusammenhang mit MySQL Server Forks immer gestellt habe. Sind die Daten kompatible? Wie aufwändig ist ein Umstieg? Kann man einfach wieder zurück? Was kostet es? (nichts und ist Open Source) Wie sieht es mit der Doku aus und natürlich was bringt es überhaupt? Interessant fand ich auch die Erklärung zu XtraBackup. In meiner Wahrnehmung war das immer etwas das nur Sinn macht, wenn man auch den Percona Server mit XtraDB benutzt, aber dem ist nicht so. Man kann das Tool auch für normale InnoDB oder MyISAM Tabellen benutzt.

Für die Webex Aufzeichnungen, braucht man den kostenlosen Webex Player von Cisco (Download Link gibt es beim runter laden der Aufzeichnungen). Ich für meinen Teil werde mir die angesprochenen Themen in nächster Zeit näher angucken und meine Erkenntnisse dann hier veröffentlichen.

IPv6 abschalten auf Debian Squeeze

2010-12-07 - 3 Kommentare »

Wer kein Interesse an IPv6 hat, kann es einfach abschalten. In Debian Squeeze hat sich der Ablauf zum deaktivieren von IPv6 verändert. Hier die Anleitung zum IPv6 abschalten in Debian Lenny. Als erstes muss man raus finden welche GRUB Version man installiert hat. Einfach "grub --version" eingeben. Wenn eine Ausgabe kommt, hat man die alte Version 1. Kommt keine Ausgabe hat man GRUB2.
Weiterlesen: IPv6 abschalten auf Debian Squeeze »

Linux sort, sortieren von Textfiles einfach gemacht

Mit sort kann man Textfiles und auch den Output von anderen Programmen sortieren. Eigentlich wollte ich dafür jetzt eine Anleitung schreiben, aber ich habe ein so hervorragendes Tutorial gefunden, das ich einfach nur darauf linken werde: Sort Files Like A Master With The Linux Sort Command (Bash)
Gut geschrieben und erklärt alle Funktionen die sort zu bieten hat! Besonders Augenmerk möchte ich auf den Tipp mit export LC_ALL=C richten. Das hat nicht nur das Resultat verbessert, sondern auch die Ausführungszeit ist dramatisch gesunken!

MySQL Netzwerk Traffic analysieren mit tcpdump und mk-query-digest

Vor ein paar Wochen wollte ich den Traffic eines MySQL Server analysieren, da er meiner Ansicht nach zu viel davon verursachte und ich raus finden wollte was dafür verantwortlich war. Zu Anfang hatte ich nicht wirklich einen Plan wie man vorgehen sollte, aber glücklicherweise habe ich mich dann an mk-query-digest erinnert. mk-query-digest kann man nicht nur zum analysieren von Slowlogs benutzten, sondern man kann auch den Output von tcpdump auswerten. Es kann noch mehr, aber das reichte für meine Zwecke. Der MySQL Server wird per TCP/IP von mehreren Webservern benutzt und so konnte ich den Traffic direkt am betreffenden Netzwerkinterface abfangen und auswerten.
Weiterlesen: MySQL Netzwerk Traffic analysieren mit tcpdump und mk-query-digest »

Debian Lenny auf Squeeze Upgrade Anleitung

2010-11-28 - 11 Kommentare »

Vor ein paar Tagen hat das Debian Release Team dazu aufgerufen den Debian Installer und die Upgradefunktion zu testen. Da ich gerade eh einen neuen Testserver installieren wollte, dachte ich mir warum nicht gleich Debian Squezze mit testen. Es handelt sich um einen Hetzner EQ8 der als MySQL Server dienen soll. Es läuft außerdem ein Lighttpd für ein paar Webservices, sowie PHP auf ihm.
Ich habe den Server erst sauber mit Debian Lenny installiert und ein paar Tage benutzt um zu sehen ob alles anständig läuft. Dann habe ich das Upgrade auf Debian Squeeze ausgeführt. Hier nun mein Vorgehen + meine Notizen für das wirkliche Upgrade der Produktion Server die ja auch bald anstehen werden.
Weiterlesen: Debian Lenny auf Squeeze Upgrade Anleitung »

Debian Squeeze: Was gibt es neues? Was hat sich verändert?

2010-11-28 - 1 Kommentar »

Das Release von Debian Squeeze rückt immer näher und da fragt man sich natürlich: Was gibt es neues? Was hat sich verändert und was muss man beachten? Leider konnte ich keine vollständige Liste finden, deshalb hier eine Übersicht der Sachen die mir bisher aufgefallen sind. Ich beschränke mich dabei auf den Servereinsatz von Debian und die Liste wird nach und nach erweitert. Wenn jemand Ergänzungen hat, hinterlasst bitte ein Kommentar.

In Squeeze gibt es nach meiner Zählung 8.017 neue Pakete, was die Gesamtanzahl an Debian Paketen auf ca. 36.251 erhöht (lenny hat 28.234 Pakete). Eine Vielzahl Pakete wurden aktualisiert und kommen mit manchmal großen Versionssprüngen daher. Um einen Überblick zu bekommen, kann man diese beiden Textfiles vergleichen: Pakete Lenny, Pakete Squeeze.

Allgemeine Änderungen von Lenny zu Squeeze

Die Kernel Version ist nun 2.6.32 und ext4 ist das neue Default Dateisystem. Es gibt eine neue Standard Shell namens Dash, GRUB Legacy wird durch GRUB 2 ersetzt (GRUB Legacy ist noch im Paket grub-legacy enthalten). Was mich etwas verwunderte war das IDE Platten nun auch sdX heißen. even IDE (PATA) hard drives now register as /dev/sdX (use filesystem labels! See Part-UUID. Das ist besonders für alle interessant die IDE Platten benutzen und auf Squeeze updaten wollen. Zu diesem Thema gibt es einen eigenen Abschnitt in den Release Notes. Das Bootsystem wurde angepasst um einen schnelleren Bootprozess zu erzielen. Nun gut das interessiert mich nun weniger, da Server nur selten booten.
Weiterlesen: Debian Squeeze: Was gibt es neues? Was hat sich verändert? »

MySQL Server mit Munin überwachen

2010-11-28 - 4 Kommentare »

Einen MySQL Server kann man sehr einfach mit Munin überwachen. Die Plugins rufen dazu in regelmäßigen Abständen mysqladmin auf und werten das Ergebnis aus. Das Standard Munin Paket bringt auch schon ein paar Plugins mit die man nur aktivieren muss, aber es gibt noch weitere die auch interessant sind. Hier eine kurze Erklärung wie man sie installiert und was sie anzeigen:
Weiterlesen: MySQL Server mit Munin überwachen »

Domainnamen aus Zone File parsen

2010-11-27 - 2 Kommentare »

Seit ein paar Tagen habe ich Zugriff auf die Versign Zone Files und versuche mich im parsen der Domainnamen direkt auf der Command Line. Ich möchte nur die Domainnamen, unique und sortiert haben um sie im Anschluss weiter auswerten zu können. Die Zone Files werden 1x am Tag aktualisiert und per Script herunter geladen. Im ersten Schritt werden alle unnützen Zeichen/Zeilen entfernt, dann wird die Liste sortiert und unique gemacht. Im zweiten Schritt soll eine Liste mit neu dazu gekommenen und entfernt gewordenen Domains erstellt werden. Das ganze soll automatisch laufen und die Resultate sollen direkt in eine MySQL Datenbank geschrieben werden. Hier nun mein Vorgehen um dies zu erreichen.
Weiterlesen: Domainnamen aus Zone File parsen »

Memcached auf Debian Lenny/Squeeze installieren

2010-11-24 - 1 Kommentar »

Memcached ist ein in Memory Speicher, der seine Daten komplett im Arbeitsspeicher des Servers aufbewahrt und deshalb sehr schnell auf diese zugreifen kann. Man kann ihn zum entlasten der Festplatte benutzen, wenn diese das limitierende Glied ist oder man speichert das Ergebnis von Berechnungen zwischen die damit schneller zur Verfügung stehen. Der Einsatz macht eigentlich immer Sinn wenn man durch langsame Aufrufe in der Gesamtabarbeitung eines Auftrages beeinträchtigt wird. Natürlich sollte man auch genügend Arbeitsspeicher zur Verfügung haben. Das benötigte Pakete ist memcached und in Debian Lenny ist die Version 1.2.2 enthalten. Debian Squezze bringt die memcached Version 1.4.5 mit.
Weiterlesen: Memcached auf Debian Lenny/Squeeze installieren »