micneu
Goto Top

Iptables zugriff nur auf einen bestimmten port von einem bestimmten neterkkarte

Hallo Leute,

ich bin noch nicht so fit in iptables und möchte eine openvpn Verbindung so einschränken das die User nur auf den Port 80 kommen über die Verbindung.
Alle anderen sollen keine Einschränkungen habe.

Mein Ansatz ist:
iptables -A firewall -o tap1 -d ! 192.168.201.1 -j DROP
iptables -A firewall -o tap1 -p tcp --dport ! 80 -j DROP
oder
iptables -A firewall -o tap1 -d ! 192.168.201.1 -p tcp --dport ! 80 -j DROP
iptables -A firewall -o tap1 -p icmp -j ACCEPT
oder 
iptables -A firewall -p icmp -j ACCEPT
hoffe ihr könnt mir helfen.

gruß michael

Content-ID: 168103

Url: https://administrator.de/contentid/168103

Ausgedruckt am: 23.11.2024 um 10:11 Uhr

Hitman4021
Hitman4021 16.06.2011 um 10:03:10 Uhr
Goto Top
Hallo,

Versuchs mal so

####################################
##
##	Allgemeine Definitionen
##
####################################
IPTABLES="/sbin/iptables"	#Pfad zu den Iptables  
ECHO="/bin/echo"		#echo  
TAP="eth0"			#Standard Netzwerkkart  
DEFAULT="tap"			#OpenVPN Netzwerkkarte  
HTTP="80"                          #HTTP Port  

####################################
##
## Aktiviere Forwarding
##
####################################
$ECHO "1" > /proc/sys/net/ipv4/ip_forward  

####################################
##
## Leere die Ketten 
##
####################################
$IPTABLES -F

####################################
##
## Sperre Forwarding
##
####################################
$IPTABLES -P FORWARD DROP

####################################
##
## Regeln
##
####################################
#Erlaube Antworten auf  bereits angenommene Verbindungen
$IPTABLES -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#Erlaube neue Verbindungen auf Port 80
$IPTABLES -A FORWARD -i $DEFAULT -o $TAP -p tcp --dport $HTTP  -m state --state NEW -j ACCEPT

Und für die ICMP Funktion Ping die du warscheinlich mit dem zweiten Fenster meinst würde das in etwas so aussehen
$IPTABLES -A FORWARD -i $DEFAULT -o $TAP -p icmp --icmp-type ping -m state --state NEW -j ACCEPT

Gruß
Hitman
micneu
micneu 16.06.2011 um 10:12:26 Uhr
Goto Top
@HITMAN;
danke, warum sperrst du Forwarding?

ich habe mehrere OpenVPN´s laufen und möchte die anderen bisher nicht einschrenken, die sollen vollen zugriff auf das komplette netz haben.

gruß michael
Hitman4021
Hitman4021 16.06.2011 um 10:15:16 Uhr
Goto Top
Hallo,

okay da habe ich was falsch verstanden. Ich habe das so verstanden das du alle User die über Open VPN arbeiten nur Port 80 anbieten willst.
Also du willst nur einen einzigen User alles bis auf Port 80 sperren?
Habe ich das jetzt richtig verstanden?

Gruß
hitman
micneu
micneu 16.06.2011 um 10:20:46 Uhr
Goto Top
@hitmann, ja fasssst face-smile alles was über das device "tap1" kommt darf nur auf den webserver, der rest darf einfach alles.

ist denn meine regel die ich gemacht hatte wirklich kom´plett falsch?
du nutz "-o" ich denke das brauche ich nicht oder ist das wichtig?

gruß michael
Hitman4021
Hitman4021 16.06.2011 um 10:32:11 Uhr
Goto Top
Zitat von @micneu:
@hitmann, ja fasssst face-smile alles was über das device "tap1" kommt darf nur auf den webserver, der rest darf einfach
alles

#Nehme Verbindungen von Port 80 an und Erlaube Ping
$IPTABLES -A FORWARD -i $TAP1 -p tcp --dport $HTTP  -m state --state NEW -j ACCEPT 
$IPTABLES -A FORWARD -i $TAP1 -p icmp --icmp-type ping -m state --state NEW -j ACCEPT
#Lehne alle Anfragen ab die oben nicht explizit genehmigt worden sind
$IPTABLES -A FORWARD -i $TAP1 -p tcp -j DROP
$IPTABLES -A FORWARD -i $TAP1 -p udp -j DROP
$IPTABLES -A FORWARD -i $TAP1 -p icmp -j DROP


ist denn meine regel die ich gemacht hatte wirklich kom´plett falsch?
Naja ich kann ohne die Definitionen nicht wirklich was anfangen also hab ich es gleich neu versucht ;)

du nutz "-o" ich denke das brauche ich nicht oder ist das wichtig?
Das -o sagt über welche schnittstelle etwas rausgeht aber du willst alles was VON (also -i) tap1 kommt sperren

gruß Hitman
micneu
micneu 16.06.2011 um 10:53:31 Uhr
Goto Top
danke....

gruß michael