VMware Tools auf Ubuntu, Mint, CentOS oder openSUSE installieren

In virtuellen Umgebungen ist es sinnvoll VMware Tools auf den vorhandenen Systemen zu installieren.
Neben der offiziellen Version von VMware genügt es bei Linux Maschinen die freie Variante zu installieren.

Gibt es einen Unterschied zwischen den offiziellen VMware Tools und open-vm-tools?

Im Prinzip nicht. VMware hat seine Software als Open Source Software freigegeben. Diese wurde unter dem Namen open-vm-tools in viele Distributionen integriert.


 

VMware Tools auf Windows installieren

Für Windows Systeme genügt es einen Rechtsklick auf die VMware Maschine zu machen und die Auswahl VMware Tools installieren im Untermenü Gast zu wählen.

vmware-tools-windows


 

Vmware Tools auf Ubuntu (14.04) oder Mint installieren

Unter Ubuntu werden die Tools mitgeliefert, hier reicht es folgendes einzugeben:

sudo apt-get install open-vm-tools

Troubleshooting Vmware Tools Ubuntu Installation

Es kann vorkommen, dass Ubuntu den xorg Server installieren will, obwohl dieser nicht aktiv ist.

The following extra packages will be installed:
  cvs debhelper defoma diffstat ethtool fontconfig fontconfig-config gettext hicolor-icon-theme html2text intel-gpu-tools intltool-debian libatk1.0-0 libatk1.0-data libcairo2 libcairomm-1.0-1 libcroco3
  libdatrie1 libdirectfb-1.2-0 libfontconfig1 libfontenc1 libgl1-mesa-dri libglibmm-2.4-1c2a libgtk2.0-0 libgtk2.0-bin libgtk2.0-common libgtkmm-2.4-1c2a libice6 libicu42 libjasper1 libmail-sendmail-perl
  libpango1.0-0 libpango1.0-common libpangomm-1.4-1 libpciaccess0 libpixman-1-0 libsm6 libsys-hostname-long-perl libsysfs2 libthai-data libthai0 libtiff4 libts-0.0-0 liburiparser1 libxaw7
  libxcb-render-util0 libxcb-render0 libxcomposite1 libxcursor1 libxdamage1 libxfixes3 libxfont1 libxft2 libxi6 libxinerama1 libxkbfile1 libxmu6 libxpm4 libxrandr2 libxrender1 libxss1 libxt6 libxtst6 libxv1
  libxvmc1 module-assistant open-vm-source open-vm-toolbox po-debconf quilt shared-mime-info tsconf x-ttcidfont-conf x11-common x11-xkb-utils xfonts-base xfonts-encodings xfonts-utils xserver-common
  xserver-xorg xserver-xorg-core xserver-xorg-input-evdev xserver-xorg-input-mouse xserver-xorg-input-vmmouse xserver-xorg-video-all xserver-xorg-video-apm xserver-xorg-video-ark xserver-xorg-video-ati
  xserver-xorg-video-chips xserver-xorg-video-cirrus xserver-xorg-video-fbdev xserver-xorg-video-i128 xserver-xorg-video-intel xserver-xorg-video-mach64 xserver-xorg-video-mga xserver-xorg-video-neomagic
  xserver-xorg-video-nouveau xserver-xorg-video-nv xserver-xorg-video-openchrome xserver-xorg-video-r128 xserver-xorg-video-radeon xserver-xorg-video-rendition xserver-xorg-video-s3
  xserver-xorg-video-s3virge xserver-xorg-video-savage xserver-xorg-video-siliconmotion xserver-xorg-video-sis xserver-xorg-video-sisusb xserver-xorg-video-tdfx xserver-xorg-video-trident
  xserver-xorg-video-tseng xserver-xorg-video-v4l xserver-xorg-video-vesa xserver-xorg-video-vmware xserver-xorg-video-voodoo zerofree

Anscheinend tritt dieser Fehler bei Ubuntu 12.04 Installationen auf. Hier hilft es den Installationsbefehl zu erweitern.

sudo apt-get install --no-install-recommends open-vm-tools


 

VMware Tools auf openSUSE installieren

Zunächst sollte geprüft werden, welches System in Betreib ist.

cat /etc/os-release

NAME=openSUSE
VERSION="13.1 (Bottle)"
VERSION_ID="13.1"
PRETTY_NAME="openSUSE 13.1 (Bottle) (x86_64)"

VMware Tools auf openSUSE 13.1 installieren

zypper addrepo http://download.opensuse.org/repositories/Virtualization:\
VMware/openSUSE_13.1/Virtualization:VMware.repo

    Adding repository 'VMware tools (openSUSE_13.1)' ................[done]
    Repository 'VMware tools (openSUSE_13.1)' successfully added
    Enabled: Yes
    Autorefresh: No
    GPG check: Yes
    URI: http://download.opensuse.org/repositories/Virtualization:/VMware/openSUSE_13.1/


zypper refresh
Retrieving repository 'VMware tools (openSUSE_13.1)' metadata -------------------------[\]
New repository or package signing key received:
Key ID: xxxx
Key Name: Virtualization:VMware OBS Project <Virtualization:VMware@build.opensuse.org>
Key Fingerprint: xxxxx
Repository: VMware tools (openSUSE_13.1)

Do you want to reject the key, trust temporarily, or trust always? [r/t/a/? shows all options] (r): a
Retrieving repository 'VMware tools (openSUSE_13.1)' metadata ..........[done]
Building repository 'VMware tools (openSUSE_13.1)' cache ...............[done]
All repositories have been refreshed.

zypper install open-vm-tools

VMware Tools auf openSUSE 13.2 installieren

Bei der neuesten Version kann auf die gleiche Weise vorgegangen werden.

zypper addrepo http://download.opensuse.org/repositories/Virtualization:VMware\
/openSUSE_13.2/Virtualization:VMware.repo
zypper refresh
zypper install open-vm-tools



VMware Tools auf CentOS 6.x (x64) installieren

Bei CentOS gilt es verschiedene Varianten zu wählen, dieses Mal wird aber nach ESXi Version unterschieden, da die offiziellen VMware Repos verwendet werden.

VMware Tools für ESXi 5.1

yum -y install http://packages.vmware.com/tools/esx/5.1/repos/vmware-tools-repo-RHEL6-9.0.0-2.x86_64.rpm
yum -y install vmware-tools-esx-nox

VMware Tools für ESXi 5.5

yum -y install http://packages.vmware.com/tools/esx/5.5/repos/vmware-tools-repo-RHEL6-9.4.0-1.el6.x86_64.rpm
yum -y install vmware-tools-esx-nox

VMWare Tools für EXSi 6.0

yum -y install http://packages.vmware.com/tools/esx/6.0/repos/vmware-tools-repo-RHEL6-9.10.0-1.el6.x86_64.rpm
yum -y install vmware-tools-esx-nox

VMware Tools auf CentOS 6 (x32) installieren

 

VMware Tools für ESXi 5.1

yum -y install http://packages.vmware.com/tools/esx/5.1/repos/vmware-tools-repo-RHEL6-9.0.0-2.i686.rpm
yum -y install vmware-tools-esx-nox

VMware Tools für ESXi 5.5

yum -y install http://packages.vmware.com/tools/esx/5.5/repos/vmware-tools-repo-RHEL6-9.4.0-1.el6.i686.rpm
yum -y install vmware-tools-esx-nox

VMWare Tools für ESXi 6.0

yum -y install http://packages.vmware.com/tools/esx/6.0/repos/vmware-tools-repo-RHEL6-9.10.0-1.el6.i686.rpm
yum -y install vmware-tools-esx-nox

Unter der gleichen URL sind ebenfalls die Repositories für CentOS 5.x zu finden, hierzu muss einfach "RHEL6" durch "RHEL5" ersetzt werden.

Nerd Welten: Rainbowstream und Facy - Twitter oder Facebook übers Terminal nutzen

Seit dem letzten Artikel sind schon wieder ein paar Tage vergangen, ich schiebe es mal auf den Sommer. Dafür geht es heute um ein richtig nerdiges Thema. 

Facebook oder Twitter über das Terminal nutzen, braucht man das? Vielleicht wenn nur ein Konsole zur Verfügung steht oder der Nerd durchkommt, welcher nicht anders kann....egal, Hauptsache es geht. Aber wie? Das will ich euch heute zeigen.

Rainbowstream - Twitter auf der Konsole nutzen

Der Twitter Client Rainbowstream basiert auf Python, darum muss auf dem Referenzsystem (Ubuntu 14.04) die Python Paketverwaltung installiert sein.

sudo apt-get install python-pip

Installation Rainbowstream

Danach ist die Installation des Client schnell erledigt, die Konfiguration nimmt dafür etwas mehr Zeit in Anspruch. Etwas Geschick mit dem Terminalbrowser w3m ist ebenfalls gefragt, solltet ihr wirklich nur ein Terminal zur Verfügung haben.

sudo pip install rainbowstream

                PIL SETUP SUMMARY
                --------------------------------------------------------------------
                version      Pillow 2.8.2
                platform     linux2 2.7.6 
                             [GCC 4.8.2]
                --------------------------------------------------------------------
                *** TKINTER support not available
                *** JPEG support not available
                *** OPENJPEG (JPEG2000) support not available
                --- ZLIB (PNG/ZIP) support available
                *** LIBTIFF support not available
                *** FREETYPE2 support not available
                *** LITTLECMS2 support not available
                *** WEBP support not available
                *** WEBPMUX support not available
                --------------------------------------------------------------------
                To add a missing option, make sure you have the required
                library, and set the corresponding ROOT variable in the
                setup.py script.

                To check the build, run the selftest.py script.

                changing mode of build/scripts-2.7/pildriver.py from 644 to 755
                changing mode of build/scripts-2.7/pilconvert.py from 644 to 755
                changing mode of build/scripts-2.7/pilfile.py from 644 to 755
                changing mode of build/scripts-2.7/pilfont.py from 644 to 755
                changing mode of build/scripts-2.7/pilprint.py from 644 to 755
                changing mode of /usr/local/bin/pildriver.py to 755
                changing mode of /usr/local/bin/pilconvert.py to 755
                changing mode of /usr/local/bin/pilfile.py to 755
                changing mode of /usr/local/bin/pilfont.py to 755
                changing mode of /usr/local/bin/pilprint.py to 755
              Running setup.py install for PySocks

            Successfully installed rainbowstream python-dateutil arrow pyfiglet twitter Pillow PySocks
            Cleaning up...

Der Start der Software erfolgt nach der Installation einfach mit dem Befehl

rainbowstream

Konfiguration des Clients

Die Terminaloberfläche erklärt euch danach ausführlich die nächsten Schritte, wie Anlegen eines neuen Accounts oder Einloggen mit einem vorhandenen.

Via "Cursor" und "Enter" auf den Text "Twitter" kann zuvor die Sprache ausgewählt werden.

rainbowstream-sprache

Gleiches gilt für andere Texteingaben, in der gewünschten Zeile die Enter Taste betätigen und den Text eingeben.

rainbowstream-anmeldung

Bei der ersten Anmeldung mit euren Zugangsdaten geht ein Browserfenster auf, welche die App für euren Account freischaltet. Solltet ihr einen Server ohne Oberfläche betreiben, geht dies natürlich nicht.

Doch der verwendete w3m Terminal Browser beherrscht Tab Browsing. Denn der API Key wird in einem neuen Fenster angezeigt.

rainbowstream-auth

Ihr solltet ein wenig mit den w3m Befehlen vertraut sein, um zwischen den Fenstern zu wechseln, damit der API Key richtige eingegeben werden kann.

Die wichtigsten w3m Befehle

T    open new tab

C-q    close current tab

{,}    move to next/previous tab

ESC-t    popup tab selection menu

Ein komplette w3m cheat sheet findet ihr hier.

rainbowstream-api-key

Sobald der API Key richtig hinterlegt wurde, kann es mit Rainbowstream und Twitter richtig los gehen.

Rainbowstream bedienen

Nach dem erfolgreichen Registrieren und Einloggen sind natürlich Tastaturbefehle von Nöten.
Angefangen beim Theme Wechsel mit dem Befehl "theme tomorrow_night, solarized, larapaste oder monokai" bis zum ersten Absetzen eines Tweets mit dem einfachen Befehl "t" gefolgt vom Text.

Tweet absetzen: t + text

Trends anzeigen: trends

Hauptseite: home

Retweet: rt + Tweet ID

Zitieren: Quote + Tweet ID + eigener Tweet

Dem Twittern steht nun Nichts mehr im Wege, über "h" kann eine ausführliche Hilfe aufgerufen werden.

rainbowstream-hilfe

Die komplette Liste an Befehlen ist bei den Entwicklern selbst zu finden.

Hier seien noch die richtigen Terminal Befehle erwähnt, damit die Konsole beispielsweise ordnungsgemäß verlassen werden kann.

Terminal Befehle Rainbowstream

h für Hilfe

p für Pause

r für Weiter

c für einen klaren Bildschirm

v für die Version

q für Beenden

rainbowstream-mainFazit

Rainbowstream stellt eine praktische Alternative fürs Terminal dar, dass dadurch Abstriche zum Beispiel in Bezug auf Bilder, gemacht werden müssen ist unvermeidbar. Dafür sorgen die vorhandenen Themes für ein abwechslungsreiches Twitter Erlebnis. 
Die Installation ist mit w3m und dem API Key etwas umständlich aber zu bewältigen.
Dank sinnvoller Tastaturbefehle ist die Bedienung einfach und geht leicht von der Hand. Terminal Freunde werden bei diesem Client nicht "Nein" sagen können.


Facy bringt Facebook auf die Konsole

Auch Facebook lässt sich übers Terminal bedienen, anders als bei Rainbowstream wird anstatt Python dieses Mal Ruby auf der Ubuntu Maschine benötigt. (Ich hatte ja bereits beschrieben wie sich Ruby auf Ubuntu installieren lässt.)

Die Installation ist hier genauso einfach wie beim erwähnten Twitter Client, allerdings wird es bei der Konfiguration etwas kniffliger, da hier ohne richtigen Browser keine Installation möglich ist.

sudo apt-get install ruby ruby-dev libpq-dev

gem install fancy

Der erste Start der Anwendung erfolgt mit dem Befehl "facy"

facy

Facy Konfigurieren

Anders als beim Twitter Client, ist nun zwingend ein richtiger Browser nötig. Zusätzlich wird ein Facebook Developer Account benötigt, denn es muss eine eigene App angelegt werden. 

Die Installation und Konfiguration ist somit über das Terminal leider nicht möglich. Das heißt es muss wie folgt vorgegangen werden

  1. Auf https://developers.facebook.com wechseln
  2. Registrieren und einloggen
  3. Add an new App auswählen
    1. Egal ob Android, Facebook Canvas oder Webseite
  4. Oben Rechts auf Skip and and Create an new App ID klicken
  5. Namen vergeben
  6. App ID erstellen
  7. App ID und App Secret in Fancy hinterlegen.
  8. Eventuell muss bei der App noch an den Zugriffsrechten etwas freigeschaltet werden.

facy-app

Fazit

Bei Facy habe ich irgendwann aufgegeben, da der API Key zusammen mit dem nötigen Secret nicht richtig angenommen wurde. Beziehungsweise angenommen wurden diese schon, aber der generierte Link mit User Token wollte nicht so wie ich...

