Kategori Computer

dhcp server im Netz

Sonntag, Juni 16th, 2013

Es passiert immer wieder das irgendein Depp im Wohnheimnetz einen DHCP Server anschließt. Dies kann zur folge haben das Bewohner aufgrund einer falschen IP und default route kein Internet haben, im schlimmsten Fall kann man dadurch man in the middle attacken fahren.

Mittels dhcping bekommt man heraus welche DHCP Server im Netz antworten verteilen. So ist schnell ein Übeltäter lokalisiert.
dhcping -s 255.255.255.255 -r -v

Um dieses Problem aber generell in den Griff zu bekommen haben ich auf dem Cisco Switch DHCP snooping eingerichtet. Dafür habe ich erst alle möglichen Server Ports freigeschaltet. So kann es nicht Passieren das bei Umbauarbeiten am Netzwerk keiner mehr eine DHCP Adresse bekommt. Anschließend habe ich für das gesamte 240 VLAN das dhcp snooping aktiviert.

switch(config)#interface range GigabitEthernet 2/1-48
switch(config-if-range)#ip dhcp snooping trust
switch(config-if-range)#exit
switch(config)#ip dhcp snooping vlan 240
switch(config)#do show ip dhcp snooping

Switch DHCP snooping is disabled
DHCP snooping is configured on following VLANs:
none
Insertion of option 82 is enabled
Option 82 on untrusted port is not allowed
Verification of hwaddr field is enabled
Interface Trusted Rate limit (pps)
------------------------ ------- ----------------
GigabitEthernet2/1 yes unlimited

system user mit gesetzten Passwort

Donnerstag, Juni 6th, 2013

Oft sind veraltete Passwörter oder Accounts ein Einfallstor für Hacker Angriffe. In meiner auth.log finden sich hierfür fiele Beispiele. Um Herauszufinden welche User einen Account mit Passwort zugriff haben, habe ich folgende Überprüfung gemacht:

grep '\$' /etc/shadow | awk -F: '{print $1}'
root

X Forwarded wollte nicht mehr

Mittwoch, Mai 22nd, 2013

Heute wollte auf einem der Server trotz, ssh -X oder -Y, kein X Forwarded mehr. Nach Kurzer suche war der Fehler ganz einfach.
# xterm
xterm Xt error: Can't open display: %s
xterm: DISPLAY is not set

Es Fehlte einfach nur das Paket xauth, danach ging alles wieder.
apt-get install xauth

Pool Temperatursennsor Teil 2

Mittwoch, Mai 15th, 2013

Da die Hardware nun Funktionierte wollte ich natürlich auch schöne RRD Graphen erstellen. Alles was man dafür braucht das Debian Weezey Image für den PI und Installiertes RRD:
apt-get install rrdtool

Dazu müssen die folgenden Module geladen sein:
modprobe wire
modprobe w1_gpio
modprobe w1_therm

Dieses Script such nun automatisch alle 1-Wire Sensoren ab und erstelle für sie ein RRD Graph.

#!/bin/bash

rrddata=/usr/local/rrd
rrdimg=/var/www/img

if [ ! -d "/sys/bus/w1/devices/w1_bus_master1/" ]; then
	echo "dir not exist: /sys/bus/w1/devices/w1_bus_master1/ kernel module laden?"
	echo "  modprobe wire; modprobe w1_gpio; modprobe w1_therm"
	exit 1
fi
if [ ! -e "/usr/bin/rrdtool" ]; then
	echo "rrdtool not installd"
	exit 1
fi

for dev in $(ls /sys/bus/w1/devices/w1_bus_master1/ | grep ^10 ); do 
	echo $dev
	if [ ! -e "$rrddata/$dev.rrd" ]; then
		echo "create: $rrddata/$dev.rrd"
		if [ ! -d "$rrddata" ]; then
			mkdir -pv "$rrddata"
		fi
		rrdtool create "$rrddata/$dev.rrd" --step 60 \
                        DS:celsius:GAUGE:600:U:U \
                        RRA:AVERAGE:0.5:1:2880 \
                        RRA:AVERAGE:0.5:60:700 \
			RRA:AVERAGE:0.5:240:720 \
			RRA:AVERAGE:0.5:1440:730 || exit 1
	fi

	temperatur=$(grep 't=' /sys/bus/w1/devices/w1_bus_master1/$dev/w1_slave | awk -F '=' '{print $2}')
	echo "$temperatur"
	/usr/bin/rrdupdate "$rrddata/$dev.rrd" N:$temperatur

	if [ ! -d $rrdimg ]; then
		mkdir -p "$rrdimg"
	fi
	/usr/bin/rrdtool graph $rrdimg/$dev.png -a PNG -w 1000 -h 300 -M -s -129600 -v "Grad Celsius" \
                "DEF:c=$rrddata/$dev.rrd:celsius:AVERAGE" \
                "CDEF:gc=c,1024,/" \
                "AREA:gc#00FF00:Grad Celsius" \
                "GPRINT:gc:LAST:Last \:    %3.2lf °C" \
                "GPRINT:gc:AVERAGE:Average \: %3.2lf °C" \
                "GPRINT:gc:MIN:Min \: %3.2lf °C" \
                "GPRINT:gc:MAX:Max \: %3.2lf °C"
done

exit 0

Das Script habe ich dann in crontab -e eingetragen, so das es Jede Minute ausgeführt wird. Damit meine CF Karte dabei nicht kaputt geschrieben wird habe ich für das erstelle Image eine tmpfs angelegt. Für mein Beispiel habe ich in der /etc/fstab
tmpfs /var/www/img tmpfs defaults,size=2M 0

10-0008028994f4

[Update]
mit einem Kernel Update waren plötzlich alle Sensoren verschwunden. Hierfür musste man die in der /boot/config.txt folgenden Option hinzufügen.

dtoverlay=w1-gpio

Pool Temperatursennsor Teil 1

Mittwoch, Mai 15th, 2013

Mit dem raspberry pi ist es ganz einfach/kostengünstig einen Temperatursensor zubauen. Dafür Reicht auch schon die günstiger A Variante des Pi. Dazu habe ich noch zwei DS 18S20 one-wire Sensors und einen 4,7k Ohm Wiedersand bestellt. Als Kable hebe ich ein altes COM Kabel aus dem Schrank gezogen, das Passt da man nur die ersten 9 Pins Benötigt. Außerdem habe ich noch ein WLAN Modul gekauft, da dort wo der pi verbaut werden soll, lediglich Strom liegt und kein Netzwerk Anschluss.

Aufbau:
paspberry_DS18S20

Anschlüsse:

PI		DS 18S20
1      3,3V	3
6      GND	1
7      GPIO4	2

Zum Testen bevor ich die Sensoren in eine Wasserfeste hülle in epoxidharz gieße, wollte ich die Komponenten erst mal Dauer testen. Dafür habe ich jetzt einige Tage die Komponenten auf meinen Balkon gestellt.

rpy01

Kosten:

1x raspberry pi v.A 27,85 €
2x DS 18S20          2,20 €
1x EDIMAX EW-7811UN  8,95 €
   Summe:           41,20 €