Skip to content

Admin Panels Part2: Cockpit - Leitstand für Fedora, CentOS oder Ubuntu

Tools für eine zentrale Verwaltung von Linux Servern gibt es einige. Mit Ajenti und LinuxDash hatte ich bereits zwei vorgestellt.
Einen weitern interessanten Ansatz verfolgt Red Hat seit einiger Zeit.

Cockpit - Serververwaltung

Mit Cockpit haben sie eine frei über Github entwickelte Linux Steuerzentrale in petto, welche auf neueren Distributionen von Fedora, CentOS oder ArchLinux bereits vorinstalliert oder zumindest als fertiges Installationspaket bereit liegt.
Cockpit setzt auf systemd und ist somit auf dem aktuellen Ubuntu 14.04 LTS nicht unbedingt praktikabel, da aber Ubuntu 16.04 bereits in den Startlöchern steht, sieht es für Cockpit auf Ubuntu Systemen in Zukunft ebenfalls gut aus.

Das Verwaltungstool unterstützt nicht nur verschiedene Systeme, es kann über das zentrale Dashboard auch auf eine ganze heterogene Umgebung zugreifen, um diese zu verwalten. Die Kommunikation zwischen den Maschinen erfolgt über SSH.

cockpit

Schlicht aber effektiv

Die einfache Bedienung des Tools fängt beim Login an, hier werden automatisch hinterlegte Nutzer mit root Rechten für den Login freigeschaltet.
Nicht nur die moderne und aufgeräumte Oberfläche wirkt erfrischend, auch die Auswertungen von Systemperformance ist schlicht und ausreichend.
Die Usability endet bei einem eingebundenen Terminal, welches das Arbeiten auf der Konsole über die Oberfläche ermöglicht.

cockpit-login

Sichere Sache

Anders als Webmin, Ajenti und Co, benötigt Cockpit keinen Apache Server oder ähnliches, welcher ständig in Betrieb sein muss. Der eigene Dienst cockpit-ws startet den Webserver nur, sobald eine Anfrage auf dem Standard Port 9090 ankommt. Sollten keine weiteren Anfragen auf dem Port ankommen, legt er sich nach 90 Sekunden Inaktivität wieder schlafen.

Ist der Webserver aktiv kann er über HTTP und HTTPS erreicht werden, HTTP wird aber automatisch auf HTTPS umgeleitet.  Ein Zertifikat kann unter "/etc/cockpit/ws-certs.d" abgelegt werden. SSL3 und RC4 sind von Haus aus deaktiviert.

Die wichtigsten Cockpit Konsolen Befehle

Prüfen welches Zertifikat verwendet wird

sudo remotectl certificate

Cockpit manuell starten

sudo systemctl enable cockpit.socket
sudo systemctl start cockpit.service
sudo systemctl status cockpit.service

Cockpit Autostart Eintrag erstellen

sudo systemctl enable cockpit.socket

Anderen Port hinterlegen

Temporär

sudo nano /usr/lib/systemd/system/cockpit.socket

oder permanent

sudo cp /lib/systemd/system/cockpit.socket /etc/systemd/system
sudo nano /etc/systemd/system/cockpit.socket

 ListenStream=666

sudo systemctl daemon-reload
sudo systemctl restart cockpit.socket

Cockpit Oberfläche (Standardport)

https://cockpit-server:9090

cockpit_install

Installation unter CentOS

Unter bereits voll unterstützen Systemen, ist die Installation ein Kinderspiel

yum install cockpit
sudo systemctl start cockpit

Den Dienst erlauben

systemctl enable cockpit.socket

Wenn nötig die Firewall öffnen

firewall-cmd --permanent --zone=public --add-service=cockpit
sudo firewall-cmd --reload

Das System ist nun über den oben erwähnten Port ereichbar.

cockpit-uebersicht


Installation from Source (Ubuntu)

Eine Installation ist eigentlich erst ab Ubuntu 15.10 sinnvoll, aber dennoch auf 14.04 möglich.

Pakete installieren

sudo apt-get install xsltproc libglib2.0-dev libjson-glib-dev libpolkit-agent-1-dev libkrb5-dev liblvm2-dev libgudev-1.0-dev libssh-dev libpam0g-dev libkeyutils-dev libpcp3-dev libpcp-import1-dev libpcp-pmda3-dev intltool xmlto libxslt1-dev selinux-policy-dev checkpolicy selinux-policy-doc libdbus-1-dev libsystemd-dev glib-networking
wget https://github.com/cockpit-project/cockpit/releases/download/0.102/cockpit-0.102.tar.xz
tar xvf cockpit-0.102.tar.xz
cd /cockpit-0.102
sudo ./configure
make
make install

Mögliche Fehler

Starting Cockpit Web Service...
remotectl[26324]: Generating temporary certificate using: openssl req -x509 -days 36500 -newkey rsa:2048 -keyout /usr/local/etc/cockpit/ws-certs.d/0-self-signed.P7XPFY.tmp -keyform PEM -nodes -o
remotectl[26324]: remotectl: /usr/local/etc/cockpit/ws-certs.d/0-self-signed.cert: TLS support is not available
systemd[1]: cockpit.service: Control process exited, code=exited status=1
systemd[1]: Failed to start Cockpit Web Service.
systemd[1]: cockpit.service: Unit entered failed state.
systemd[1]: cockpit.service: Failed with result 'exit-code'.

Lösung

sudo apt-get install glib-networking

Installation von PPA (Ubuntu)

Via PPA fällt die Installation um einiges leichter, allerdings kommt hier ein relativ altes Installationspaket zum Einsatz (0.38).   

sudo add-apt-repository ppa:jpsutton/cockpit

sudo apt-get update

sudo apt-get install cockpit

cockpit-dashboard

 

Ubuntu 14.04

Um Cockpit unter älteren Systemen zu starten, kann nicht auf systemd zurückgegriffen werden, es startet hier wie folgt.

sudo /usr/sbin/remotectl certificate --ensure --user=root
sudo /usr/libexec/cockpit-ws

Natürlich kann die mit einem eigenen Init Script automatisiert werden, dies bleibt jedem selbst überlassen.

Fazit

Sowohl für einzelne Server, als auch für kleinere Netzwerke, bestehend aus Linux Rechnern, bietet Cockpit eine Möglichkeit Server einfach zu warten und zu überwachen. Durch die leichte Installation und die klare Oberfläche ist sie besonders für Einsteiger geeignet.

Leider gibt es für Ubuntu Systeme bisher keine offiziellen Pakete. Das PPA ist leider nicht auf dem neuesten Stand. Eventuell ändert sich dies mit Ubuntu 16.04 LTS.

Mit dem Landscape Server bietet Canonical bereits eine eigene Ubuntu Server Verwaltung und Performance Analyse an, welche auf bis zu 10 Systemen umsonst angewendet werden kann. (siehe Artikel).

Welches Admin Tool für die eigenen Bedienungen geeignet ist, muss wohl immer individuell entschieden werden.


Quellen

http://www.golem.de/news/cockpit-angesehen-die-einfache-steuerzentrale-fuer-linux-server-1507-115035-3.html
http://cockpit-project.org/guide/latest

 

Openfire Meetings - eigenen WebRTC Server einrichten und verwenden

Vor einiger Zeit hatte ich einem Artikel über Jitsi Meet geschrieben. Es ging darum einen eigenen WebRTC Server für  Video und Audio Chats aufzusetzen.
Die Entwickler rund um das Jitsi Projekt sind mit ihrer Lösung schon lange nicht mehr alleine, auch andere verwenden diese Module um Videochats zu implementieren, so auch der XMPP Messaging Server Openfire.

Openfire Meetings - Videochats für den XMPP Server einrichten

