Erhard Gruber wrote:
>
> Liebe Kollegen,
>
> Habe einen Linux-Rechner der als Firewall arbeitet und ausserdem auf
> einer der beiden Netzwerkkarten DHCP-Anfragen beantworten soll (auf
> der anderen nicht!). Bevor ich dhcp installiert habe, hat die Regel
> für eingehende Pakete so ausgesehen:
>
> # allow all from intern but only from LDEV
> /usr/sbin/iptables -A INPUT -i $LDEV -p all -s 10.1.1.0/24 -j ACCEPT
>
> Dabei ist $LDEV die Netzwerkkarte fürs lokale Netz (IP-Adressen im
> lokalen Netz sind 10.1.1.x).
>
> Das hat dazu geführt, dass DHCP nicht geht. Ursache ist
> wahrscheinlich, dass DHCP zunächst ein Broadcast macht, um eine
> IP-Adr. zu bekommen. Ich habe also folgende Regel hinzugefügt:
>
> /usr/sbin/iptables -A INPUT -i $LDEV -p all -s 255.255.255.255/32 -j
> ACCEPT
>
> Das hat nicht funktioniert. Als Notlösung habe ich einstweilen
> folgende
> Regel:
>
> /usr/sbin/iptables -A INPUT -i $LDEV -p all -s 0/0 -j ACCEPT
>
> d.h. im lokalen Netz sind derzeit ALLE source-Adressen erlaubt
> (gefällt mir nicht sehr).
>
> Gibt es eine Möglichkeit, die Source-Adr. einzuschränken, und trotzdem
> die DHCP-Broadcasts durchzulassen? Oder habe ich die Broadcast-Adr.
> falsch angegeben?

aus http://www.seifried.org/lasg/network-servers/dhcp/index.html

DHCPD should definitely be firewalled from external hosts as there is no reason an external host should be querying your DHCP server for IP's/etc, in addition to this making it available to the outside world could result in an attacker starving the DHCP server of addresses assuming you use a dynamic pool(s) of addresses, you could be out of luck for your internal network, and learning about the structure of your internal network. DHCP runs on port 67, udp because the amounts of data involved are small and a fast response is critical. ipfwadm -I -a accept -P udp -S 10.0.0.0/8 -D 0.0.0.0/0 67 ipfwadm -I -a accept -P udp -S some.trusted.host -D 0.0.0.0/0 67 ipfwadm -I -a deny -P udp -S 0.0.0.0/0 -D 0.0.0.0/0 67

or
ipchains -A input -p udp -j ACCEPT -s 10.0.0.0/8 -d 0.0.0.0/0 67 ipchains -A input -p udp -j ACCEPT -s some.trusted.host -d 0.0.0.0/0 67 ipchains -A input -p udp -j DENY -s 0.0.0.0/0 -d 0.0.0.0/0 67



die iptables version fehlt - aber die einschränkung auf udp + port 67 sollte auch dort möglich sein

hth
Gustl

--
August Hörandl august.hoerandl@gmx.at
"Failure is not an option. It comes bundled with software."
--
Kustodenforum: Liste fuer den Meinungsaustausch von Kustoden
an osterreichischen Schulen.
Diese Liste wird vom Computer Communications Club (http://www.ccc.at) betrieben. Um sich aus der Liste austragen zu lassen, senden Sie ein e-mail an majordomo@ccc.at mit dem Befehl "unsubscribe kustodenforum" im Nachrichtentext.