warum habe ich kein netz?

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
Riceman
Beiträge: 85
Registriert: 20.05.2003 10:02:17
Kontaktdaten:

warum habe ich kein netz?

Beitrag von Riceman » 06.06.2003 17:37:09

hi@all!

ich habe einen debian-router und einen rechner mit win98, auf dem ich jetzt zusätzlich debian installieren will. der router hat die ip 192.168.0.1, und der andere die 192.168.0.2.
von diesem kann ich mich per ssh auf den router einloggen. der router hängt korrekt am netz wie immer. die ips sind gesetzt. warum habe ich trotzdem keinen netzzugang? (pingen und mit mozilla funzen nicht). oder muß ich irgendwo einen dns eintragen oder so?

vielen dank schonmal!

mfg
mario

Riceman
Beiträge: 85
Registriert: 20.05.2003 10:02:17
Kontaktdaten:

Beitrag von Riceman » 06.06.2003 17:39:22

ähm... nicht daß da mißverständnisse aufkommen: auf dem rechner mit win98 ist bereits debian installiert :) (ich hatte fälschlicherweise geschrieben ich würde es gerade installieren) und von diesem aus habe ich kein netz! unter win98 funzt alles tadellos.

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 06.06.2003 17:49:12

Was sagen den "ifconfig" und "route -n" auf dem Debian? Nameserver trägt man in der /etc/resolv.conf ein. Sinnvoll ist es auch auf dem Router das Paket "dnsmasq" zu installieren, und dann den Router auf allen Clients als Nameserver einzutragen. Dnsmasq ist trivial zu installieren (keine Config nötig). Mit dnsmasq muss man dann die Nameserver nur auf dem Router ändern, wenn sich daran 'mal was ändern sollte. Ausserdem kann man die Hostname <-> IP Zuordnung für alle lokalen Clients dann einfach auf dem Router in die /etc/hosts eintragen, und dann kennen sich alle internen Rechner automatisch beim Namen...

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

Benutzeravatar
SicK
Beiträge: 21
Registriert: 03.06.2003 08:47:08
Wohnort: Erfurt
Kontaktdaten:

iptables hilfe benötigt

Beitrag von SicK » 10.06.2003 18:34:15

hallo leude,

ich habe auf meinem debian-router heute auch dnsmaq installiert und danach ging garnix mehr !(kein dns) Info : ich gebe per dhcpd die infos an die clients weiter. als fehlerursache habe ich das iptables-script ausgemacht, welches ich mir im inet erstellen lies. leider habe ich davon noch keinen plan und kurzerhand eine änderung gemacht, die zwar bewirkt, das alles funzt, aber ich wollte mir von euch nochmal die bestätigung holen das der eintrag richtig ist .

hier das script:
#!/bin/bash
# ---------------------------------------------------------------------
# Linux-iptables-Firewallskript, Copyright (c) 2003 under the GPL
# Autogenerated by iptables Generator v1.16 (c) 2002 by Harald Bertram 
# Please visit http://www.harry.homelinux.org for new versions of
# the iptables Generator (c).
#
# This Script was generated by request from:
# on: 2003-5-24 21:30.34 MET.
#
# If you have questions about the iptables Generator or about
# your Firewall-Skript feel free to take a look at out website or
# send me an E-Mail to webmaster@harry.homelinux.org.
#
# My special thanks are going to Lutz Heinrich (trinitywork@hotmail.com) who
# made lots of Beta-Testing and gave me lots of well qualified
# Feedback that made me able to improve the iptables Generator.
# --------------------------------------------------------------------

case "$1" in
start)
echo "Starte IP-Paketfilter"

# iptables-Modul
modprobe ip_tables
# Connection-Tracking-Module
modprobe ip_conntrack
# Das Modul ip_conntrack_irc ist erst bei Kerneln >= 2.4.19 verfuegbar
# modprobe ip_conntrack_irc
modprobe ip_conntrack_ftp

# Tabelle flushen
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
iptables -t nat -X
iptables -t mangle -X

# Default-Policies setzen
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

# MY_REJECT-Chain
iptables -N MY_REJECT

# MY_REJECT fuellen
iptables -A MY_REJECT -p tcp -m limit --limit 7200/h -j LOG --log-prefix "REJECT TCP "
iptables -A MY_REJECT -p tcp -j REJECT --reject-with tcp-reset
iptables -A MY_REJECT -p #udp -m limit --limit 7200/h -j LOG --log-prefix "REJECT UDP "
iptables -A MY_REJECT -p udp -j REJECT --reject-with icmp-port-unreachable
iptables -A MY_REJECT -p icmp -m limit --limit 7200/h -j LOG --log-prefix "DROP ICMP "
iptables -A MY_REJECT -p icmp -j DROP
iptables -A MY_REJECT -m limit --limit 7200/h -j LOG --log-prefix "REJECT OTHER "
iptables -A MY_REJECT -j REJECT --reject-with icmp-proto-unreachable

# MY_DROP-Chain
iptables -N MY_DROP
iptables -A MY_DROP -m limit --limit 7200/h -j LOG --log-prefix "PORTSCAN DROP "
iptables -A MY_DROP -j DROP

# Alle verworfenen Pakete protokollieren
iptables -A INPUT -m state --state INVALID -m limit --limit 7200/h -j LOG --log-prefix "INPUT INVALID "
iptables -A OUTPUT -m state --state INVALID -m limit --limit 7200/h -j LOG --log-prefix "OUTPUT INVALID "
iptables -A FORWARD -m state --state INVALID -m limit --limit 7200/h -j LOG --log-prefix "FORWARD INVALID "

# Korrupte Pakete zurueckweisen
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A OUTPUT -m state --state INVALID -j DROP
iptables -A FORWARD -m state --state INVALID -j DROP

# Stealth Scans etc. DROPpen
# Keine Flags gesetzt
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags ALL NONE -j MY_DROP

# SYN und FIN gesetzt
iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags SYN,FIN SYN,FIN -j MY_DROP

# SYN und RST gleichzeitig gesetzt
iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN,RST -j MY_DROP

# FIN und RST gleichzeitig gesetzt
iptables -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags FIN,RST FIN,RST -j MY_DROP

# FIN ohne ACK
iptables -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags ACK,FIN FIN -j MY_DROP

# PSH ohne ACK
iptables -A INPUT -p tcp --tcp-flags ACK,PSH PSH -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags ACK,PSH PSH -j MY_DROP

# URG ohne ACK
iptables -A INPUT -p tcp --tcp-flags ACK,URG URG -j MY_DROP
iptables -A FORWARD -p tcp --tcp-flags ACK,URG URG -j MY_DROP

# Loopback-Netzwerk-Kommunikation zulassen
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# Maximum Segment Size (MSS) für das Forwarding an PMTU anpassen
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

# Connection-Tracking aktivieren
iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i ! ppp0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# FTP
iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 21 -j ACCEPT

# SSH
iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -i eth1 -m state --state NEW -p tcp --dport 22 -j ACCEPT

# IRC
iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 6667 -j ACCEPT

# EDONKEY
iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 4661 -j ACCEPT
iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 4662 -j ACCEPT
iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 4663 -j ACCEPT
iptables -A INPUT -i ppp0 -m state --state NEW -p udp --dport 4665 -j ACCEPT

# HALF-LIFE
iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 6000:6003 -j ACCEPT
iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 7001:7002 -j ACCEPT
iptables -A INPUT -i ppp0 -m state --state NEW -p udp --dport 27005 -j ACCEPT
iptables -A INPUT -i ppp0 -m state --state NEW -p udp --dport 27010 -j ACCEPT
iptables -A INPUT -i ppp0 -m state --state NEW -p udp --dport 27015:27016 -j ACCEPT

# IPSEC
iptables -A INPUT -i ppp0 -p 50 -j ACCEPT
iptables -A INPUT -i ppp0 -p 51 -j ACCEPT
iptables -A INPUT -i ppp0 -m state --state NEW -p udp --dport 500 -j ACCEPT

# OPENVPN
iptables -A INPUT -i ppp0 -m state --state NEW -p udp --dport 5000 -j ACCEPT

# IP-Adresse des LAN-Interfaces ermitteln
LAN_IP=$(ifconfig eth0 | head -n 2 | tail -n 1 | cut -d: -f2 | cut -d" " -f 1)

# NAT fuer HTTP
# iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 80 -j DNAT --to-destination
# iptables -t nat -A POSTROUTING -o eth0 -p tcp --dport 80 -j SNAT --to-source $LAN_IP
# iptables -A FORWARD -i ppp0 -m state --state NEW -p tcp -d --dport 80 -j ACCEPT

# LAN-Zugriff auf eth0
iptables -A INPUT -m state --state NEW -i eth0 -j ACCEPT
iptables -A INPUT -i eth1 -m state --state NEW -p udp -j ACCEPT -> das habe ich eingefügt !

# Default-Policies mit REJECT
iptables -A INPUT -j MY_REJECT
iptables -A OUTPUT -j MY_REJECT
iptables -A FORWARD -j MY_REJECT

# Routing
echo 1 > /proc/sys/net/ipv4/ip_forward 2> /dev/null

# Masquerading
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

# SYN-Cookies
echo 1 > /proc/sys/net/ipv4/tcp_syncookies 2> /dev/null

# Stop Source-Routing
for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/accept_source_route 2> /dev/null; done

# Stop Redirecting
for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/accept_redirects 2> /dev/null; done

# Reverse-Path-Filter
# Auskommentiert, da IPSEC mit RP_Filter nicht funktioniert!
# for i in /proc/sys/net/ipv4/conf/*; do echo 2 > $i/rp_filter 2> /dev/null; done

# Log Martians
for i in /proc/sys/net/ipv4/conf/*; do echo 1 > $i/log_martians 2> /dev/null; done

# BOOTP-Relaying ausschalten
for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/bootp_relay 2> /dev/null; done

# Proxy-ARP ausschalten
for i in /proc/sys/net/ipv4/conf/*; do echo 0 > $i/proxy_arp 2> /dev/null; done

# Ungültige ICMP-Antworten ignorieren
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses 2> /dev/null

# ICMP Echo-Broadcasts ignorieren
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts 2> /dev/null

# Max. 500/Sekunde (5/Jiffie) senden
echo 5 > /proc/sys/net/ipv4/icmp_ratelimit

# Speicherallozierung und -timing für IP-De/-Fragmentierung
echo 262144 > /proc/sys/net/ipv4/ipfrag_high_thresh
echo 196608 > /proc/sys/net/ipv4/ipfrag_low_thresh
echo 30 > /proc/sys/net/ipv4/ipfrag_time

# TCP-FIN-Timeout zum Schutz vor DoS-Attacken setzen
echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout

# Maximal 3 Antworten auf ein TCP-SYN
echo 3 > /proc/sys/net/ipv4/tcp_retries1

# TCP-Pakete maximal 15x wiederholen
echo 15 > /proc/sys/net/ipv4/tcp_retries2

;;

stop)
echo "Stoppe IP-Paketfilter"
# Tabelle flushen
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
iptables -t nat -X
iptables -t mangle -X
echo "Deaktiviere IP-Routing"
echo 0 > /proc/sys/net/ipv4/ip_forward

# Default-Policies setzen
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
;;

status)
echo "Tabelle filter"
iptables -L -vn
echo "Tabelle nat"
iptables -t nat -L -vn
echo "Tabelle mangle"
iptables -t mangle -L -vn
;;

*)
echo "Fehlerhafter Aufruf"
echo "Syntax: $0 {start|stop|status}"
exit 1
;;

esac
vielen dank
David

Benutzeravatar
Bert
Beiträge: 3751
Registriert: 16.07.2002 14:06:52
Wohnort: Dresden
Kontaktdaten:

Beitrag von Bert » 10.06.2003 19:00:40

Ich verstehe zwar nicht ganz, was das Installieren von dnsmasq mit dem Firewallscript zu tun hat, aber...

Was sind denn deine Interfaces? Du gehst mit DSL ins Netz (da ppp0) und über welches Interface läuft das ppp? eth0 oder eth1?
Wieso wird bei 'stop' alles auf ACCEPT gesetzt? Oder verguck ich mich blos?
Was mir noch auffällt: Wozu ist der expliziete eth1 Eintrag für SSH gut? Das wird durch das Connectiontracking sowieso erlaubt.

Ich hab das ganze allerdings nur überflogen und bin auch nicht der Firewall-Spezi...

PS: Wäre es nicht sinnvoller, einen eigenen Thread für sowas aufzumachen? Da findet man später bei ähnlichen Problemen das ganze leichter wieder...
Programmer: A biological machine designed to convert caffeine into code.
xmpp:bert@debianforum.de

Benutzeravatar
SicK
Beiträge: 21
Registriert: 03.06.2003 08:47:08
Wohnort: Erfurt
Kontaktdaten:

nachtrag

Beitrag von SicK » 10.06.2003 19:50:29

0. eth0 ist am dsl-modem, eth1 am switch
1. der dhcpd lieferte vor dem installieren von dnsmasq die dns-adresse von der t******m direkt an die clients.
2. nach dem installieren des dnsmasq, habe ich den eintrag für dns in der dhcpd.conf auf die ip des routers geändert, und noch in der configdatei vom dnsmasq als interface eth1 angegeben.
3. leider funktionierte es nicht, der dhcpd lieferte zwar den router als dns-server, aber leider konnten die adressen nicht aufglöst werden. mit meinem zusätzlichen eintrag funktionierte dann wieder alles.
4. warum bei stop alles auf accept gesetzt wird kann ich dir leider auch nicht sagen. mstte man dem harry mal schreibn.
5. ohne diesen zusätzlichen port22 auf eth1 eintrag komme ich nicht per ssh vom internen netz auf meinen router, von aussen klappt es, deswegen bin ich ja drauf gekommen den anderen eintrag zu machen um hoffentlich den dns durchzulassen !
##############

EDIT

##############
habe mir das dingens nochmal angesehn, obwohl ich ja keine ahnung habe !, dabei habe ich festgestellt, das als interne netzwerkkarte eth0 gedacht war, das habe ich jetzt in eth1 geändert. weiterhin habe ich die einträge für "udp","ssh" wieder gelöscht und das script gestoppt und wieder gestartet ! nun funzt es gerade wieder ! :)
allerdings habe ich eine kleine fehlermeldung erhalten:
Starte IP-Paketfilter
iptables v1.2.6a: Unknown arg `-p'

CIAo
David


CIAo
David

Benutzeravatar
Bert
Beiträge: 3751
Registriert: 16.07.2002 14:06:52
Wohnort: Dresden
Kontaktdaten:

Beitrag von Bert » 10.06.2003 22:25:46

an welcher Stelle er sich über das '-p' beschwert sehe ich auf Anhieb auch auch nicht.
Dein externes Interface (inet) ist nicht das eth0 (da läuft noch nicht mal TCP/IP drauf), sondern ppp0. Entsprechend mußt Du auch dnsmasq konfigurieren.

Mach in das Script doch mal ein paar

Code: Alles auswählen

echo 'mache jetzt das'
rein. Dann kannst Du die Stelle mit dem Fehler eingrenzen.
Programmer: A biological machine designed to convert caffeine into code.
xmpp:bert@debianforum.de

Benutzeravatar
SicK
Beiträge: 21
Registriert: 03.06.2003 08:47:08
Wohnort: Erfurt
Kontaktdaten:

ist das nicht richtig ?

Beitrag von SicK » 10.06.2003 22:28:56

debian:~# cat /etc/default/dnsmasq
# change these lines if you want dnsmasq to serve an MX record.
# only one need be set, the other defaults to the name of the host
# running dnsmasq
#MAILHOSTNAME=""
#MAILTARGET=""
# change this line if you want dns to get its upstream servers from
# somewhere other that /etc/resolv.conf
#RESOLV_CONF=""
# You might want to set this to "root" if RESOLV.CONF is set
# to /etc/ppp/resolv.conf since /etc/ppp/* are not world readable
DNSMASQ_USER="root"
# If you want dnsmasq to listen for requests on only one interface
# (and the loopback) give the name of the interface (eg eth0) here
DNSMASQ_INTERFACE="eth1"
# change these if you want dnsmasq to cache any "hostname"
# or "client-hostname" from a dhcpd's lease file
#DHCP_LEASE="/var/lib/dhcp/dhcpd.leases"
#DOMAIN_SUFFIX=`dnsdomainname`

CIAo
David

Benutzeravatar
SicK
Beiträge: 21
Registriert: 03.06.2003 08:47:08
Wohnort: Erfurt
Kontaktdaten:

jahre später

Beitrag von SicK » 27.07.2003 15:26:12

moin,

bin endlich mal wieder dazu gekommen nach meinem router zu schauen....

habe den rat mit dem echo ' mache dies und das ' befolgt und den fehler aufgespürt
iptables -A MY_REJECT -p #udp -m limit --limit 7200/h -j LOG --log-prefix "REJECT UDP "
hier versteckt sich eine #udp, und nun funzt alles super.

vielen dank
david

Antworten