Openfire ist ein XMPP Server mit einfach konfigurierbarer Oberfläche, der neben dem Bereitstellen einer klassischen Jabber Chat Umgebung durch diverse Plugins erweitert werden kann. 

So kann der Server mit dem Openfire Meetings Plugin zu einem Web-RTC Server ausgebaut werden. Dieses basiert auf Jitsi Videobridge und bietet somit ähnliche Funktionalitäten wie der oben erwähnte Jitsi Meet Server.

Openfire auf Ubuntu installieren

Die Installation des Openfire Server sei hier noch einmal erwähnt, auch wenn sie bereits verblogt wurde.

wget -O openfire_3.10.2_all.deb "http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire_3.10.2_all.deb"

sudo dpkg -i openfire_3.10.2_all.deb

service openfire restart

Der installierte Server kann unter http://meinServer:9090 oder unter https://meinServer:9091 aufgerufen werden.


Openfire Meeting Plugin installieren

Das nötige Plugin für interaktive Meetings wird einfach über das integrierte Menü "Plugins/Available Plugins" installiert. Danach ist es als eigener Menüpunkt in Openfire zu finden.

openfire-_Available-Plugins

Nach der Installation sollte in den Einstellungen unter "Mettings Settings" eine IP hinterlegt werden.
Umgebungen, die hinter einer Firewall eingerichtet werden, sollten zwingend die in der Konfiguration angegebenen Ports freischalten.

openfire-meeting-plugin

Openfire Meetings Chrome Erweiterung installieren

Die Openfire Meetings Browser Erweiterung, welche zurzeit nur für Chrome zur Verfügung steht, erweitert Videochats um Funktionen wie Bildschirmteilen oder Anwendungsaustausch. Die Installation erfolgt über den Chrome Webstore

openfire-chrome

Weitere nützliche Openfire Plugins

Damit der Server sich auf Gruppenchats und URL Lesezeichen versteht, kann das Client Control Plugin installiert werden. Wie der Name vermuten lässt können damit auch die erlaubten Clients im Netz reguliert werden. URL Lesezeichen bieten sich an, um eine Meetings URL im Client direkt zu hinterlegen.

Das Fastpath Plugin ist ebenfalls eine praktische Erweiterung, um den bestehenden Server für Arbeitsgruppen auszubauen. 

Für eine schnelle Nutzerumbennenung empfiehlt sich just married.

Die hier erwähnten Plugins sind für einen WebRTC Server Betrieb nicht notwendig, sondern optional.

Meeting erstellen oder beitreten

Nachdem alle Module erfolgreich installiert wurden, lässt sich der Meeting Server unter  https://meinServer:7443/ofmeet aufrufen.

Diejenigen welche sich bereits mit Jitsi Meet auseinander gesetzt haben, werden die Oberfläche bereits kennen.

ofmeet

Bestehende Räume lassen sich mit der im Vorfeld generierten ID direkt aufrufen https://meinServer:7443/ofmeet/?r=xxxxx. 

Zusätzlich besteht die Möglichkeit eine Videoübertragung von vornherein auszuschließen, hierzu muss die URL wie folgt manipuliert werden https://meinServer:7443/ofmeet/?r=xxxxx&novideo=true

Inzwischen sind weitere Funktionen wie ein Kalender mit Email Benachrichtigung verfügbar, auch ein normaler Gruppenchat mit Candy (Chats are not dead yet) ist möglich. Weitere Details dazu können auf der Openfire Meeting Seite direkt nachgelesen werden.

Fazit

Ähnlich wie Jitsi Meet stellt Openfire eine fertige Videochat Lösung bereit. Sie lässt sich einfach in eine bestehende Jabber/Xmpp Server Struktur einbinden. dank der Installation via Plugin sind keine weiteren Konfigurationen notwendig, sieht man einmal von einer eventuell vorhandenen Firewall ab. Die Kalender und Mailfunktion scheint praktisch zu sein, in meiner Teststellung konnte ich sie leider nicht testen.


Dies könnte dich auch interessieren

