Natenom´s Blog

Linux, Mumble, IT, Open-Source, Creative Commons and more…

Neues von der Mumble-Entwicklung: Fail2Ban kompatibles Serverlog und Syslog

2014/07/19
von Natenom
Keine Kommentare

Neues von der Mumble-Entwicklung: Fail2Ban kompatibles Serverlog und Syslog

Mumble-Server und Fail2Ban

In der aktuellen, stabilen Version des Mumble-Servers sind die Meldungen bezüglich der Verweigerung einer Verbindung (Rejected connection) und die dazugehörige IP-Adresse des Clienten auf verschiedene Zeilen verteilt:

<W>2014-07-11 04:50:06.614 1 => <16:(-1)> New connection: 1.2.3.4:60787
<W>2014-07-11 04:50:06.699 1 => <16:(-1)> Client version 1.2.7 (Win: 1.2.7)
<W>2014-07-11 04:50:06.700 1 => <16:User(-1)> Rejected connection: Wrong certificate or password for existing user
<W>2014-07-11 04:50:06.701 1 => <16:User(-1)> Connection closed:  [-1]

Somit lassen sich Benutzer aufgrund solcher Verbindungsanfragen nicht automatisch mit z. B. Fail2Ban sperren, da dieses zeilenweise arbeitet.

Seit der Patch von Patrick Matthäi (der bereits seit längerem im Debian-Paket des Mumble-Servers verwendet wird) in den Code übernommen wurde stehen die notwendigen Daten in derselben Zeile:

 <W>2014-07-18 05:41:19.231 1 => <38:Natenom(-1)> Rejected connection from 1.2.3.4:48338: Wrong certificate or password for existing user

Nun kann man sich für Fail2Ban eine Regel erstellen, die einen solchen Benutzer nach x Verbindungsversuchen automatisch per iptables aussperrt.

Mumble-Server und Syslog

Der Mumble-Server (Murmur) loggt seine Geschehnisse normalerweise sowohl in die Datenbank als auch in eine festlegbare Logdatei. Seit einem Pull Request von main– kann Murmur seine Meldungen nun auch direkt an einen Syslog-Dienst schicken. Somit entfällt eine zusätzliche Logdatei. Dazu weist man der Variable logfile in der .ini-Konfigurationsdatei den Wert “syslog” zu.

Multitail-Schema für Mumble-Server-Logs im Syslog?

Verwendete man bisher z. B. dieses Farbschema zur Darstellung des Mumble-Server-Logs in Multitail, so kann man in die Datei /etc/multitail.conf an der Stelle des Schemas für syslog noch die Zeilen anfügen, die es hier gibt. Dann hat man auch im Syslog eine farbliche Anzeige der Mumble-Server betreffenden Einträge.

Mumble-Server und Logcheck?

Für Logcheck gibt es auch ein paar Zeilen im Wiki, sodass normale Ereignisse eines Mumble-Servers einem nicht andauernd zugeschickt werden. Für die normale Serverlog des Mumble-Servers gibt es die Zeilen hier. Werde diese in den nächsten Tagen auch für den Fall hinfügen, dass der Mumble-Server syslog verwendet.

Ausprobieren

Beide Neuerungen sind bereits im aktuellen Snapshot des Mumble-Servers enthalten, den man hier herunterladen kann.

Ähnliche Themen...

Neues von Mumble – Sicherheitsupdate – Version 1.2.7

2014/06/14
von Natenom
Keine Kommentare

Neues von Mumble – Sicherheitsupdate – Version 1.2.7

Heute gab es ein Update für die stabile Version von Mumble auf die neue Version 1.2.7.

Sicherheit

  • Das in Mumble verwendete OpenSSL wurde wegen einiger Bugfixes auf die Version 1.0.0m aktualisiert, Details hier.

Bugfixes

  • Bis einschließlich Version 1.2.6 wurde beim Empfangen von Bildern im Nachrichtenverlauf (Chatlog) teils nicht nach unten gescrollt; dies funktioniert nun. Details siehe hier.
  • Einige Benutzer hatten das Problem, sich nicht mehr auf einen Server verbinden zu können nach der Installation von Skype und der Aktivierung des optionalen Funktion “Click to Call”, Details siehe hier.

Aktualisieren

Client

Man sollte so schnell wie möglich auf die neue Version aktualisieren.

  • Dazu kann man entweder das neue Mumble-Paket selbst herunterladen über die folgenden Direktlinks und über die alte Version drüberinstallieren:
  • Oder man nutzt die Updatefunktion in Mumble selbst, indem man oben im Menü auf “Hilfe” klickt und dann auf “Auf Updates prüfen”.

