Skip to content

Admin Panels Part1: Ajenti - Mit Python zur einfachen Serververwaltung

Für eine einfache und übersichtliche Linux Server Verwaltung greifen viele zu Admin Oberflächen. 
Diese erleichtern Administratoren den Überblick und ermöglichen anderen Nutzer beispielsweise Leistungsdaten abzufragen, Dienste zu starten oder Skripte auszuführen.
Auf dem Markt existieren viele solcher Tools, einige davon möchte ich hier in einer fortlaufenden Serie vorstellen. Den Anfang macht

Ajenti

ajenti

Das Tool ist in Python geschrieben und in einer freien und professionellen Version verfügbar. Wobei die freie Version von jedem gentutzt werden kann, lediglich für das Einbetten in Hardware wird eine Lizenz fällig.

Das Admin Panel bietet dank API und Plugins viele Erweiterungsmöglichkeiten. Neuester Streich ist Ajenti V, welches sich als Webhosting Modul präsentiert, momentan aber noch in einer Beta Phase steckt.

ajenti-funktionen

Ajenti selbst stellt in einer übersichtlichen Menüleiste Systemdaten, Software. Werkzeuge und Tools zur Verfügung, welche sich individuell für Nutzer zusammenstellen lassen. Diese werden dann auf dem Dashboard eingeblendet (siehe Screenshot).

Die Bedienung ist selbsterklärend. Verpflichtend sollte aber im ersten Schritt das Standardpasswort angepasst werden. Wer keine anonymen Daten senden möchte, sollte auch diesen Punkt in der Benutzerverwaltung deaktivieren.

Ajenti in Ubuntu installieren

Das Admin Werkzeug ist für die bekannten Linux Distributionen (Debian, CentOS, FreeBDS) erhältlich und lässt sich relativ leicht installieren.

wget http://repo.ajenti.org/debian/key -O- | sudo apt-key add -

echo "deb http://repo.ajenti.org/ng/debian main main ubuntu" | sudo tee -a /etc/apt/sources.list

sudo apt-get update && sudo apt-get install ajenti

Ajenti kommt von Haus aus mit HTTPS auf Port 8000, darum muss während der Installation ein Zertifikat generiert werden.

:: Generating key

Generating RSA private key, 2048 bit long modulus
..............................................................................................+++
...........................................+++
e is 65537 (0x10001)

:: Generating certificate request


:: Removing passphrase

writing RSA key

:: Generating certificate

Signature ok
subject=/C=US/ST=NA/L=Nowhere/O=Acme Inc/OU=IT/CN=ajenti.example.de
Getting Private key
:: SSL configured!
------------------------------------------------
Now start Ajenti with 'service ajenti restart'
Ajenti will listen on HTTPS port 8000 by default

Default username : root
Default password : admin

Nun noch ein Neustart und fertig ist die frisch gebackene Admin Oberfläche, welche unter https://ajenti.example.de:8000 erreichbar ist.


sudo service ajenti restart

Stopping Ajenti:
  stopped
Starting Ajenti:
17.06.2015 14:54 INFO  Using config file /etc/ajenti/config.json
 
started

Wie der Ausgabe oben zu entnehmen ist können in der Datei config.json weitere Konfigurationen vorgenommen werden.


Ajenti lässt sich ebenfalls hinter einem Apache oder Nginx betreiben.

Apache und Ajenti

Folgende Module samt Konfiguration werden auf einem Apache benötigt.

sudo a2enmod proxy proxy_connect proxy_http headers

Durch den absoluten Ajenti Pfad, stellt die Apache Konfiguration keine große Herausforderung dar.

RequestHeader set Origin http://localhost:8000
ProxyPass /ajenti http://localhost:8000/
ProxyPassMatch ^/(ajenti:.*)$ http://localhost:8000/$1
ProxyPassReverse /ajenti /

Nginx und Ajenti

Gleiches gilt für für die Server Konkurrenz Nginx, auch hier ist ein Betrieb einfach umzusetzen

server {
    client_max_body_size 20m;

    location ~ /ajenti.* {
        rewrite (/ajenti)$ / break;
        rewrite /ajenti/(.*) /$1 break;
        proxy_pass http://127.0.0.1:8000;
        proxy_redirect / /ajenti/;
        proxy_set_header Host $host;
        proxy_set_header Origin http://$host; 
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $http_connection;
    }
}

Weitere Installations und Arbeitstipps lassen sich in der Dokumentation finden.

Fazit

Ajenti wirkt aufgeräumt und bringt dank seines Python Backend keinen unnötigen Balast mit auf den Server. Es ist zwar nicht ganz so schlank, wie das im Frühjahr vorgestellte Linux Dash, beherrscht dafür aber den direkten Eingriff aufs System und bietet somit um ein vielfaches mehr Möglichkeiten.Wer nur auf Performance Daten aus ist, der sollte auf das bereits erwähnte Linux Dash zurückgreifen.

 

ajenti


Das könnte dich auch interessieren

Linux Dash - Schlanke Server Überwachung auf Ubuntu installieren

