Archiv der Kategorie: Linux

GNU/Linux Howto’s and Tutorials

Installation fail2ban

fail2ban
fail2ban

Fail2ban scannt Log-Dateien (zB. /var/log/apache/error_log) und verbietet IPs, die verwundbare anfragen enthalten und verhindert die suche nach Exploits, um Systeme zu infizieren und zu kompromittieren versuchen. Im Allgemeinen wird fail2ban verwendet um Firewall-Regeln zu aktualisieren, um die Herkunfts IP-Adressen für eine bestimmte Zeitdauer abzulehnen, wobei andere Dienste ihre Funktion wie zB. der Mail Transport Agent weiterhin Emails verarbeiten können.

Fail2Ban ist freie Software unter GNU General Public License Version 2 und kommt Out-of-the-Box, der Filter ist für verschiedene Dienste wie Apache, Bind, Postfix, SSH etc. einsetzbar. fail2ban ist in der Lage, die Rate der falsch-Authentifizierungen zu reduzieren, versucht aber nicht das Risiko schwacher Authentifizierung zu beseitigen.

Als erstes wird das Packet aus dem Fedora repo installiert und gleich gestartet, hier auf einem CentOS 5.

Falls nicht schon vorhanden die Log-Datei erstellen:

Nun editieren wir die fail2ban Konfiguration:

Hier in diesem Beispiel der Bind Daemon:

service named restart

Im  security-Log von named werden nun ggf. abgelehnte anfragen protokolliert.

Die durch fail2ban eingefügten iptables ketten ausgeben.

 

Server Memory cache buffers reset

Welcher Linux Admin kennt das nicht, nach einer Gewissen uptime ist fast das gesamte Memory für cache und buffers des Servers verbraucht, eigentlich ist es nicht nötig in das Memory Management des Systems einzugreifen, ist das System jedoch knapp an Arbeitsspeicher, lässt sich mit einem einfachen Script Abhilfe schaffen.

Nach root Login wird folgendes Script editiert:free_mem

[root@homer ~]# vi /usr/sbin/clearcache.sh

Nun das Script ausführbar machen.

und als crontask um 5, 13 und 21 Uhr ausführen lassen.

Mit free -m lässt sich vor und nach dem reset das freie Memory beobachten, auch wird der Task unter /var/log/clearcache.log protokolliert und kann mit „tail /var/log/clearcache.log“ auf stdout ausgegeben.

clear cache
clear cache

MySQL Server Backup auf Synology DS

Im folgenden wird in wenigen Schritten beschrieben wie die MySQL Datenbank auf die Synology Diskstation gesichert wird. Das auf dem Linux host gesicherte Wordpress wird anschliessend mit scp auf die DS übertragen.

Auf dem NAS wird der SSH und SFTP Daemon aktiviert.

SSH Aktivieren
SSH Aktivieren
SFTP Aktivieren
SFTP Aktivieren
SFTP Port
SFTP Port

Auf dem Linux host als root mit „su -“ oder „sudo su -“ anmelden und aus dem bash shell die folgenden Dateien zu erzeugen.

Wobei PASSWORD dein MySQL Passwort ist, 10.1.1.2 ist hier die IP der Synology DS, „volume1“ ist in der regel die erste Partition und „backup“ ist unser angelegtes Backup Verzeichnis.

Nun auf dem Linux host ein RSA Schlüsselpaar erzeugen, damit wird beim kopieren mit scp auf die DS kein Passwort verlangt.

Im Verzeichnis /root/.ssh/ wurde nun ein Privater und ein Öffentlicher Schlüssel erzeugt:

Der Öffentliche Schlüsssel id_rsa.pub wird nun auf unsere DS kopiert und im Pfad /root/.ssh/ in die Datei authorized_keys zu liegen kommen, hierbei wird das root Passwort gepromptet.

Fertig! nun wird wenn alles klappt um 00:00 Uhr dein Backup erstellt und automatisch (ohne Passwort Prompt) auf die Diskstation transferiert.

Dieses Howto wurde auf CentOS GNU/Linux gemacht, mit Debian sollten ebenfalls keine Anpassungen nötig sein, andernfalls wäre dein Kommentar mit deiner disto jederzeit willkommen.

Der System crontab liegt in /etc/crontab, Du kannst auch den Befehl crontab -e verwenden oder das durch run-parts angelegte cron.daily Verzeichnis als Batch Folder nehmen.