Alternativ sollte man beim nächsten Start eine Aktualisierungsbenachrichtigung erhalten, der man nur zustimmen muss.

Die Einstellungen von Mumble bleiben bei einem Update erhalten.

Und der Server?

Nutzt man eine der vom Mumble-Projekt angebotenen Static-Binaries für den Mumble-Server oder einen Mumble-Server auf Windows, sollte man auch diesen aktualisieren.

Nutzt man dagegen den Mumble-Server seiner Linux-Distribution, benötigt man kein Update des Mumble-Servers, sollte aber sicherstellen, dass die auf dem System installierte OpenSSL-Version die entsprechenden Sicherheitsaktualisierungen bereits erfahren hat.


Dieser Artikel basiert zum größten Teil auf dem English-sprachigen Artikel des Mumble-Blogs, siehe hier.

 

Ähnliche Themen...

Lösung für "[error] No ctl object available for Murmur version 1.3.0" in Mumble-Django mit dem Mumble-Server Snapshot

2014/05/17
von Natenom
Keine Kommentare

Lösung für “[error] No ctl object available for Murmur version 1.3.0″ in Mumble-Django mit dem Mumble-Server Snapshot

Wer Mumble-Django (MD) nutzt und seinen Mumble-Server auf einen aktuellen Entwicklersnapshot aktualisiert hat, wird feststellen, dass MD sich nicht mehr zum Server verbinden kann. Es wird angezeigt, der Server sei offline.

Im Errorlog des Web-Servers findet sich der Eintrag: “[error] No ctl object available for Murmur version 1.3.0″.

Ursache

Das liegt daran, dass MD beim Prüfen der Version des Mumble-Servers nur die Versionen 1.1.8 oder 1.2.x akzeptiert, andere werden abgewiesen. Die aktuellen Snapshots melden sich jedoch mit der Version “1.3.0″.

Lösung

Um das Problem zu beheben, nimmt man in der Datei pyweb/mumble/MumbleCtlIce.py die folgenden Änderungen ab Zeile 175 vor:

    elif murmurversion[:2] == (1, 3):
         return MumbleCtlIce_123( connstring, meta )

#        if   murmurversion[2] < 2:
#            return MumbleCtlIce_120( connstring, meta )
#
#        elif murmurversion[2] == 2:
#            return MumbleCtlIce_122( connstring, meta )
#
#        elif murmurversion[2] >= 3:
#            return MumbleCtlIce_123( connstring, meta )

Nach einem Neustart des Web-Servers sollte MumbleDjango den Mumble-Server wieder erkennen.

Es gibt übrigens gute Gründe, einen aktuellen Snapshot-Server laufen zu lassen, siehe hier :)

Ähnliche Themen...

2014/05/15
von Natenom
Keine Kommentare

Wichtiges Sicherheitsupdate für Mumble – Version 1.2.6 freigegeben

Für den Mumble wurde heute die neue Version 1.2.6 veröffentlicht. Es handelt sich dabei um ein Sicherheitsupdate ohne neue Funktionen.

Lücken

Folgende Lücken werden geschlossen:

  • Mit entsprechend bearbeiteten SVG-Dateien ist es möglich, den Mumble-Clienten bis einschließlich 1.2.5 zum Absturz zu bringen
    Siehe Mumble-SA-2014-005 für Details (Signatur)
  • HTML wird teilweise nicht korrekt verarbeitet
    Siehe Mumble-SA-2014-006 für Details (Signatur)
  • Für die vom Mumble-Projekt ausgelieferten Binärpakete für Windows und Mac OS X behebt das Update auch eine Schwachstelle bezüglich GIF-Dateien
    Siehe CVE-2014-0190 für Details

Mumble-Clienten aktualisieren

Alle Benutzer sollten ihren Mumble-Clienten so schnell wie möglich aktualisieren:

  • Windows- als auch “Mac OS X”-Benutzer können dazu die integrierte Funktion nutzen: In der Menüleiste oben auf “Hilfe” klicken, dann auf “Auf Updates prüfen”. Es wird der neue Client heruntergeladen und zur Installation angeboten.
    Alternativ kann man sich den neuen Clienten auch direkt herunterladen und über die alte Version installieren:

    Bleibt man untätig, so erhält man beim nächsten Start von Mumble eine Aktualisierungsbenachrichtigung, sofern diese Funktion nicht deaktiviert wurde.

  • Linux-Benutzer sollten Ausschau halten nach Updates von den Distributionen selbst. Für Ubuntu-Benutzer gibt es eine aktualisierte Version im PPA des Mumble-Projekts.

