Protokollanalyse mit Linux (Teil1)

Dies ist eine Schritt für Schritt Anleitung zum Einrichten von Linux zur Analyse des Netzwerkverkehrs zwischen verschiedenen Komponenten.

Eine Analyse des Netzwerkverkehrs kann dazu eingesetzt werden Fehler in der Kommunikation von Komponenten (Soft- sowie Hardware) aufzudecken und zu beseitigen. Einer anderen Anwendung soll dieses Beispiel nicht dienen!

Testumgebung

  • Laptop mit Linux (Debian 6.0.6)
  • USB-Ethernet Adapter (Apple)
  • USB-WLAN Adapter (Realtek 8187)
  • DHCP-Server
  • Aircrack-NG Suite
  • Wirshark

Ich gehe davon aus das Debian 6 (Squeeze) bereits auf dem Laptop installiert ist und man sich in einem Terminal unter GNOME / KDE / etc. befindet.

WICHTIG!
Für diese Anleitung ist es Erforderlich das die Schritte als ROOT ausgeführt werden.
Es sollte daher mit Bedacht vorgegangen werden, da der Spruch „Ich bin root, ich darf das!“ nicht von ungefähr kommt.
Daher hafte ich für keinerlei Schäden die ihr dem System zufügt.
Wenn ihr ganz sicher gehen wollt macht das in einer VM in die ihr die USB-Adapter durchreicht.

Schritt 1: Installation der benötigten Pakete

apt-get install build-essential curl libssl-dev libsqlite3-dev
apt-get install iw wireless-tools wireshark bridge-utils isc-dhcp-server

Schritt 2: Herunterladen des aktuellen Aircrack-NG Suite Quellcodes

wget http://download.aircrack-ng.org/aircrack-ng-1.1.tar.gz

Schritt 3: Entpacken und patchen des Quellcodes

Entpacken

tar –zxvf aircrack-ng-1.1.tar.gz

Patchen

cd aircrack-ng-1.1
nano common.mak

Aus der Zeile „CFLAGS ?= -g -W -Wall -Werror -03“ das „-Werror“ entfernen da sich sonst Aircrack nicht kompilieren lässt.

Schritt 4: Kompilieren und installieren der Aircrack-NG Suite

Kompilieren

make sqlite=true

Installieren

make sqlite=true install

Schritt 5: Update der OUI-Datei

airodump-ng-oui-update

Schritt 6: Monitor Modus von wlan1 starten

airmon-ng start wlan1

Schritt 7: Einen WLAN-Accesspoint mit airbase starten

airbase-ng -e FreeWifi -c 11 mon0 &

Schritt 8: Einrichten der Schnittstellen

ifconfig at0 up
ifconfig eth1 up

Einrichten der Netzwerkbrücke

brctl addbr wifibr0
brctl addif wifibr0 at0
brctl addif wifibr0 eth1
ifconfig wifibr0 10.0.0.254 netmask 255.255.255.0
ifconfig wifibr0 up

Schritt 9: Routing und IP_FORWARDING einrichten

echo „1“ > /proc/sys/net/ipv4/ip_forward
route add net 10.0.0.0 netmask 255.255.255.0 gw 10.0.0.254
iptables –flush
iptables –table nat –flush
iptables –delete-chain
iptables –table nat –delete-chain
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQERADE

Schritt 10: DHCP Server einrichten und starten

Bindung des DHCP-Servers an die Netzwerkbrücke

nano /etc/default/isc-dhcp-server

Als INTERFACES wifibr0 eintragen. (INTERFACES=“wifibr0″)

DHCP Einstellungen bearbeiten

nano /etc/dhcp/dhcpd.conf

ddns-update-style ad-hoc;
default-lease-time 600;
max-lease-time 7200;
authoritive;

subnet 10.0.0.0 netmask 255.255.255.0 {
    range 10.0.0.10 10.0.0.30;
    option netmask 255.255.255.0;
    option routers 10.0.0.254;
    option broadcast-address 10.0.0.255;
    option domain-name-servers 8.8.8.8;
}

DHCP Server starten

/etc/init.d/isc-dhcp-server restart

Schritt 11: Start der Analyse mit Wireshark

wireshark -i wifibr0 –k &

NFS Speicher in VMware ESXi einbinden

In meinem letzten Artikel ging es um das Einrichten eines NFS Servers.
Dieser findet nun Verwendung in einer VMware ESXi Umgebung.

Wie man die NFS Freigabe dort einbindet zeigt folgendes Video:
[YouTube-Link]:NFS Freigabe in VMware ESXi einbinden Achtung! Fullscreen

Wenn dieser Datenspeicher mehreren ESX-Servern, die zu einem HA-Cluster zusammengeschlossen sind, zur Verfügung steht hat man die Möglichkeit der Migration von Virtuellen Maschinen innerhalb des Clusters. Die Migration einer VM kann während des betriebs durchgeführt werden und der Nutzer bemerkt höchstens ein zucken, falls er Remote darauf zugreift.

ESXi Network connection with 65535Mbps [solved]

During the last days I had the problem on my ESXi Server that it was not reachable.

The Server itself and the VMs were running fine. So it was no crash or something like that. After I took a closer look at the problem with the support console, I noticed that my management network connection had some weird values.

Link: Up <- with the cable disconnected?

Linkspeed: 65535Mbs <- Hmm, cool in an Gigabit network

Duplex: Half

The first thing I tried was to restart my management network via the menu but this time it doesn’t helped. So I tried my luck in the support console by typing esxcfg-nics -a vmnic0.

The result was that my Server was reachable again and the values of the network connection were back to normal.

To automate this action I wrote a little Python Script which detects these abnormal values and resets them to normal by executing esxcfg-nics –a <interface>.

All I had to do is to place the script on the ESXi Server in a directory which is not deleted or overwritten if the server gets restarted and to add it as a cronjob which is executed every 30minutes.

In my case I placed the Script on the VMFS-Data storage.

The only thing which is left to do is to save the cronjobs so that they were persistent even if I reboot the Server. But I didn’t figured this out how to do it.

The Script is available here to Download: nic_check.py

ESXi Netzwerkverbindung mit 65535Mbps [gelöst]

Bei meinem ESXi Server hatte ich das Problem das er nach ein paar Tagen nicht mehr erreichbar war.

Der Server selbst und die VMs waren aber nicht betroffen. Kein Absturz oder sowas.

Als ich mit der Support Konsole mir das Problem näher angesehn habe, musste ich feststellen dass mein Netzwerkadapter für das Management etwas komische Werte hatte.

Link: Up <- auch bei abgezogenen Netzwerkkabel ?

Linkspeed: 65535Mbs <- bei einem Gigabit Netzwerk ?

Duplex: Half

Da ein neustart des Management Netzwerks nichts gebracht hat versuchte ich mein Glück mit esxcfg-nics -a vmnic0.

Das resultat war das die werte wieder korrekt waren und der Server wieder mit dem vSphere Client erreichbar war.

Damit ich nicht immer zum Server hinrennen muss hab ich ein kleines Python Script geschrieben das dass Management Netzwerk automatisch wieder zurechtrückt.

Das Script: nic_check.py
Viel Spaß