Mir hat irgendwann die Motivation gefehlt, da die Konfiguration doch etwas aufwendig war. Dadurch, dass Facebook etwas bilderlastiger als Twitter ist, empfinde ich Facebook auf dem Terminal auch nur halb so attraktiv.

Um auf dem aktuellen Stand zu bleiben und den Feed durchtickern zu lassen, ist es sicherlich eine gute Lösung, nur leider nicht für meine Zwecke.

Rkhunter (Rootkit Hunter) und Chrootkit auf Ubuntu installieren, aktualisieren und konfigurieren

Linux Systeme gelten als relativ sichere Systeme, jedoch sind auch sie immer öfter von Backdoors oder Rootkits befallen (aktuelle Beispiele wären hier Jellyfish oder Ebury) 
Es kann somit nicht schaden die eigenen Systeme regelmäßig auf diverse Schädlinge zu untersuchen

Ein Tool, welches seit Langem für diesem Sektor zuständig ist, nennt sich Rkhunter (Rootkit Hunter).
Die OpenSource Software scannt nicht nur euer Linux System nach unerwünschten Gästen, sondern sucht das System auch nach veränderten Dateien oder offenen Ports ab. 

Auch diverse andere Sicherheitseinstellungen sind in den Tests enthalten. Eine Installation schadet somit sicherlich nicht.

rkhunter

Installation von Rkhunter auf Ubuntu 14.04 (Server)

Da Rkhunter in den Ubuntu Repositories enthalten ist, fällt ein Installation über die Paketverwaltung mehr als einfach aus.

sudo apt-get install rkhunter

In den Repositories von Ubuntu 14.04  ist die Version 1.4.0 enthalten, es kann aber auf die aktuelle Version 1.4.2 aktualisiert werden

Rkhunter auf Version 1.4.2 aktualisieren

wget http://downloads.sourceforge.net/project/rkhunter/rkhunter/1.4.2/rkhunter-1.4.2.tar.gz

Test der Checksumme

md5sum rkhunter-1.4.2.tar.gz

Entpacken und installieren

tar xzvf rkhunter*
cd rkhunter
sudo ./installer.sh --layout /usr --install

            Checking system for:
             Rootkit Hunter installer files: found
             A web file download command: wget found
            Starting update:
             Checking installation directory "/usr": it exists and is writable.
             Checking installation directories:
              Directory /usr/share/doc/rkhunter-1.4.2: creating: OK
              Directory /usr/share/man/man8: exists and is writable.
              Directory /etc: exists and is writable.
              Directory /usr/bin: exists and is writable.
              Directory /usr/lib: exists and is writable.
              Directory /var/lib: exists and is writable.
              Directory /usr/lib/rkhunter/scripts: creating: OK
              Directory /var/lib/rkhunter/db: exists and is writable.
              Directory /var/lib/rkhunter/tmp: exists and is writable.
              Directory /var/lib/rkhunter/db/i18n: exists and is writable.
              Directory /var/lib/rkhunter/db/signatures: creating: OK
             Installing check_modules.pl: OK
             Installing filehashsha.pl: OK
             Installing stat.pl: OK
             Installing readlink.sh: OK
             Installing backdoorports.dat: OK
             Installing mirrors.dat: OK
             Installing programs_bad.dat: OK
             Installing suspscan.dat: OK
             Installing rkhunter.8: OK
             Installing ACKNOWLEDGMENTS: OK
             Installing CHANGELOG: OK
             Installing FAQ: OK
             Installing LICENSE: OK
             Installing README: OK
             Installing language support files: OK
             Installing ClamAV signatures: OK
             Installing rkhunter: OK
             Installing rkhunter.conf in no-clobber mode: OK
             >>>
             >>> PLEASE NOTE: inspect for update changes in "/etc/rkhunter.conf.22942",
             >>> and apply to either "/etc/rkhunter.conf" or your local configuration
             >>> file before running Rootkit Hunter.
             >>>
            Update complete

            

Versionsprüfung der Installation

sudo rkhunter --version

Erster Scan mit Rkhunter

Ein erster Scan gibt Erkenntnisse über das System, aber auch über "false positive" Ereignisse oder ähnliches. Diese werden am Ende in einer ausführlichen Zusammenfassung ausgegeben und lassen sich später auch über die Logs abrufen.

sudo rkhunter -c --enable all

rkhunter-zusa

Konfiguration von rkhunter

Sollten Fehler auftreten oder Warnungen angezeigt werden, welche definitiv keine Gefahr darstellen, kann dies unter "/etc/rkhunter.conf" beispielsweise in einer Whiteliste hinterlegt werden.

sudo nano /etc/rkhunter.conf

Auch Emailoptionen und ähnliches lassen sich hier hinterlegen. So kann unter  "MAIL-ON-WARNING="mail@me.de" der gewünschte Ansprechpartner für Warnungen hinterlegt werden.

rkhunter-unhide

Alternativ können Prozesse und Verzeichnisse mit Hilfe einer Whitelist von der Suche ausgeschlossen werden.

Das ist in Bezug auf einzelne Systeme mit verschiedenen Konfigurationen immer sinnvoll.

Automatisieren mit Cron

Um den Scan regelmäßig auszuführen, bietet sich ein Script in Verbindung mit einem Cronjob an.

sudo nano /home/user/rkhunter-auto.sh

 #!/bin/sh
 (
 rkhunter --versioncheck
 rkhunter --update
 rkhunter -c --cronjob -report-warnings-only
 ) | mail -s 'rkhunter pruefung' mail@me.de

sudo crontab -e

0 20 * * 7 /home/user/rkhunter-auto.sh

Mit dieser Einstellung würde rkhunter jede Woche das System scannen und nur bei Warnungen eine Meldungen abgeben.

Troubleshooting

Wie bereits erwähnt, kann es vorkommen, das Systembereiche angemahnt werden, obwohl diese keine Gefahr darstellen. Hier ein Beispiel:

sudo rkhunter -c --enable all --disable none
Invalid SCRIPTWHITELIST configuration option: Non-existent pathname: /usr/bin/lwp-request
Invalid SCRIPTWHITELIST configuration option: Non-existent pathname: /usr/sbin/prelink

In diesem Fall auf die Konfiguration zurückgreifen und unter "/etc/rkhunter.conf" die beiden Einträge auskommentieren.


Installation von Chkrootkit auf Ubuntu 14.04 (Server)

Doppelt hält bekanntlich besser, darum ist die Installation eines zweiten Tools, welches auf ähnlich Art und Weise das System überprüft sicherlich sinnvoll. In diesem Fall handelt es sich um das Tool Chkrootkit, welches, wie der Name vermuten lässt, ebenso auf Rootkits aus ist.

Die Installation und Konfiguration ist hier ähnlich einfach.

Installation Chkrootkit

sudo apt-get install chkrootkit

Konfiguration von Chkrootkit (wöchentliche Prüfung und Mailbenachrichtigungen)

In der Konfiguration kann eingestellt werden, ob täglich ein Check laufen soll. Alternativ lässt sich dies auch über einen extra Cronjob, z.B. monatlich lösen, wie es bei Rkhunter schon gemacht wurden.

sudo nano /etc/chkrootkit

sudo crontab -e

0 20 30 * * /usr/sbin/chkrootkit | mail -s "chkrootkit pruefung" me@home.de

Fazit

Beide Tools erfüllen im Prinzip ihren Job. Sollte ein System befallen sein, ist es effektiver solche Tools von einer nicht infizierten Live CD laufen zu lassen.

Bei einem Befall ist die sicherste Variante sowieso das Neusaufsetzen des Systems, wenn möglich.