Firefox, Chrome & Co schnell und ohne Werbung - kein Problem via Host Datei

Wie landläufig bekannt sein dürfte, lässt sich Werbung und Co gut und günstig durch das Plugin AdBlock und dessen Derivate blockieren. Leider ist ebenso bekannt, dass dieses zu einem starken Performanceverlust führt, denn das Addon hat sich über die Jahre von einer flotten Biene zu einem lahmen Käfer entwickelt.

Werbung via Host Datei deaktivieren

Die schnellste und einfachste Methode oder Alternative Werbung zu blockieren ist es, die Host Datei eines Rechners zu bearbeiten.

Diese liegt bei Windows Installationen unter "C:\Windows\System32\drivers\etc\hosts" und bei Linux unter "etc/hosts".

Dort werden Einträge von bekannten Werbenetzwerken oder Trackern hinterlegt, welche auf den lokalen Rechner zeigen und somit nicht mehr erreichbar sind.

z.B.

host

Ein recht vollständige Liste solcher Adressen lässt sich unter someonewhocares.org/hosts finden. Diese Hostdatei kann komplett eingebunden werden oder eben Teile davon. Einfach mit dem Notepad++ editieren und Einträge einfügen.

Danach sollte eurer Browser wieder schneller sein und 90% der Werbung nicht angezeigt werden. Addons wie Ad-block, Ghostery oder Disconnect sind somit nicht zwingend nötig.

Für den Profi 

Der Fachmann hinterlegt so eine Liste auf dem Router und blockiert solche Werbeadressen für das gesamte Netzwerk.

Host Verwaltung 

Für eine fachgerechte Verwaltung unter Windows Systemen bietet sich das Tool Hostsman an. Damit lässt sich die Hostdatei aktivieren bzw. deaktivieren oder auf Duplikate überprüfen.

hostsman

Dan Pollocks Host Datei gibt es in einer 127.0.0.1 oder einer 0.0.0.0 Variante. Zusätzlich steht auch eine IPv6 Version zur Verfügung. 

SSH-Clients: PuTTYs große Geschwister KiTTY, TuTTY und MTPuTTY

Der bekannte SSH Client PuTTY hat in der letzten Woche eine Update erhalten. Mit PuTTY 0.63 wurden laut heise, diverse Schwachstellen behoben, es handelte sich um Fehler in der Modmul-Funktion, bei der Behandlung von Public-Key-Signaturen, Buffer-Überläufe beim Verifizieren von DSA-Signaturen und beim Entsorgen sensibler Daten wie Session-Schlüssel, Passphrases und privater Schlüssel. Es ist also sinnvoll ein Update zu machen.

KiTTY