Ubuntu, CentOS oder Fedora - Pakete auf eine ältere Version downgraden

Die neuesten Programm Pakete müssen nicht immer die besten sein, denn durch Änderungen kann es vorkommen, dass Systeme nicht mehr das machen, was sie sollen. In diesem Fall hilft nur der Weg zurück zur alten Version, dieser Weg muss nicht zwingend beschwerlich sein.

CentOS  - Pakete auf eine ältere Version downgraden

Unter CentOS ist es relativ einfach, Pakete auf eine alte Version zu setzen.

Letzte Updates auflisten und altes Paket installieren

yum list recent

Ab Yum Version 3.2.25 sind auf folgende Befehle möglich

yum history oder yum history list

Ist das gewünschte Paket gefunden, kann durch Angabe der Version auf eine bestimmte Version downgegraded werden.

yum downgrade paket-1-2.i386

Wird keine Paketnummer angegeben, setzt das System das Paket auf die letzte bekannte Version zurück

yum downgrade paketname

yum-downgrade

Fedora - Pakete auf eine alte Version zurücksetzen

Fedoras RPM verhält sich ähnlich wie yum, hat aber eine praktische Zusatzfunktion

Auch hier können Pakete gesucht werden

rpm –q paketname

oder 

rpm -qa |grep paketname

Downgrade oder Rollback mit rpm

Hier wird es interessant, denn rpm kann alle Pakete, die in einer bestimmten Zeit aktualisiert wurden zurücksetzen. Der folgenden Befehl setzt alle aktualisierten Pakete der letzten 2 Stunden zurück, alternativ kann hier auch "3 month" oä. angegeben werden.

rpm -Uhv –rollback '2 hours ago'

Ebenso ist es mit rpm möglich ein bestimmtes Paket zurückzurollen, beziehungsweise auf ein älteres Paket zu aktualisieren

rpm -Uvh --oldpackage paket-1-2.i386.rpm


Downgrade unter Ubuntu mit apt-get 

Leider gibt es unter Debian Systemen wie Ubuntu oder Mint  mit der Paketverwaltung apt-get keine Downgrade Funktion. Hier kann nur mit Angabe der Versionsnummer gearbeitet werden.

Zunächst werden ebenfalls Pakete gesucht

apt-cache showpkg paketname

oder

dpgk -l |grep paket

Downgrade eines Pakets unter Ubuntu

Eine Downgrade ist hier nur mit Angabe der Versionsnummer möglich. 

sudo apt-get install postfix=2.11.0-1ubuntu1

Ist das System auf das alte Paket geeicht, können zukünftige Updates eines Pakets verhindert werden.

sudo echo “package postfix” | sudo dpkg –-set-selections

Um zu überprüfen, ob dieser Schritt erfolgreich war kann wiederum mit "dpkg" gearbeitet werden.

sudo dpkg --get-selections

SexiLog - OpenSource ELK Stack für ESXi-Hosts und vCenter-Server

Eine beliebte Lösung für Logging Server ist heutzutage ein sogenannter ELK Stack. Dabei handelt es sich um drei Komponenten die zusammen eine Logging Einheit bilden.

  1. Elasticsearch
  2. Logtash
  3. Kibana

Elasticsearch ist in dieser Konstellation für das Speicher und Suchen der Logdateien zuständig. Logtash verarbeitet die entstanden Logdateien und Kibana sorgt für eine optische Ausgabe der angefallenen Daten.

Alle Komponenten lassen sich einzeln auf einem Linux Server installieren und einrichten. Hierfür gibt es Cookbooks. Die einzelnen Schritte durchzuarbeiten ist jedoch aufwendig und fehleranfällig.

sexilog_funktion

Sexilog - ISO Image mit fertig ELK Stack

Eine einfache Lösung auf dem Weg zum fertigen Logserver stellt das aus Frankreich stammende SexiLog dar. Das OpenSource Projekt bietet Nutzern von ESXi-Hosts und vCenter-Servern ein fertiges VMware Image an, welches vom ersten Start weg Logs auswertet und grafisch darstellt. 

sexilog-banner

Die vorkonfigurierte Umgebung bietet alles, was für eine Überwachung und Auswertung von Log Dateien notwendig ist. Durch die freien Komponenten bietet sich SexiLog für kleinere Umgebung an, bei denen nicht allzuviel Geld für eine Loginumgebung vorhanden ist.

Installation SexiLog

Die Open Source Lösung steht als OVA Image zur Verfügung und muss lediglich in die eigene Umgebung importiert bzw. bereitgestellt werden.

OVF-Vorlage_bereitstellen

Sollte beim Import etwas schief gehen oder Fehlermeldungen auftauchen, verweise ich auf den erst neulich veröffentlichen Artikel zum Thema OVA Import.

Nach einer erfolgreichen Bereitstellung kann SexiLog via SSH konfiguriert werden. Der Standardzugang ist "root" mit dem Passwort "Sex!Log".

SexiLog-Konsole

In der Konsole können die Netzwerkeinstellungen und das Mailsetting angepasst werden.

Ist dieser Schritt vollzogen, muss nur noch dem ESXi Server bzw. dem vCenter mitgeteilt werden, wohin die Logdaten weitergereicht werden sollen. Dazu muss unter Konfiguration "erweiterte Einstellungen" aufgerufen werden, hier in das Untermenü "Syslog/global" wechseln.

In diesem Bereich muss unter Syslog.global.logHost die URL udp://logserveradresse:514 angepasst werden.

syslog

SexiLog starten

Das System startet automatisch, sobald alles eingerichtet ist, kann unter der zuvor eingerichteten IP Adresse die Kibana Oberfläche aufgerufen werden.

 sexilog-kibana

SexiBoards - Alles im Blick

Die Kibana Obefläche visualisiert Logs auf verschiedenen Boards. Das VMware Image liefert für verschiedene Events ganze 18 Übersichten. Neben der Startseite "SexyHome" existieren Seiten für vMotion, Veeam, VIM, IOPS, VSAN, Migration, Downtime, usw. Einen Überblick ist hier zu finden.

Fazit

SexiLog ist im jetztigen Stadium sicherlich eine der besten Lösungen, wenn es um das Auswerten von Log auf OpenSource Basis geht. Das VMware Image hat fast alle Mittel an Bord, die zu einer lückenlosen Auswertung dazugehören.

Wie so oft wird das Thema Sicherheit etwas stiefmütterlich behandelt. So fehlt in der Version 0.99g noch ein Unterstützung für SSL oder ein Login Formular für die Hauptseite. Hier muss der Nutzer entweder selbst Hand anlegen oder auf das nächste Release warten.

Wer einen fertig konfigurierten ELK Stack für virtuelle Hosts sucht, ist mit SexiLog sicherlich auf dem richtigen Weg.

Eigene Distribution - freie Tools um Live CDs oder Backups von Linux Installationen zu erstellen

Vor einiger Zeit hatte ich im Blog auf Remastersys hingewiesen. Mit dem Tool war es möglich Live CDs seiner Ubuntu Installation zu erstellen.
Leider wird das Projekt vom Entwickler nicht weiter verfolgt. Auf älteren Systemen ist es zwar weiterhin anwendbar, dennoch ist bei neueren Ubuntu Systemen eine Alternative notwendig.

Hier ein paar Möglichkeiten, eine Sicherung eures Linux Systems zu erstellen. Auch bootbare ISO Dateien, also Live CDs sind möglich.

Freie Tools für Live CDs oder Backups von Linux Installationen

Systemback

Bei Systemback handelt es sich um ein klassisches Backup Tool, welches unter anderem Wiederherstellungspunkte erstellen kann. Ebenso eignet es sich gut für das Erstellen einer persönlichen Live CD. Hier wird einfach ein Abbild des vorhandenen Systems auf die Festplatte geschrieben. 

systemback