Auch Nutzer der Mumble-Snapshots sind betroffen.

Und der Server?

Der Server ist nicht von den Lücken betroffen; da jedoch Client und Server immer dieselbe Version haben, wurde auch der Server auf 1.2.6 aktualisiert.


Dieser Artikel basiert auf dem Englisch-sprachigen Blog-Artikel des Mumble-Projekts, siehe hier.

Ähnliche Themen...

2014/04/11
von Natenom
1 Kommentar

Mumble und Heartbleed

Sie im Englisch-sprachigen Blog des Mumble-Projekts.

Ähnliche Themen...

Neues MumbleModerator (MuMo) Modul: AntiFlood für Mumble-Server

2014/03/16
von Natenom
Keine Kommentare

Neues MumbleModerator (MuMo) Modul: AntiFlood für Mumble-Server

Der MumbleModerator (MuMo) ist ein in Python geschriebenes Framework, mit dem man sehr einfach Module schreiben kann, die die Funktionalitäten eines Mumble-Servers erweitern. Z. B. kann man mit solchen Modulen Benutzer verschieben, kicken, umbennenen und vieles mehr.

Grund für AntiFlood

Das neue AntiFlood-Modul stand schon länger auf meiner ToDo-Liste, da es ziemlich nervig ist, wenn gewisse Benutzer (keine Namen :P) sich mehrmals die Sekunde stumm und taub stellen, immer wieder dieselben Textnachrichten senden usw. Gestern habe ich das Script dann endlich gemacht.

Von wegen Codequalität: Pull Requests sind willkommen; ich bin da kein Profi :)

Funktionsweise

Man kann einen Zeitraum und eine maximale Anzahl an Aktionen einstellen. Tätigt ein Benutzer in dieser Zeit mehr als die erlaubten Aktionen, so wird er vom Server gekickt. Voreingestellt sind maximal 20 Aktionen in 10 Sekunden.

Ab der Hälfte der erlaubten Anzahl erhält man für jede Aktion eine Warnung, bis zum Kick.

Als Aktionen werden sämtliche Statusänderungen des Clienten (z. B. “stumm stellen”, “taub stellen”, “Kanal wechseln”) und auch Textnachrichten angesehen.

Video

Hier ein Demonstrationsvideo bei Youtube (ohne Ton); es wird in einem neuem Fenster geöffnet:

Mumble Moderator Modul AntiFlood

Mumble Moderator Modul AntiFlood – Video

\o/

Im Wiki gibt es Anleitungen zur Installation von MuMo und neuer Module, siehe hier und hier.

Passt.

Ähnliche Themen...

Anleitungen zur Installation von Mumble-Ruby und darauf basierender Audio-Bots

2014/03/02
von Natenom
1 Kommentar

Anleitungen zur Installation von Mumble-Ruby und darauf basierender Audio-Bots

Vor ein paar Tagen wurde hier bereits über Mumble-Ruby berichtet, siehe hier.

Habe dafür zwei Anleitungen im Wiki erstellt:

Die zweite Anleitung baut auf der ersten auf und selbst wenn man nur Copy & Paste verwendet, erhält man am Ende einen funktionierenden Musik-Bot, der den Stream eines Creative Commons Radios an einen Mumble-Server sendet.

Beide Anleitungen wurden auf Debian 7.4 “Wheezy” getestet. Vermutlich funktionieren sie auch auf Ubuntu und auf anderen Debian-basierten Distributionen. Man benötigt jedoch einen Opus-fähigen Mumble-Server.

Weitere Informationen zu Mumble-Ruby werden hier gesammelt.

Viel Spass damit :)

Ähnliche Themen...

Wie man sich in Mumble vor Störern schützen kann – als Benutzer und als Admin

2014/02/27
von Natenom
Keine Kommentare

Wie man sich in Mumble vor Störern schützen kann – als Benutzer und als Admin

Habe eine Liste im Wiki zusammengestellt, die beschreibt, wie man sich in Mumble vor Störern schützen kann. Die Lösungen sind aufgesplittet in Möglichkeiten für die Benutzer und in solche für den Admin bzw. Server.

