Hallo Liste! Kämpfe gerade mit iptables. Dabei habe ich zunächste versucht dhcp für das LAN frei zu bekommen. ref: SuSE-8.1, iptables 1.2.7a-17. Hier das Skript
#!/bin/bash #/root/fw-ipt/fw-start # 0.1 - 14.5.2003
# Dieses Skript entfernt alle Regeln, Ketten und auch die Module. # Es funktioniert bestimmt. /root/fw-ipt/fw-stop
#################################Module laden########################################################### modprobe ip_tables modprobe ip_conntrack modprobe ip_conntrack_ftp modprobe ipt_state modprobe iptable_nat modprobe ipt_MASQUERADE echo "fw-start -- Module geladen."
################################# IPT=/usr/sbin/iptables
LAN_INTERFACE="eth0" # Interface zum LAN LOOPBACK_INTERFACE="lo" # Loopback-Interface
LAN_IPADDR="192.168.1.1" # Adresse des Lan-Interfaces LAN_ADDRESSES="192.168.1.0/24" # LAN-Bereich" BROADCAST_SRC="0.0.0.0" # Broadcast-Absender BROADCAST_DEST="255.255.255.255" # Broadcast-Empfänger
########################################################################################################
$IPT -P INPUT DROP $IPT -P OUTPUT DROP $IPT -P FORWARD DROP
$IPT -t nat -P PREROUTING DROP $IPT -t nat -P OUTPUT ACCEPT $IPT -t nat -P POSTROUTING ACCEPT
$IPT -t mangle -P PREROUTING DROP $IPT -t mangle -P OUTPUT ACCEPT
#Loopback freischalten $IPT -A INPUT -i lo -j ACCEPT $IPT -A OUTPUT -o lo -j ACCEPT
########################################################################################################
# DHCP
#source-address 0.0.0.0.68 dest-address 255.255.255.255.67 #dhcp-discover und dhcp-request benutzen das gleiche Muster $IPT -A INPUT -i $LAN_INTERFACE -p udp -s $BROADCAST_SRC --sport 68 -d $BROADCAST_DEST --dport 67 -j ACCEPT
#source-address 192.168.1.1.67 dest-address 192.168.1.199.68 #dhcp-offer und dhcp-ack benutzen das gleiche Muster $IPT -A OUTPUT -o $LAN_INTERFACE -p udp -s $LAN_IPADDR --sport 67 -d $LAN_ADDRESSES --dport 68 -j ACCEPT
#source-address 192.168.1.199.68 dest-address 192.168.1.1.67 #Freigeben oder erneuern benutzen diese Muster $IPT -A INPUT -i $LAN_INTERFACE -p udp -s $LAN_ADDRESSES --sport 68 -d $LAN_IPADDR --dport 67 -j ACCEPT
$IPT -A OUTPUT -o $LAN_INTERFACE -j LOG $IPT -A INPUT -i $LAN_INTERFACE -j LOG
exit 0
Wenn ich nat/POSTROUTING,OUTPUT und mangle/OUTPUT nicht auf ACCEPT setze, dann kann ich vom W98-Client (ausführen --> winipcgf --> aktualisieren) die Adresse nicht mehr aktualisieren. Ein Überprüfen der /var/log/messages sagt dann lintsz01 dhcpd: DHCPACK on 192.168.1.199 to 00:a0:24:ef:94:a1 via eth0 lintsz01 dhcpd: send_packet: Operation not permitted
Ein Überwachen des Interfaces (tcpdump -i eth0 "udp[2:2] = 67 or udp[2:2] = 68] zeigt, dass eine Anfrage zwar ankommt, aber keine Antwort abgeht.
Und hier die Fragen 1. Warum muß ich nat/POSTROUTING,OUTPUT und mangle/OUTPUT auf ACCEPT stellen? 2. Damit dhcp funktioniert sollte ich also entsprechende Regeln auch für diese drei Ketten anfügen? Wie kann sowas aussehen? 3. Diese Einstellungen verhindern auch die Anmeldungen am KDE bzw., wenn KDE bereits aktiv ist kann man keine neue Anwendung aufrufen. Warum?
Danke für die Hilfe und bitte nicht laut lachen..... Luigi