Das Programm integriert auf Wunsch das Home Verzeichnis und erstellt ein ISO Datei, welche auf CD gebrannt oder auf einen USB Stick kopiert werden kann.
Bei der Verwendung von Ubuntu Desktop ist mit dem Startup Disk Creator das richtige Tool schon mit an Bord.

Installation Systemback auf Ubuntu Systemen

 sudo add-apt-repository ppa:nemh/systemback
 sudo apt-get update
 sudo apt-get install systemback

ubuntu-live-cd

Distroshare Ubuntu Imager

Ein andere Variante bietet DistroShare. Es handelt sich dabei um ein Skript, welches auf der offiziellen Ubuntu Seite zu finden ist. Schon Remastersys setzte auf ähnliche Weise darauf.

Im Prinzip muss nur das Script heruntergeladen und ausgeführt werden.

Hier geht es zur Projektseite.

Installation Distro Ubuntu Imager

Bevor das Script ausgeführt wird, können über eine Config Datei "distroshare-ubuntu-imager.config" weitere Anpassungen vorgenommen werden.

sudo ./distroshare-ubuntu-imager.sh

Danach sollte das Image auf einen USB Stick geschoben werden, dass geht am einfachsten mit dem dd Befehl
In diesem Beispiel ist sdb euer Stick.

dd if=isoimage.iso of=/dev/sdb bs=1M

Die Entwickler weisen darauf hin, dass der Ubuntu Startup Disk Creator nicht funktioniert. Sie empfehlen Unetbootin oder ähnliches.

Distroshare - Eigenkreationen für die Masse

Wer seine selbst erzeugten Distributionen teilen möchte, der kann dies unter distroshare.com tun.

distroshare

Altes Eisen

Es gibt noch weitere Image Tools für Linux Systeme. Diese sind teilweise kommerziell oder wurden seitens der Entwickler auf Eis gelegt. Somit besteht nicht immer eine Garantie, dass diese Programme auf aktuellen Systemen funktionieren. Vorenthalten möchte ich sie euch dennoch nicht.

SystemImager

Ein inzwischen kommerzielles Programm ist der System Imager. Das Tool erstellt wie seine Kollegen ein komplettes Abbild des Systems. 
Es handelt sich dabei um einen kommerziellen Fork von Remastersys.

ReLinux

ReLinux ist bei Version 0.4 stehen geblieben,  Laut Entwickler sollte es in Python umgeschrieben werden. Die Debian Pakete für die letzte Version sind immerhin noch zu haben. Eine Python Version konnte ich nicht ausfindig machen.

relinux

Ubuntu Builder

Der Ubuntu Builder bietet eine weitere Möglichkeit individuelle Ubuntu Live CDs zu erstellen. 
Leider ist das PPA auch hier nicht mehr auf dem aktuellsten Stand und bietet offiziell nur eine Unterstützung für Ubuntu 12.04/12.10. Probiert selbst aus, ob der Builder noch auf Ubuntu 14.04/15.04 lauffähig ist. Laut meinen Recherchen wurde dieses Projekt ebenfalls eingestellt.

sudo add-apt-repository ppa:f-muriana/ubuntu-builder
sudo apt-get update
sudo apt-get install ubuntu-builder

Fazit

Wie unschwer zu erkennen ist, sind nur zwei Image Tools für eine eigene Live CD relevant. Systemback und Distro Ubuntu Imager.

Ersteres hat Dank seiner Oberfläche für Desktop Nutzer sicherlich den größeren Vorteil. Systemback wurde auf einem Ubuntu 15.04 Desktop System in Verbindung mit dem Image Creator und einem USB Stick getestet und hat ohne Probleme funktioniert. es bekommt smoit eine klare Empfehlung.

Das erwähnte Image Script bietet sich für Serverinstallationen an. Testen konnte ich dies allerdings noch nicht,. Ich denke jedoch, dass die Erstellung einer Systemkopie ebenso einfach von der Hand geht, wie mit einer GUI Variante.