Archiv verlassen und diese Seite im Standarddesign anzeigen : Firewall Script
debian-climber
29.10.02, 10:51
Hallo zusammen,
ich bräuchte ein kleines Firewall Script was mir folgendes realisiert.
Router (debian woody 2.4.19)
eth0= 192.168.1.1
eth1= 208.216.129.67 (öffentliche oder feste ip)
eth2= 192.168.2.1
Webserver,Mailserver (debian woody)
eth0= 192.168.2.2
Interne Clients
192.168.1.5 192.168.1.20 192.168.1.22 usw.
ich bräuchte ein Portforwarding von router port 80 auf webserver port 80 sowohl von draus als auch von innen.
ebenfals ein portforwarind von router port 22 ssh auf 192.168.1.5 port 22.
von innen sollte alles erlaubt sein.
der reste sollte alles abgeblock werden.
Ist das viel Aufwand so ein Script zu schreiben?
Wäre wirklich sehr wichtig? Muss das script heute noch zum laufen bringen.
Viele Grüsse
Matthias
Hallo,
ich empfehle Dir zunächst einen Blick in die iptables-FAQ unter http://www.harry.homelinux.org/modules.php?name=FAQ&myfaq=yes&id_cat=4&categories=Netfilter%2Fiptables.
Im wesentlichen werden dort alle Themen angeschnitten, mit denen Du Dich gerade auseinandersetzt (Masquerading, NAT).
Wenn Du dann noch Fragen hast, nur zu :D
Harry
debian-climber
30.10.02, 11:10
Stimmt das soweit?
cat firewall-neu
#!/bin/sh
# __
# (ww) (Innternet)
# /
# /-(eth1)
# / router(eth2) caribic(webserver)
# ||--------------||
# \
# \-(eth0)
# \
# ||(Switch)______
# / \ \ \ \ \
# ||----||----||----||----||
# Clients 192.168.1.2-30
# Variabeln _INT = Interface
INET=214.123.220.123
LAN1=192.168.1.0/24
LAN2=192.168.2.0/24
LAN1_INT=eth0
INET_INT=eth1
INET_INT=eth1
LAN2_INT=eth2
ANYWHERE=0.0.0.0/0
CARIBIC=192.168.2.2
# Löscht alle Regeln
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -A INPUT DROP
iptables -A OUTPUT DROP
# Loopback Interface aktivieren
iptables -A input -i lo -j ACCEPT
iptables -A output -o lo -j ACCEPT
# HTTP fürs LAN zulassen
iptables -A forward -p tcp -s $LAN1 --dport 80 -i $LAN1_INT -m state --state NEW -j ACCEPT
iptables -A forward -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A forward -p tcp -s $LAN2 --dport 80 -i $LAN2_INT -m state --state NEW -j ACCEPT
iptables -A forward -m state --state ESTABLISHED,RELATED -j ACCEPT
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -p tcp -s $ANYWHERE -d $192.168.1.1 \
--dport 80 -j DNAT --to-destination $CARIBIC
iptables -A FORWARD -p tcp -s $ANYWHERE -d 192.168.1.1 --dport 80 -j \
ACCEPT
#Masquerading
iptales -t nat -A POSTROUTING -o $INET_INT -j MASQUERADE
Viele Grüsse
Matthias
Hallo,
ich denke, das ganze läßt sich etwas vereinfachen und damit übersichtlicher gestalten:
#!/bin/bash
INET_INT=eth1
CARIBIC=192.168.2.2
# Löscht alle Regeln
iptables -F
iptables -A INPUT DROP
iptables -A OUTPUT DROP
# Loopback Interface aktivieren
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# HTTP zulassen
iptables -A FORWARD -p tcp --dport 80 -m state --state NEW -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# NAT zum Webserver
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination $CARIBIC
# Masquerading
iptales -t nat -A POSTROUTING -o $INET_INT -j MASQUERADE
# Forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
Harry
debian-climber
31.10.02, 09:38
vielen dank harry.
hab es noch ein wenig umgestellt -> funktioniert!
aber anstatt iptables -A input usw. muss es iptables -P input DROP usw. heissen
Viele Grüsse
Matthias
In Harry´s Script ist ein kleiner Fehler:
Es muss statt:
iptables -A INPUT DROP
iptables -A OUTPUT DROP
folgendermaßen heissen:
iptables -P INPUT DROP
iptables -P OUTPUT DROP
Deswegen frage ich mich gerade, wieso hat da überhaupt irgendwas funktioniert?
Original geschrieben von Jinto
In Harry´s Script ist ein kleiner Fehler:
Es muss statt:
iptables -A INPUT DROP
iptables -A OUTPUT DROP
folgendermaßen heissen:
iptables -P INPUT DROP
iptables -P OUTPUT DROP
Deswegen frage ich mich gerade, wieso hat da überhaupt irgendwas funktioniert?
ich frag mich, warum kein 'iptables -P FORWARD DROP'. ansonsten sind doch die forward-regeln nutzlos.
-j
Hallo,
ich find das Forum hier immer wieder Klasse, da auch meine eigenen Fehler korrigiert werden :D
Danke Jinto, danke Jasper :)
Harry
Original geschrieben von Harry
ich find das Forum hier immer wieder Klasse, da auch meine eigenen Fehler korrigiert werden :D
dito. jederzeit wieder, jederzeit gern :)
-j
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.