Skip to content

Ubuntu - immer Up2date mit unbeaufsichtigten Updates

Die Woche war lang und das Wochenende hat schon einen Fuß in der Tür. 
Dennoch ein kleiner Tipp zum Freitag.

Damit ein System auf einem aktuellen Stand bleibt und keine Sicherheitslücken aufweist, müssen regelmäßig Updates installiert werden.
Dies kann händisch via apt-get upgrade oder mit Orchestrierungs- Lösungen alà Landscape (siehe Artikel), Ansible und Co gelöst werden.


Ubuntu selbst bringt allerdings ebenfalls Funktionen mit, ein System mit den neuesten Updates zu versorgen.
Bei kleinen Netzwerken mit drei bis vier Ubuntu Systemen, bietet sich diese Möglichkeit durchaus an, denn Landscape und Co wären hier zuviel des Guten.

Unattended Updates unter Ubuntu nutzen

Das Paket "unattended-upgrades" ermöglicht die automatische Installation von Updatepaketen.
Aber nicht nur die Installation, sondern auch Neustarts und Prioritäten von Updatepaketen können darüber definiert werden.

unattended-updates-einrichtungBevor das Paktet konfiguriert werden kann, sollte es installiert werden.

sudo apt-get install unattended-upgrades apt-listchanges

Nach der Installation wird eine Config Datei benötigt. Diese kann händisch angelegt werden oder automatisch mit

sudo dpkg-reconfigure -plow unattended-upgrades

Creating config file /etc/apt/apt.conf.d/20auto-upgrades with new version

angelegt werden. Hier erscheint eine zusätzliche Abfrage auf dem Bildschirm (siehe Screenshot).

Bei einem Blick auf die nun generierte Datei finden sich ein paar Einträge.

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

 
Hier muss eigentlich Nichts weiter angepasst werden.
Nutzer die bereits apticron in Verwendung haben, könnten die erste Zeile theoretisch entfernen, da über dieses Paket bereits die Listen regelmäßig aktualisiert werden

Konfiguration von unbeaufsichtigten Updates

Jedoch wird eine weitere Datei angelegt, in der diverse Einstellungen gemacht werden sollten.

sudo nano /etc/apt/apt.conf.d/50unattended-upgrades

  • In diesem Beispiel werden nur Sicherheitsupdates automatisch installiert.
  • Danach wird eine Mail an root versendet.
  • Im Fehlerfall wird ebenfalls eine Nachricht versendet (der Punkt // Unattended-Upgrade::MailOnlyOnError "true"; sollte auskommentiert bleiben).
  • Nicht mehr verwendete Abhängigkeiten werden mit diesen Einstellungen automatisch entfernt.
  • Um den automatischen Updatevorgang abzuschließen, wird das System um 3:30 Uhr neu gestartet.

Alle aktiven Punkte sind fett markiert.



// Automatically upgrade packages from these (origin:archive) pairs
Unattended-Upgrade::Allowed-Origins {

"${distro_id}:${distro_codename}-security";

//      "${distro_id}:${distro_codename}-updates";
//      "${distro_id}:${distro_codename}-proposed";
//      "${distro_id}:${distro_codename}-backports";

};


// This option allows you to control if on a unclean dpkg exit
// unattended-upgrades will automatically run
//   dpkg --force-confold --configure -a
// The default is true, to ensure updates keep getting installed
//Unattended-Upgrade::AutoFixInterruptedDpkg "false";

// Split the upgrade into the smallest possible chunks so that
// they can be interrupted with SIGUSR1. This makes the upgrade
// a bit slower but it has the benefit that shutdown while a upgrade
// is running is possible (with a small delay)
//Unattended-Upgrade::MinimalSteps "true";

// Install all unattended-upgrades when the machine is shuting down
// instead of doing it in the background while the machine is running
// This will (obviously) make shutdown slower
//Unattended-Upgrade::InstallOnShutdown "true";

// Send email to this address for problems or packages upgrades
// If empty or unset then no email is sent, make sure that you
// have a working mail setup on your system. A package that provides
// 'mailx' must be installed. E.g. "user@example.com"

Unattended-Upgrade::Mail "root";

// Set this value to "true" to get emails only on errors. Default
// is to always send a mail if Unattended-Upgrade::Mail is set
// Unattended-Upgrade::MailOnlyOnError "true";

// Do automatic removal of new unused dependencies after the upgrade
// (equivalent to apt-get autoremove)

Unattended-Upgrade::Remove-Unused-Dependencies "true";

// Automatically reboot *WITHOUT CONFIRMATION*
//  if the file /var/run/reboot-required is found after the upgrade
//Unattended-Upgrade::Automatic-Reboot "false";

// If automatic reboot is enabled and needed, reboot at the specific
// time instead of immediately
//  Default: "now"

Unattended-Upgrade::Automatic-Reboot-Time "03:30";

// Use apt bandwidth limit feature, this example limits the download
// speed to 70kb/sec
//Acquire::http::Dl-Limit "70";

Viel mehr muss nicht konfiguriert werden. Sollte ein Update gelaufen sein, wird automatisch eine E-Mail versendet, welche über die gelaufenen Updates oder entstandene Fehler informiert.

unattended-updates-linux


 

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

 

Lesestoff - Kali Linux Kochbuch mit 70 Rezepten umsonst zu haben

Drüben bei Tradepub wird momentan das Kali Linux Cookbook umsonst zum Download angeboten. Das Buch kann, nachdem man irgendwelche Dinge in ein Formular eingetragen hat, via Mail Link heruntergeladen werden.

Der interessierte Leser erhält nach dem Download ein Buch im PDF Format von 2013, welches den grundlegenden Umgang mit Kali Linux erklärt. Von der Installation bis zur Nutzung von OpenVAS, Metasploit oder Nessus. Auch Passwort oder WLAN Attacken werden behandelt. Von allem etwas würde ich auf den ersten Blick schätzen.

Kali_Kochbuch

Durch das Alter sind einige Dinge sicherlich nicht mehr aktuell, für den "Preis" schadet ein Blick allerdings nicht. Das E-book ist auf Englisch, wie Kali Linux selbst auch. Viel Spaß beim Lesen.

Der Download Link wurde auf maildrop.cc hinterlegt, damit erspart ihr euch das Formular ausfüllen.

Debian 8 Administrator Handbuch mit Systemd und AppArmor

Das Release des Debian Administrator Handbuchs war zwar schon vor einem Monat, soll hier aber nicht unerwähnt bleiben.

Das übersichtliche Nachschlagewerk von Raphaël Hertzog und Roland Mas bringt in der aktualisierten Version 8 Jessie zwei neue Kapitel mit.
Zum einen wird in Kapitel 9 nun neben dem klassischen System V init System auch auf systemd eingegangen, zum anderen hat mit AppArmor das Mandatory Access Control System unter Kapitel 14 einen Platz erhalten.

Debian-Handbuch

Das Handbuch kann auf deutsch oder englisch online eingesehen werden. Es steht aber ebenso als PDF oder Epub zum Download bereit.

Das Buch ist sowohl an Debian Anfänger als auch an Erfahrene gerichtet, aber auch für debian basierte Systeme wie Ubuntu, Mint oder ElementaryOS geeignet.

Die Sammlung bietet für jeden etwas, da sie auf alle wichtigen Punkte eines umfangreichen Debian Servers wie beispielsweise Installation, Paketverwaltung oder Einrichtung von Netzwerk, LVM, DHCP/DNS, Apache, Postfix, LDAP eingeht.

Debian Handbuch


Das könnte dich auch interessieren
 

VeraCrypt - Schneller Bootvorgang trotz Zwei-Faktor-Authentifizierung mit Passwort und PIM

Das Verschlüsselungstool VeraCrypt hat sich mehr oder weniger als inoffizieller Truecrypt-Nachfolger etabliert.
Seit der Version 1.13 (aktuell ist 1.16) verlangt VeraCrypt neben dem Verschlüsselungspasswort beim Booten eine PIM. Doch was ist das eigentlich genau?

VeraCrypt

Was ist PIM und wofür wird es benötigt?

PIM steht für Personal Iterations Multiplier und bezeichnet die Iterationen der sogenannten Header Key Derivation Funktion.

Diese Funktion ist für die Ver- und Entschlüsselung der VeraCrypt Volumen Header zuständig.
Ist der PIM Wert nicht gesetzt, wird automatisch ein Standardwert im Hintergrund gesetzt, dieser liegt bei 98. Beim Booten ist hier keine Eingabe nötig.
VeraCrypt berechnet die Wiederholungen mit PIM x 2048. Beim Standardwert für Systemplatten wären das 200 000 Durchläufe.

98 x 2048 = 200 000

Bei normalen Partitionen ist dieser PIM Wert mit 485 sogar noch höher.

15000 + (485 x 1000) = 500 000

Gerade bei alten Rechnern oder schwachbrüstigen Maschinen kann dies bei einer verschlüsselten Systemfestplatte den Bootvorgang ausbremsen.

Einerseits besteht durch PIM und Passwort eine Zwei-Faktor-Authentifizierung und somit auch ein Brut Force Schutz, allerdings ist der Startvorgang auch ohne die Verwendung eines selbstgewählten PIM Wertes durch den Standardwert verzögert, dies kann jedoch geändert werden.

Bootvorgang verkürzen, System dennoch sicher halten

Eine Verschlüsselung ist immer nur so stark, wie das Passwort, welches dafür verwendet wird. VeraCrypt erlaubt es den PIM Wert anzupassen. Voraussetzung dafür ist aber ein Passwort länger als 20 Zeichen. Ansonsten wird der Standard von 98 (entspricht 200 000 Durchläufen) für Systempartitionen und für sonstige Platten von 485 (entspricht 500 000 Durchläufen) verwendet.

Für einen schnelleren Bootvorgang kann bei einem langen Passwort durchaus eine PIM Wert von 10 oder 20 verwendet werden, aber auch 3 oder 5. Wichtig ist eben die ausreichende Länge der Passworts und ein PIM Wert über 1!

Um einen festen PIM Wert zu hinterlegen, muss die gewünschte Partition markiert werden.

Danach einfach den Menüpunkt System und den Bereich Kennwort ändern öffnen.

Passwort-Veracrypt

Nun sollte der Haken bei PIM verwenden gesetzt werden. Ebenso wird ein Wert unter Volume PIN benötigt. In diesem Beispiel habe ich 3 verwendet. Dies klingt nicht sonderlich hoch, reicht aber bei einem Passwort über 20 Zeichen und dem Hausgebrauch aus.

PIM-Veracrypt

Beim nächsten Neustart oder Mounten müsst ihr die PIM in jedem Fall angeben, sonst wird die Festplatte nicht geladen, also besser nicht vergessen. Kleiner Tipp, im Vergleich zu Truecrypt, erlaubt VeraCrypt beim Windows Bootvorgang mit F5 das Anzeigen des eingetippten Passworts (auf eigene Gefahr). 

Linux Nutzer müssen momentan noch auf eine Verschlüsselung der Systemplatte mit VeraCrypt verzichten. Container sind jedoch möglich.

Nun sollte einer sicheren und schnellen Festplattenverschlüsselung in Post Truecrypt Zeiten Nichts mehr im Wege stehen.

veracrypt download