Hallo Boardies,
ich hät' da gern mal ein Problem würde Bodo Bach nun sagen.
Nun ich habe einen SuSE 10.3 Server der ne feste IP im Netz hat und 2 Netzwerkkarten. An Karte A hängt mein Internet Netzwerk an Karte B mein DSL Modem.
Nun stelle ich per Yast2 mein dsl0 Gerät mit provider0 usw ein und lasse conneten. läuft alles bestens. Von meinem Router komme ich ins Netz.
Nun habe ich mir mit dem fwbuilder meine Firewall erstellt und diese gestartet. meine Clients scheinen auch ins Netz zu kommen. Allerdings tun sie das nur zum teil. wenn cih versuche von meinem Windows XP Rechner die Windows Update Seite oder www.hotmail.com aufzurufen passiert nicht.
Wenn ich jedoch die SuSEfirewall2 konfiguriere und starte klappt as von meinen Client aus.
Mein Firewallscript ist so einfach gehalten das ich einfach mal pauschal alles erlaubt und alles auf dsl0 natte. trozdem kommt es zu diesem komischen Verhalten.
Hat jemand eine Idee woran das liegen kann ???
Für anregungen bin cih shr dankbar.
[/code]
ich hät' da gern mal ein Problem würde Bodo Bach nun sagen.
Nun ich habe einen SuSE 10.3 Server der ne feste IP im Netz hat und 2 Netzwerkkarten. An Karte A hängt mein Internet Netzwerk an Karte B mein DSL Modem.
Nun stelle ich per Yast2 mein dsl0 Gerät mit provider0 usw ein und lasse conneten. läuft alles bestens. Von meinem Router komme ich ins Netz.
Nun habe ich mir mit dem fwbuilder meine Firewall erstellt und diese gestartet. meine Clients scheinen auch ins Netz zu kommen. Allerdings tun sie das nur zum teil. wenn cih versuche von meinem Windows XP Rechner die Windows Update Seite oder www.hotmail.com aufzurufen passiert nicht.
Wenn ich jedoch die SuSEfirewall2 konfiguriere und starte klappt as von meinen Client aus.
Mein Firewallscript ist so einfach gehalten das ich einfach mal pauschal alles erlaubt und alles auf dsl0 natte. trozdem kommt es zu diesem komischen Verhalten.
Hat jemand eine Idee woran das liegen kann ???
Für anregungen bin cih shr dankbar.
Code:
#!/bin/sh
#
# This is automatically generated file. DO NOT MODIFY !
#
# Firewall Builder fwb_ipt v2.1.14-1
#
# Generated Tue Oct 30 18:55:04 2007 CET by GMastaP
#
# files: * router01.fw
#
PATH="/sbin:/usr/sbin:/bin:/usr/bin:${PATH}"
export PATH
LSMOD="/sbin/lsmod"
MODPROBE="/sbin/modprobe"
IPTABLES="/usr/sbin/iptables"
IPTABLES_RESTORE="/usr/sbin/iptables-restore"
IP="/sbin/ip"
LOGGER="/bin/logger"
#
# Prolog script
#
#
# End of prolog script
#
log() {
echo "$1"
test -x "$LOGGER" && $LOGGER -p info "$1"
}
check_file() {
test -r "$2" || {
echo "Can not find file $2 referenced by AddressTable object $1"
exit 1
}
}
va_num=1
add_addr() {
addr=$1
nm=$2
dev=$3
type=""
aadd=""
L=`$IP -4 link ls $dev | head -n1`
if test -n "$L"; then
OIFS=$IFS
IFS=" /:,<"
set $L
type=$4
IFS=$OIFS
if test "$type" = "NO-CARRIER"; then
type=$5
fi
L=`$IP -4 addr ls $dev to $addr | grep inet | grep -v :`
if test -n "$L"; then
OIFS=$IFS
IFS=" /"
set $L
aadd=$2
IFS=$OIFS
fi
fi
if test -z "$aadd"; then
if test "$type" = "POINTOPOINT"; then
$IP -4 addr add $addr dev $dev scope global label $dev:FWB${va_num}
va_num=`expr $va_num + 1`
fi
if test "$type" = "BROADCAST"; then
$IP -4 addr add $addr/$nm dev $dev brd + scope global label $dev:FWB${va_num}
va_num=`expr $va_num + 1`
fi
fi
}
getInterfaceVarName() {
echo $1 | sed 's/\./_/'
}
getaddr() {
dev=$1
name=$2
L=`$IP -4 addr show dev $dev | grep inet | grep -v :`
test -z "$L" && {
eval "$name=''"
return
}
OIFS=$IFS
IFS=" /"
set $L
eval "$name=$2"
IFS=$OIFS
}
getinterfaces() {
NAME=$1
$IP link show | grep ": $NAME" | while read L; do
OIFS=$IFS
IFS=" :"
set $L
IFS=$OIFS
echo $2
done
}
# increment ip address
incaddr()
{
n1=$4
n2=$3
n3=$2
n4=$1
vn1=`eval "echo \\$$n1"`
R=`expr $vn1 \< 255`
if test $R = "1"; then
eval "$n1=`expr $vn1 + 1`"
else
eval "$n1=0"
incaddr XX $n4 $n3 $n2
fi
}
if $IP link ls >/dev/null 2>&1; then
echo;
else
echo "iproute not found"
exit 1
fi
MODULES_DIR="/lib/modules/`uname -r`/kernel/net/"
MODULES=`find $MODULES_DIR -name '*conntrack*'|sed -e 's/^.*\///' -e 's/\([^\.]\)\..*/\1/'`
MODULES="$MODULES `find $MODULES_DIR -name '*nat*'|sed -e 's/^.*\///' -e 's/\([^\.]\)\..*/\1/'`"
for module in $MODULES; do
if $LSMOD | grep ${module} >/dev/null; then continue; fi
$MODPROBE ${module} || exit 1
done
# Using 0 address table files
INTERFACES="dsl0 lo eth0 eth1 "
for i in $INTERFACES ; do
$IP link show "$i" > /dev/null 2>&1 || {
log "Interface $i does not exist"
exit 1
}
done
echo 1 > /proc/sys/net/ipv4/ip_dynaddr
echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects
echo 1 > /proc/sys/net/ipv4/conf/all/log_martians
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
# Configure interfaces
$IP -4 neigh flush dev eth0 >/dev/null 2>&1
$IP -4 addr flush dev eth0 secondary label "eth0:FWB*" >/dev/null 2>&1
$IP -4 neigh flush dev eth1 >/dev/null 2>&1
$IP -4 addr flush dev eth1 secondary label "eth1:FWB*" >/dev/null 2>&1
add_addr 127.0.0.1 8 lo
$IP link set lo up
add_addr 192.168.204.85 24 eth0
$IP link set eth0 up
add_addr 10.0.1.1 29 eth1
$IP link set eth1 up
getaddr dsl0 i_dsl0
# Add virtual addresses for NAT rules
log 'Activating firewall script generated Tue Oct 30 18:55:04 2007 by GMastaP'
$IPTABLES -P OUTPUT DROP
$IPTABLES -P INPUT DROP
$IPTABLES -P FORWARD DROP
ip6tables -L -n > /dev/null 2>&1 && {
ip6tables -P OUTPUT DROP
ip6tables -P INPUT DROP
ip6tables -P FORWARD DROP
ip6tables -A INPUT -i lo -j ACCEPT
ip6tables -A OUTPUT -o lo -j ACCEPT
}
cat /proc/net/ip_tables_names | while read table; do
$IPTABLES -t $table -L -n | while read c chain rest; do
if test "X$c" = "XChain" ; then
$IPTABLES -t $table -F $chain
fi
done
$IPTABLES -t $table -X
done
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
#
# Rule 0 (NAT)
#
echo "Rule 0 (NAT)"
#
#
$IPTABLES -t nat -A POSTROUTING -o dsl0 -s 192.168.204.0/24 -j MASQUERADE
#
# Rule 0 (lo)
#
echo "Rule 0 (lo)"
#
#
#
$IPTABLES -A INPUT -i lo -m state --state NEW -j ACCEPT
$IPTABLES -A OUTPUT -o lo -m state --state NEW -j ACCEPT
#
# Rule 1 (global)
#
echo "Rule 1 (global)"
#
#
#
$IPTABLES -N RULE_1
$IPTABLES -A OUTPUT -m state --state NEW -j RULE_1
$IPTABLES -A INPUT -m state --state NEW -j RULE_1
$IPTABLES -A FORWARD -m state --state NEW -j RULE_1
$IPTABLES -A RULE_1 -j LOG --log-level info --log-prefix "RULE 1 -- ACCEPT "
$IPTABLES -A RULE_1 -j ACCEPT
#
#
echo 1 > /proc/sys/net/ipv4/ip_forward
#
# Epilog script
#
# End of epilog script
#