Mac OS Cisco AnyConnect VPN Client Installationsproblem

In letzter Zeit sind einige Personen mit Apple Rechnern bei mir aufgeschlagen, die (unter anderem nach unsauberer Deinstallation) den Cisco AnyConnect VPN Client nicht mehr neu installieren konnten. Das Problem waren noch vorhandene Paketregistrierungen, die wie folgt bereinigt werden können:

Zuerst öffnen wir das Programm Terminal, entweder Terminal in die Spotlightsuche eingeben, oder im Finder im Ordner Programme/Dienstprogramme starten.
# Manpage von pkgutil anzeigen, wir nutzen dieses Tool um Paketeinträge zu entfernen:
man pkgutil
 
# Paketeinträge anzeigen die den String cisco enthalten:
pkgutil –pkgs | grep cisco
 
# Folgende zwei Einträge werden gefunden:
com.cisco.pkg.anyconnect.dart
com.cisco.pkg.anyconnect.vpn
 
# Verwaiste Cisco Einträge entfernen:
sudo pkgutil –forget com.cisco.pkg.anyconnect.dart
sudo pkgutil –forget com.cisco.pkg.anyconnect.vpn
 
Die Installation sollte nun wieder funktionieren.
 
Wichtig:
Bei der Verwendung dieser Befehle ist äußerste Vorsicht geboten, ihr könnt hierbei das System schädigen. Anwendung auf eigene Gefahr.

[Howto] Nmap und VMware Fusion auf dem Mac

Administratoren nutzen Nmap schon jeher für Netzwerkanalysen, Sicherheitsüberprüfungen und zur Fehlerbehebung. Es gibt kaum eine Plattform, auf der Nmap noch nicht läuft und so kann man es natürlich auch auf dem Mac einsetzen. Entweder man lädt das Binary von der Nmap Homepage oder man installiert es per Fink oder MacPorts. In meinem Fall habe ich es über Fink installiert und beim ersten Test spuckte das Terminal nur folgende Fehlermeldung des Befehls getinterfaces aus:

Starting Nmap 4.20 ( http://insecure.org ) at 2009-07-17 16:59 CEST
getinterfaces: Failed to open ethernet interface (vmnet8). A possible cause on BSD operating systems is running out of BPF devices (see http://seclists.org/lists/nmap-dev/2006/Jan-Mar/0014.html).
QUITTING!

Starting Nmap 4.20 ( http://insecure.org ) at 2009-07-17 16:59 CEST

getinterfaces: Failed to open ethernet interface (vmnet8). A possible cause on BSD operating systems is running out of BPF devices (see http://seclists.org/lists/nmap-dev/2006/Jan-Mar/0014.html).

QUITTING!

Nach kurzer Recherche wurde klar, dass es an meiner VMware Fusion Installation liegt. VMware Fusion ist eine Virtualisierungssoftware für den Mac, mit der man z.B eine Windows Installation in Mac OS X laufen lassen kann. Hierbei werden auch virtuelle Netzwerkinterfaces speziell für die virtuellen Maschinen angelegt, die in diesem Fall die Ausführung von Nmap verhindern.
Das Problem kann beseitigt werden, in dem man die virtuellen Netzwerke kurzfristig deaktiviert, Nmap ausführt und anschließend die virtuellen Netzwerke wieder aktiviert. VMware bietet hierfür bereits zwei Shellskripte an, die auch beim Starten und Herunterfahren des Mac für diesen Zweck eingesetzt werden.
Um das ganze nun mit einem Befehl auszuführen, habe ich mir ein kleines Shellskript gebastelt, dem die Nmap Parameter übergeben werden und als Ausgabe sieht der User lediglich das Ergebnis des Scans. Nmap muss als Administrator (sudo auf dem Mac) ausgeführt werden, also muss auch das Skript mit sudo gestartet werden. Hier das Skript:
#!/bin/sh
sudo /Library/Application\ Support/VMware\ Fusion/boot.sh –stop &>/dev/null
/sw/bin/nmap $@
sudo /Library/Application\ Support/VMware\ Fusion/boot.sh –start &>/dev/null

Das Skript wird folgendermaßen abgearbeitet:
  • Der erste Befehl hält die virtuellen Netzwerke an und die Ausgabe wird nicht in der Konsole dargestellt, sondern in den Müll geschoben
  • Der nächste Befehl führt Nmap aus und nimmt als Variable die Parameter entgegen, die der User dem Skript mitgibt. Hier muss eventuell ein anderer Pfad zu Nmap eingetragen werden!
  • Der letzte Befehl startet die virtuellen Netzwerke wieder
So kann es ausgeführt werden:
  • Um das Skript ausführen zu können, muss das Execute Flag gesetzt werden. Dies muss nur einmal auf das Skript angewandt werden.
    • chmod u+x skript.sh
  • Skript mit Nmap Parametern und sudo ausführen. Das System fragt nach dem Passwort des Benutzers, dieser muss Mac OS X administrieren dürfen. Hier ein Beispiel:
    • sudo ./skript.sh -sS www.domain.org
Links: