Debian Squeeze als Router

Debian Squeeze als Router

Ich versuche, Debian Squeeze (wie Dreamplug) als Router einzurichten. Ich kriege es einfach nicht hin, dass die Teile zusammenpassen.

ETH0: Upstream/Internet - DHCP-Client
ETH1: Downstream/Lan - 192.168.0.1 DHCP-Server

sudo vim /etc/netzwerk/schnittstellen

auto lo br0
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

auto eth1
        iface eth1 inet static
        address 192.168.0.1
        network 192.168.0.0
        netmask 255.255.255.0
        broadcast 192.168.0.255

iface br0 inet dhcp
        bridge_ports eth0 eth1

sudo vim /etc/dhcp/dhcpd.conf

option domain-name "MyPlug.MyServer.com";
option domain-name-servers 8.8.8.8, 192.168.0.1;

default-lease-time 600000000;
max-lease-time 720000000;

subnet 192.168.0.0 netmask 255.255.255.0 {
    range 192.168.0.100 192.168.0.200;
    option routers 192.168.0.1;
    option broadcast-address 192.168.0.255;
}

sudo vim /etc/default/isc-dhcp-server

INTERFACES="eth1"

Dienstnetzwerk-Neustartdienst
ISC-DHCP-Server-Neustart

Mein Windows 7-Rechner nimmt eine IP auf... NACHDEM ich die Freigabe/Erneuerung erzwungen habe. Ich konnte ihn einmal über Putty mit dem Server verbinden.

Stimmt mit meinen Einstellungen etwas nicht, oder gibt es sonst etwas, wonach ich suchen kann?

Antwort1

Überbrücken Sie nicht Ihre internen und externen Schnittstellen. Ihre Box ist ein Router, kein Switch. Um Ihre Maschine zu einem Router zu machen, müssen Sie ihr sagen, dass sie Pakete zwischen Schnittstellen „weiterleiten“ soll. Ich mache das, indem ich echo 1>/proc/sys/net/ipv4/ip_forward. Soweit ich mich erinnere, geht das, indem man eine Zeile net.ipv4.ip_forward=1zu /etc/sysctl.conf hinzufügt und dann ausführt /etc/init.d/procps restart.

Das Proc-Dateisystem, das normalerweise in /proc eingebunden ist, stellt Kernelinformationen und -konfigurationen als Dateien dar, die gelesen und geschrieben werden können. Indem wir 0 oder 1 in /proc/sys/net/ipv4/ip_forward schreiben, deaktivieren oder aktivieren wir die Kernelfunktion zum Weiterleiten von IP-Paketen zwischen Schnittstellen. Wir möchten, dass der Kernel Pakete weiterleitet!

Jetzt ist Ihr Computer ein Router, aber Sie müssen ihn auch maskieren. Dazu müssen Sie:

iptables -t nat -A POSTROUTING -i eth1 -o eth0 -j MASQUERADE(sehenhttp://tldp.org/HOWTO/IP-Masquerade-HOWTO/wenn Sie mehr wissen möchten)

Solange wir IPv4 verwenden: Sie erhalten von Ihrem ISP nur eine IP-Adresse und alle Ihre Clients teilen sich diese Adresse, wenn sie mit Systemen im Internet interagieren. Masquerading kümmert sich um alles, was mit der gemeinsamen Nutzung einer IP-Adresse zu tun hat. Der Punkt ist, dass wir iptables mitteilen müssen, wann Masquerading angewendet werden soll. Wenn iptables -i und -o nicht mehr akzeptiert, lautet eine geeignete Ersatzregel:

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 ! -d 192.168.0.0/24 -j MASQUERADE

Möglicherweise müssen Sie die Subnetzdefinitionen 192.168.0.0/24 (beide!) durch die SubnetzdefinitionenIhre Kunden leben inDie Regel lautet: „Masquerading für alle Pakete durchführen, die aus dem Client-Subnetz stammen und an Hosts außerhalb des Client-Subnetzes adressiert sind.“

Ich kenne Dreamplug nicht, aber Sie sollten eine Datei /etc/firewall* oder /etc/iptables* haben, in die Sie diese Anweisung einfügen können, damit diese Anweisung bei jedem Neustart ausgeführt wird. Sehen Sie in Ihrer Dokumentation nach, welche „Firewall-Regeln“ gelten und wo Sie diese einfügen müssen.

Für Ihre DHCP-Konfiguration erscheinen Ihre Lease-Zeiten lächerlich hoch. Ziehen Sie 3-5 0 ab. Außerdem besteht die Möglichkeit, dass es Clients gibt, die mit so großen Zahlen nicht umgehen können/können. Außerdem sollten Sie die Reihenfolge der Domänen-Nameserver umkehren. Clients fragen zuerst den ersten Server in der Liste. Wenn Ihr Router auch als Nameserver fungiert, wird er sich frühere Anfragen höchstwahrscheinlich für einige Zeit merken. Das bedeutet, wenn Ihre Clients dieselbe Adresse ein zweites Mal anfordern, ist die Antwort viel schneller, als wenn Sie einen Google-Nameserver fragen.

Antwort2

Entfernen Sie die Brücke. Bei dieser Art der Anordnung ist sie unsicher.

Installieren Sie stattdessen das arno-iptables-firewallPaket, um einfach und sicher eine sichere Routerkonfiguration einzurichten. Den Rest erledigt es für Sie.

Aus der Debian-Paketbeschreibung:

Im Gegensatz zu anderen schlanken iptables-Frontends in Debian kann arno-iptables-firewall durch das Stellen einiger weniger Fragen eine sichere, restriktive Firewall einrichten und laden. Dazu gehört die Konfiguration interner Netzwerke für den Internetzugang über NAT und mögliche Netzwerkdienste (z. B. http oder ssh).

Sofern Sie nicht wissen, wie Sie iptables selbst sicher einrichten, installieren Sie dieses Paket.

verwandte Informationen