Für PuTTY existiert seit längerem ein Fork namens KiTTY, dieser bietet zu den üblichen SSH Features weitere nützliche Funktionen. So wird ein Session Filter angeboten, womit sich Logins in verschiedenen Ordnern ablegen lassen. Das Tool bindet sich in die Taskleiste ein ("kitty.exe -launcher") und erlaubt den Schnellstart einzelner Sessions. Zugriffe lassen sich über Auto-Login und Login-Script automatisieren ("Connection/Data“) und das Arbeiten wird durch Tastenkombinationen erleichtert, so dupliziert z.B. "Strg+Shift" die aktuelle Sitzung.

Durchaus praktisch ist auch die portable Version, welche alle Daten direkt in einer kitty.ini speichert, diese muss dazu im gleichen Verzeichnis wie kitty.exe mit dem Inhalt

[KiTTY]
savemode=dir

angelegt werden.

Das Tool wird regelmäßig aktualisiert, die aktuellste Version steht zwar noch aus, sollte aber bald nachgeliefert werden. Download KiTTY

KiTTY

TuTTY

Die meisten hier werden so etwas wie ein Nullmodem-Kabel oder ein serielles Modem gar nicht mehr kennen. Es soll aber Menschen geben, die darüber eine Remoteverbindung aufbauen möchten. Normalerweise würde dies Microsofts Tool Hyperterminal übernehmen. Aufgrund der mangelnden Funktionen ist es jedoch sinnvoll auch hier auf einen PuTTY Clon zurückzugreifen.

Genau das Selbe dachte sich der Entwickler von TuTTY und baute eine Version, die über einen seriellem COM Port eine Verbindung zu einem Konsolenport durchführen kann. Was will man mehr. Leider basiert dieses Tool noch auf PuTTY 0.60.2.0 und ist sicherheitstechnisch mit Vorsicht zu genießen. Download TuTTY

MTPuTTY (Multi-Tabbed PuTTY)

Wer PuTTY noch komfortabler nutzen möchte, kann MTPuTTY verwenden, dabei handelt es sich um eine mit Tabs erweiterte PuTTY Version. Multi-Tabbed PuTTY greift auf die aktuelle installierte PuTTY Version zurück und ist somit immer aktuell.

Als weitere Alternative bietet sich hier mRemoteNG 1.70 an, dieses Tool hatte ich bereits 2010 hier im Blog erwähnt. Die Anwendung beherrscht neben SSH auch RDP, VNC, Telnet und Co und zählt immer noch zu meinen Favoriten. Wer jedoch nur SSH nutzt, ist mit MTPuTTY sicherlich ausreichend versorgt. Download MTPuTTY

MTPuTTY

Extension Manager für Chrome: Erweiterungen verwalten, abschalten oder konfigurieren

Chrome hat laut Aussagen von Futuremark den Konkurrenten Firefox inzwischen überholt. Ich selbst benutze beide Browser für verschiedene Aufgaben. Im alltäglichen Gebrauch ist die Erweiterungsverwaltung der zwei Platzhirsche immer noch etwas störend. Firefox benötigt ständig Neustarts und bei Chrome fehlt der schnelle Zugriff.

Glücklicherweise gibt es für den Google Browser Lösungen um Add-ons schnell und einfach zu verwalten oder bei Bedarf zu deaktivieren.

Chrome Extension Disabler

Wer eine Möglichkeit sucht, Erweiterungen per Klick zu aktivieren bzw. zu deaktivieren, für den stellt der Extension Disabler wohl die beste Lösung dar. Das Add-on bindet sich als Power Button in die Erweiterungsleiste ein und listet alle installierten Extensions auf, diese lassen sich mit nur einem Klick deaktivieren.

Download

extension-disabler

Chrome Extension Manager

Benötigt man neben dem An und Ausschalten von Erweiterungen noch zusätzlich Funktionen, dann fällt die Wahl auf den Extension Manager aka Switcher.  Diese Erweiterung managt nicht nur Add-ons, sondern zusätzlich Themes und Apps. Zusätzlich kann schnell auf die Webseite oder Konfiguration einzelner Anwendungen zugegriffen werden, auch die Aktualität wird überwacht. Die Einbindung in Chrome erfolgt wie beim Extension Disabler über die Erweiterungsleiste.

switcher

Download

mRemoteNG - Remote Verbindungen verwalten

Vor fast einem Jahr hatte ich über mRemoteNG berichtet, der Open Source Nachfolger von mRemote dient dem Verwalten von Remoteverbindungen.  Das Tool spricht somit Menschen an, die über Terminalserver arbeiten oder per VPN auf Server mittels Remotedesktopverbindung oder ssh zugreifen usw.
Das kleine praktische Tool unterstützt nicht nur viele Protokolle
  • RDP (Remote Desktop/Terminal Server)
  • VNC (Virtual Network Computing)
  • ICA (Citrix Independent Computing Architecture)
  • SSH (Secure Shell)
  • Telnet (TELecommunication NETwork)
  • HTTP/HTTPS (Hypertext Transfer Protocol)
  • rlogin
  • Raw Socket Connections

sondern wurde nun auch auf eine neue Version 1.66 aktualisiert.

mRemote

Seit dem Bericht vor einem Jahr wurde einiges gefixt und verbessert. Unter anderem kann das Programm nun Deutsch. Hier der Changelog seit Version 1.63:

  Fixed connections not working
  Fixed Ctrl-Tab and Ctrl-Shift-Tab not working in any other applications while mRemoteNG is running
  Ctrl-Tab and Ctrl-Shift-Tab no longer work to switch tabs within mRemoteNG
  Fixed bug 36 - Install creates shortcuts only for the installing user
  Fixed bug 38 - Application uses the wrong Application Data settings folder (in Local Settings)
  Added code to the installer to check that the user is in the 'Power Users' or 'Administrators' group
  Fixed bug 6 - VNC CTRL+key & keyboard combo mappings are broken
  Fixed bug 12 - Tab switch is not working in config panel
  Fixed bug 14 - RDP Connection authentication problem
  Fixed bug 22 - External App parameter macro expansion doesn't work with "try to integrate"
  Fixed bug 25 - Unhandled exception when mRemoteNG opens
  Added multilanguage support and German translation to the application
  Added Czech, Dutch, French, German, Polish, and Spanish translations to the installer
  Added Ctrl-Tab hotkey to switch to the next tab and Ctrl-Shift-Tab to switch to the previous tab
  Added Tab key to cycle through entries in the Config grid and Shift-Tab to cycle in reverse
  Added ability to configure external tools to run before or after a connection is established
  Fixed missing parameters in macro expansion for external tools
  Fixed RD Gateway and other inheritance bugs
  Changed how new connection files are created
  Changed the internal namespace of the application to mRemoteNG instead of mRemote
  Added credit for the DockPanel Suite to the About page
  Updated DockPanel Suite to version 2.5 RC1
  Updated VNCSharpNG to correct Ctrl and Alt key pass-through behavior

Insgesamt ist mRemoteNG immer noch eine gute Alternative zu kommerziellen Lösungen oder einfach eine zentrale Verwaltung für Putty, RDP und Co. Also scheut euch nicht das Tool herunterzuladen und auszuprobieren. Solltet ihr bereits eine ältere Version installiert haben und auf die neue aktualisieren, empfiehlt es sich die Konfigurationsdatei im Vorfeld zu sichern, das sonst die Einstellungen verloren gehen.