Springe zum Inhalt

13

Mit aktueller OpenSource-Software ist es zwischenzeitlich einfach möglich, eine eigene kleine Radiostation zu betreiben. Im Folgenden wird die Installation und Konfiguration von Airtime als Broadcast-Server, Icecast als Streaming-Server und Mixxx als Client für DJs und Moderatoren beschrieben. Airtime und Icecast wird dabei auf einem Ubuntu-Server installiert. Mixxx ist für die Betriebssysteme Linux, Windows und Mac OS X erhältlich. Vorraussetzung ist auf dem Ubuntu-Server ein bereits laufender Apache. Nach der Konfiguration dieser Softwarepakete können eigene Radioshows und DJs eingeplant werden, die mit Mixxx live streamen können. In diesem Artikel wird nur auf die technischen Belange eingegangen. Über die rechtlichen Belange zum Betrieb einer Webradiostation muss man sich vor der Inbetriebnahme des Senders an entsprechenden Stellen informieren. ...weiterlesen "Eigene Radiostation mit Airtime, Mixxx und Icecast"

Alle im Internet angebotenen Services werden über kurz oder lang angegriffen werden. Einfache Attacken sind dabei das Ausprobieren verschiedener Logins auf einem SSH- oder IMAP-Server. Diese können automatisch mit logcheck erkannt und dokumentiert werden. Eine wirkliche Abwehr der Attacke ist das jedoch nicht, da logcheck nur die gescheiterten Loginversuche aus den Logfiles heraussucht und entsprechende Warnungen an den Administrator per E-Mail verschickt. Auf der Suche nach einer einfachen Abwehrmethode stieß ich auf fail2ban, welches nach einer einzustellenden Anzahl von fehlgeschlagenen Logins die IP-Adresse des Angreifers mittels iptables automatisch blockieren kann und diese Blockierung nach einer einzustellenden Zeit automatisch wieder aufhebt.

logcheck und fail2ban ist in den Ubuntu-Quellen enthalten und kann mit

apt-get install logcheck
apt-get install fail2ban

installiert werden. In der Datei /etc/logcheck/logcheck.conf kann angepasst werden, an welche E-Mail-Adresse die Ergebnisse der Suche nach fehlgeschlagenen Logins geschickt werden. Für fail2ban kann das Selbe in der Datei /etc/fail2ban/jail.conf konfiguriert werden. Nach einem Neustart dieser beiden Dienste werden die Änderungen übernommen.

service logcheck restart
service fail2ban restart

Unter Ubuntu 10.04.3 LTS ist es erforderlich, für die erfolgreiche Überwachung des saslauthd die Datei /etc/fail2ban/filter.d/sasl.conf anzufassen, da der saslauthd unter Ubuntu offenbar eine andere Ausgabe benutzt, als sie in fail2ban voreingestellt ist. Die Zeile zum Matchen der Meldung ist durch folgende Zeile zu ersetzten (Quelle):

failregex = (?i): warning: [-._\w]+\[<HOST>\]: SASL (?:LOGIN|PLAIN|(?:CRAM|DIGEST)-MD5) authentication failed(: [A-Za-z0-9+/ ]*)?$

Nach einem Neustart von fail2ban werden anschließend auch fehlgeschlagene Logins über den saslauthd erkannt.

Wenn fail2ban mehrere aufeinanderfolgende fehlgeschlagenen Login-Versuche von einer IP-Adresse durch entsprechende Logmeldungen der zu überwachenden Dienste erkennt, wird die IP-Adresse mittels iptabels gesperrt. Nach einer bestimmten Zeit, die in /etc/fail2ban/jail.conf unter bantime in Sekunden eingestellt werden kann, wird die IP-Adresse wieder aus der Sperrliste in iptables entfernt. Falls man den oder die zu überwachenden Server allein betreibt, kann man evtl. die Sperrzeit auf einen sehr hohen Wert einstellen. 86400 Sekunden entspricht dabei einem Tag.

In der Standardinstallation unter Ubuntu ist der Zugriff auf die Statistiken von AWStats nicht geschützt. Die Einstellungen für Apache zu AWStats sind in der Datei /etc/apache2/conf.d/awstats gespeichert. Um nun den Zugriff auf AWStats nur noch nach erfolgreicher Authentifizierung zu erlauben, erweitert man die Apache-Konfigurationsdatei für AWStats um folgende Einträge:

<Directory /usr/lib/cgi-bin>
  <Files awstats.pl>
    AuthUserFile /etc/awstats/awstats-htpasswd
    AuthName "AWStats"
    AuthType Basic
    require valid-user
  </Files>
</Directory>

Anschließend erstellt man die Datei /etc/awstats/awstats-htpasswd mit folgendem Befehl:

htpasswd -c /etc/awstats/awstats-htpasswd benutzername

Nach einem Neustart des Apache ist dann der Zugang zu den AWStats-Auswertungen nur noch für berechtigte Benutzer möglich.

Standardmäßig wird die Ubuntu-GUI mit Knöpfen auf der linken Seite des Fenstertitels ausgeliefert. Das mag für die Mac-Benutzer zwar ziemlich einfach sein, verwirrt aber so manchen Windows-User. Diese Anordnung kann jedoch (im Gegensatz zu Windows sic ;) leicht umgestellt werden:

  1. Alt+F2 drücken
  2. gconf-editor eingeben und Enter drücken
  3. zum Pfad Apps/Metacity/General navigieren und dann auf der rechten Seite den Eintrag button_layout öffnen
  4. für Buttons auf der linken Seite close,minimize,maximize: und für Buttons auf der rechten Seite :minimize,maximize,close eintragen (den Doppelpunkt nicht vergessen)
  5. OK klicken, fertig

In Piotr Gabryjeluks Blog habe ich ein interessantes Skript gefunden, welches einen Webserver in 100 Zeilen Bash enthält. Als Parameter erwartet das Skript eine Portnummer, auf die es lauschen soll.

Für Ubuntu muss dieses Skript angepasst werden, da das dort installierte netcat andere Optionen versteht. Das Original kann von obiger Webseite heruntergeladen werden, das für Ubuntu angepasste folgt hier und kann auch als Datei heruntergeladen werden: ...weiterlesen "Webserver in 100 Zeilen Bash"