Mir ist klar, dass man auch “Störern” damit eine Liste der Möglichkeiten gibt; doch gehe ich davon aus, dass solche schon vorher in der Lage waren, sich die bereits vorhandenen Informationen an vielen Stellen im Wiki selbst zusammenzusuchen.

Von daher ist der Nutzen aus meiner Sicht eher größer für nicht ganz so versierte Benutzer/Admins, die sich schützen möchten :)

Hier geht es zur Liste.

Ähnliche Themen...

Vorlage für Mumble-Server mit Ansible unter Ubuntu

2014/02/25
von Natenom
Keine Kommentare

Mumble-Server auf Ubuntu mit Ansible verwalten

Ansible ist ein System für Configuration Management (CM) mit und kann auch Remote Execution.

Verwaltet man damit mehrere Server, so ist man in der Lage, Änderungen einmalig an einer zentralen Stelle vorzunehmen und diese dann automatisiert auf alle diese Server zu verteilen, egal ob es 5 oder 500 sind. Dabei lassen sich über Module z. B. Benutzer anlegen, Datenbanken verwalten, Dienste bei Änderungen der Konfigurationsdateien neu starten, und Vieles mehr. Eine Liste der vielfältigen Module gibt es hier.

Auch lassen sich auf allen Servern Befehle ausführen; dabei erhält man auch die Ausgabe von jedem Server.

Im Gegensatz zu anderen CM, wie z. B. Saltstack, benötigt man für Ansible auf den Servern keine eigenen, dedizierten Dienste, sondern nur einen SSH-Server und z. B. auf Debian das Paket “python-apt”.

Dabei werden die Anweisungen in Ansible in Playbooks bzw. Roles verwaltet, die letztlich Textdateien im YAML-Format sind. Solche werden oft zum Herunterladen angeboten und lassen sich in die eigene Konfiguration einbinden.

Mumble-Server mit Ansible

Vor ein paar Tagen hat Joshua Lund auf GitHub entsprechende Dateien zur Verwaltung eines einzelnen Mumble-Servers per Ansbible auf einem Ubuntu-System zur Verfügung gestellt, siehe hier.

Dabei wird das PPA des Mumble-Projekts eingebunden, in dem sich die offizielle, aktuelle Version 1.2.5 befindet.

Die Einstellungen für den Server trägt man in die Datei “defaults/main.yml” ein, aus der die .ini-Konfigurationsdatei erstellt wird. Dort sind bisher nur die wichtigsten Servereinstellungen vorhanden (eine Liste mit allen Einstellungen gibt es hier). Vielleicht hat jemand die Möglichkeit, mittels eines Pull Requests die restlichen hinzuzufügen … mal sehen.

\o/

Passt :)

Im Wiki werden auch ein paar Informationen zu Ansible gesammelt.

Ähnliche Themen...

mumo-maxusers – Begrenzung lässt sich umgehen + Fix

2014/02/23
von Natenom
Keine Kommentare

mumo-maxusers – Begrenzung lässt sich umgehen + Fix

Vor einiger Zeit wurde hier das Modul maxusers für den Mumble Moderator (MuMo) vorgestellt, mit dem man einzelne Kanäle eines Mumble-Servers auf eine definierte Anzahl an Benutzer beschränken kann.

Umgehung

Korni hat heute morgen auf unserem Server eine Lücke in diesem Modul gefunden, durch die man auf Umwegen trotzdem einen solchen Kanal betreten kann:
Dafür erstellt man im begrenzten Kanal B einen temporären Kanal T und wird vom Server automatisch dorthin verschoben. Hierfür benötigt man natürlich entsprechende Berechtigungen (siehe hier). Löscht man dann den Kanal T, so landet man automatisch in B.

Das liegt daran, dass das Script versucht, den nicht mehr vorhandenen Kanal T abzufragen, um den Benutzer zurück zu verschieben; das kann natürlich nicht funktionieren und somit verbleibt der Benutzer in Kanal B.

Lösung

Eine Anfrage mit einer möglichen Lösung des Problems wurde an den Entwickler geleitet. Sollte diese Lösung angenommen werden, dann kann man die neue Version auf der Projektseite herunterladen. Bis dahin kann man auch die aktualisierte Datei von dem Fork hier verwenden.

Dann wird ein Benutzer, dessen vorheriger Kanal nicht mehr existiert, in den Standardkanal verschoben oder in den Hauptkanal des Servers, wenn kein Standardkanal festgelegt wurde.

Ähnliche Themen...