STEagleEye
Grünschnabel
ich bin gerade dabei mir einen kleinen router einzurichten nur leider hab ich ein problem mit den iptables
der router selbst kommt nur raus wenn ich die output polices auf accept stelle
und die clienten kommen garnicht raus
und auch das schreiben der 1 in /proc/sys/net/ipv4/ip_forward geht nicht vi sagt mir "file truncated"
ich hab debian 3.0 mit kernel 2.4
hier mal meine tables script
der router selbst kommt nur raus wenn ich die output polices auf accept stelle
und die clienten kommen garnicht raus
und auch das schreiben der 1 in /proc/sys/net/ipv4/ip_forward geht nicht vi sagt mir "file truncated"
ich hab debian 3.0 mit kernel 2.4
hier mal meine tables script
Code:
#!/bin/bash
###########################
# iptables fr den router
###########################
# 192.168.0.1 EagleRouter
# 192.168.0.2 EagleServer
# 192.168.0.3 EagleEye
# 192.168.0.4 EagleSchleppi
###########################
#
#
###########################
# dienstname tcp udp
###########################
## EagleRouter
###########################
# von auen erreichbar
##
# ftp 20
# cvs 22
# ssh 22
# apache 81
# apache ssl 444
# mysql 3607
# joneserver 5866
# dnsupdater
##
# ausgang erlauben
##
###########################
###########################
## EagleServer
###########################
# von auen erreichbar
##
# ftp 21
# ssh 23
# apache 80
# apache ssl 443
# tomcat 8080
# mysql 3606
# vnc 5901
##
# ausgang erlauben
##
###########################
###########################
## EagleEye
###########################
# von auen erreichbar
##
# ftp 19
# vnc 5900
# overnet 4663 4662
##
# ausgang erlauben
##
# overnet 4663 4662
###########################
###########################
# EagleSchleppi
# von auen erreichbar
##
##
# ausgang erlauben
##
###########################
###########################
# Global
###########################
# von auen erreichbar
##
# uptime
# irc
# icq
# msn
##
# ausgang erlauben
##
# ftp 21
# mail smtp 25
# apache 80
# mail pop 110
# apache ssl 443
# mysql 3600
# vnc 5900
# jone 5866
# tomcat 8080
# uptime
# icq
# irc
# msn
# cvs
###########################
###########################
## hilfe
###########################
# -t tabelle ?
# -A am ender der tabelle anhngen
# -o ausgehende schnittstelle
# -i eingangs schnittstelle
# -j (jump) aktion die ausgelst werden soll oder neue tabelle die durchlaufen werden soll
# -P policies setzen fr die tabelle = was passiert wenn die tabelle durchlaufen ist und das paket
# variablen
EXTIF="ppp0"
INTIF="eth0"
IPTABLES=/sbin/iptables
echo "Start"
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "Alle bestehenden Regeln löschen: "
$IPTABLES -F
$IPTABLES -t nat -F
echo "gelöscht"
echo "Default auf DROP stellen:"
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP
$IPTABLES -A INPUT -i $EXTIF -p icmp -j ACCEPT
echo "done"
# Aufm loopback will ich keine Firewall
echo "Loopback freischalten:"
$IPTABLES -A INPUT -i lo -j ACCEPT
echo "done"
# ebensowenig im LAN (sollte ja im privaten LAN kaum ntig sein)
echo "LAN Interface freischalten:"
$IPTABLES -A INPUT -i $INTIF -j ACCEPT
echo "done"
######################################
# eingang
######################################
# mysql server
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 3606 -j ACCEPT # haupt mysql server auf eagleserver
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 3607 -j ACCEPT # ersatz mysql server auf dem router
$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 3606 -j DNAT --to-dest 192.168.0.2:3606
$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 3607 -j DNAT --to-dest 192.168.0.1:3606
# apache
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 81 -j ACCEPT # haupt apache auf dem router
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 443 -j ACCEPT # hautp apache ssl auf dem router
#$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 81 -j DNAT --to-dest 192.168.0.2:80
#$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 444 -j DNAT --to-dest 192.168.0.2:443
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 81 -j ACCEPT # ersatz apache auf dem server
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 444 -j ACCEPT # ersatz apache ssl auf dem server
$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 80 -j DNAT --to-dest 192.168.0.2:80 # ersatz apache auf dem server
$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 443 -j DNAT --to-dest 192.168.0.2:442 # ersatz apache ssl auf dem server
# tomcat
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 8080 -j ACCEPT # tomcat auf dem server
$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 8080 -j DNAT --to-dest 192.168.0.2:8080 # tomcat auf dem server
# ftp server
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 19 -j ACCEPT # ftp auf eagleeye
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 20 -j ACCEPT # ftp auf dem router
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 21 -j ACCEPT # ftp auf dem server
$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 19 -j DNAT --to-dest 192.168.0.3:21 # eagleeye
$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 20 -j DNAT --to-dest 192.168.0.2:21 # eaglerouter
$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 21 -j DNAT --to-dest 192.168.0.1:21 # eagleserver
# ssh
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 22 -j ACCEPT # ssh auf dem router
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 23 -j ACCEPT # ssh auf dem server
$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 23 -j DNAT --to-dest 192.168.0.2:22 # eagleserver
# cvs
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 22 -j ACCEPT # cvs auf dem router luft ber ssh
# jone server
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 5866 -j ACCEPT # server fr jone auf router
# vnc server
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 5900 -j ACCEPT # vnc auf eagleeye
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 5901 -j ACCEPT # vonc auf dem server
$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 5900 -j DNAT --to-dest 192.168.0.3:5900 # eagleeye
$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 5901 -j DNAT --to-dest 192.168.0.2:5900 # eagleserver
# overnet
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 4663 -j ACCEPT
$IPTABLES -A INPUT -i $EXTIF -p UDP --dport 4662 -j ACCEPT
$IPTABLES -t nat -A PREROUTING -i $EXTIF -p TCP --dport 4663 -j DNAT --to-dest 192.168.0.3:4663 # eagleeye
$IPTABLES -t nat -A PREROUTING -i $EXTIF -p UDP --dport 4662 -j DNAT --to-dest 192.168.0.3:4662 # eagleeye
# icq
#$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 5010 -j ACCEPT
#$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 5011 -j ACCEPT
#$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 5012 -j ACCEPT
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 5190 -j ACCEPT
$IPTABLES -A INPUT -i $EXTIF -p UDP --dport 5190 -j ACCEPT
$IPTABLES -A INPUT -i $EXTIF -p UDP --dport 5200 -j ACCEPT
# msn
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 6891 -j ACCEPT
# irc
$IPTABLES -A INPUT -i $EXTIF -p TCP --dport 6667 -j ACCEPT
iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# Um eventuelles Spoofing zu verhindern sperren wir die betroffenen Gebiete einfach aus.
echo "Spoofed IPs blocken:"
$IPTABLES -A INPUT -i $EXTIF -p TCP -s 255.255.255.255 -j REJECT
$IPTABLES -A INPUT -i $EXTIF -p UDP -s 255.255.255.255 -j REJECT
$IPTABLES -A INPUT -i $EXTIF -p TCP -s 0.0.0.0 -j REJECT
$IPTABLES -A INPUT -i $EXTIF -p UDP -s 0.0.0.0 -j REJECT
$IPTABLES -A INPUT -i $EXTIF -p TCP -s 192.168.0.0/24 -j REJECT
$IPTABLES -A INPUT -i $EXTIF -p UDP -s 192.168.0.0/24 -j REJECT
echo "done"
echo "Regeln fr NAT:"
$IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
$IPTABLES -A FORWARD -i $INTIF -o $EXTIF --source 192.168.0.0/24 -j ACCEPT
echo "done"
# Für aktives FTP brauchst du diesen Port offen und das entsprechende Kernelmodul!
echo "Aktives FTP freischalten:"
$IPTABLES -A INPUT -d $LNET -p TCP -i $EXTIF --sport 20 -j ACCEPT
echo "done"
# Das gesamte forwarding und die statematches.
echo "TCP Pakte aus dem Inet fr bereits bestehenden Verbindungen durchlassen"
$IPTABLES -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -i $EXTIF -m state --state ESTABLISHED -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 19 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 20 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 21 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 22 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 23 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 80 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 81 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 443 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 444 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 3306 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 3307 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 4663 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p UDP --dport 4662 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 5900 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 5901 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 5866 -j ACCEPT
$IPTABLES -A FORWARD -i $EXTIF -p TCP --dport 8080 -j ACCEPT
echo "done"
echo "Paketfilter set"
Zuletzt bearbeitet: