Blog

Aktion Befreiphone

Befreiphone ist eine neuer Trend bei dem iPhone. Normalerweise ist das iPhone gesperrt. Das heisst, man kann keine Software installieren. Man kann nur das machen was der Hersteller, Apple, vorgibt. Zwar gibt es bei neueren Geräten den App Store in dem man Anwendungen für den iPhone bekommt, so ganz befreit wird das iPhone dadurch aber nicht wirklich.

Es gibt mehrere Möglichkeiten das iPhone zu befreien. Befreiphone ist nur eine davon ;)

Weiteres gibt es in einschlägigen Suchmaschinen zu finden. Leider ist es nicht möglich hier über Befreiphone zu schreiben.

Wenn Ihr an der Aktion Befreiphone teilnehmen möchtet, so seid doch ein bischen kreativ…

Cisco IOS DHCP Server

Cisco Router können als DHCP-Server fungieren.

Folgendes wird angenommen:

Netz: 10.0.0.0/8
DHCP-Bereich: 10.6.0.0 bis 10.8.17.4
DNS: 10.11.12.13
Gateway: 10.0.0.1

!
ip dhcp pool DHCP_POOL
network 10.0.0.0 255.0.0.0
default-router 10.0.0.1
dns-server 10.11.12.13
class DEFAULT
address range 10.6.0.0 10.8.17.4
!
!
ip dhcp class DEFAULT
!

Zu beachten ist, dass die ACL für das Netzwerk-Interface folgendes mit drin hat:

access-list 142 permit udp any any eq bootpc
access-list 142 permit udp any any eq bootps

Ab jetzt verteilt der Router die IP-Adressen für das Netz.

Transparenter Squid Proxy

Transparenter Squid Proxy auf Ubuntu 8.04.1 Server

Im Internet kursieren verschiedene Anleitungen, wie man einen transparenten Squid Proxy aufsetzt. Leider sind einige veraltet, beziehen sich auf den alten Squid oder sonst etwas älteres. Ich habe mir vorgenommen eine aktuelle Anleitung zu schreiben, die auf dem Ubuntu Server 8.04.1 (Hardy Heron) basiert.

Der Server braucht mindestens 2 Netzwerkkarten, bevorzugt Inten PRO-1000. Ich nehme an, das lokale Netz ist 192.168.0.0/24, der Router hat die IP 192.168.0.1 und unser Proxy bekommt die IP 192.168.0.2 und die Nameserver haben die IPs 193.101.111.20 sowie 193.101.111.10.

Zuerst ist eine Ubuntu-Installation vorzunehmen. Diese wird normal gemacht, aber am Ende wird nur noch der SSH-Server installiert.

Nach der Installation installieren wir einige Pakete:

# apt-cache search squid | grep -e "^squid " -e "^sqcwa " -e "^squid-prefetch " -e "^bridge-utils "
squid - Internet object cache (WWW proxy cache)
sqcwa - Workaround for Squid not caching some pages
squid-prefetch - Simple page-prefetch for Squid web proxy
bridge-utils - Utilities for configuring the Linux ethernet bridge
# apt-get install squid sqcwa squid-prefetch bridge-utils

In /etc/squid/squid.conf suchen wir die folgende Zeilen:

http_port 3128
#acl our_networks src 192.168.1.0/24 192.168.2.0/24
#http_access allow our_networks

und ändern es in:

http_port 3128 transparent
acl our_networks src 192.168.0.0/24
http_access allow our_networks

Danach ersetzen wir den Inhalt von /etc/network/interfaces durch:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto br0
iface br0 inet static
pre-up brctl addbr br0
pre-up brctl addif br0 eth0
pre-up brctl addif br0 eth1
pre-up ifconfig eth0 0.0.0.0
pre-up ifconfig eth1 0.0.0.0
post-down brctl delbr br0
address 192.168.0.2
netmask 255.255.255.0
gateway 192.168.0.1
bridge_fd 0
bridge_hello 0
bridge_stp off

Dann noch DNS in /etc/resolv.conf:

nameserver 193.101.111.20
nameserver 193.101.111.10

Vor dem Ende kommt noch die magische iptables-Regel in die /etc/rc.local:

/sbin/iptables -t nat -A PREROUTING -i br0 -p tcp --dport 80 -j REDIRECT --to-port 3128

Sollten wir irgendwann einen Paketfilter auf iptables-Basis haben so fügen wir diese Regel dort ein.

Am Ende shutdown. Jetzt stellen wir den Proxy neben dem Router, schliessen eine Netzwerkkarte an den Router direkt und die andere an das Netzwerk. Welche wohin ist vollkommen egal.

Das Ganze ist natürlich beliebig ausbaufähig…

Einschalten, fertig ;)