webForumDet fria alternativet

Hjälp med iptables regler

Nätverk

3 svar · 437 visningar · startad av andreaswebb

Medlem sedan apr. 2003101 inlägg
Frågan#1

Hej på er!

Håller på å plockar lite med iptables. Nedan är min konfig.

Det jag gör är att jag routar ut trafiken från den innre nätet så att de kan surfa. Men tanken är att bara tillåtna ip-adressen ska få surfa, resten ska skickas till den lokala webservern oberoende av vilken webadress man skriver i, då måste DNS tillåtas ut på nätet.

#!/bin/sh

# Raderar och återställer brandväggen
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
iptables -P INPUT DROP

iptables -F
iptables -t nat -F
iptables -X

# Aktiverar routing
echo "1" > /proc/sys/net/ipv4/ip_forward

# Tillåt kommunikation med de egna interfacen
iptables -A INPUT --in-interface lo --source 127.0.0.0/8 -j ACCEPT
iptables -A INPUT --in-interface lo -p tcp --source 192.168.120.1/32 --destination 192.168.120.1/32 -j ACCEPT

# Tillåt interna nätet att surfa in
iptables -A INPUT --source 192.168.120.0/24 -m state --state NEW  -p tcp --syn --destination-port 80 -j ACCEPT
iptables -A INPUT --source 192.168.120.0/24 -m state --state ESTABLISHED,RELATED -p tcp --destination-port 80 -j ACCEPT

# SSH
iptables -A INPUT --source 0/0 -m state --state NEW  -p tcp --syn --destination-port 22 -j ACCEPT
iptables -A INPUT --source 0/0 -m state --state ESTABLISHED,RELATED -p tcp --destination-port 22 -j ACCEPT

# DHCP och DNS
iptables -A INPUT --in-interface eth1 -p udp -d 0/0 --sport 67:68 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT --in-interface eth2 -p udp -d 0/0 --sport 67:68 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

iptables -A INPUT -p udp -s 0/0 -d 0/0 --sport 53 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

# ICMP trafik t.ex. PING
iptables -A INPUT --source 192.168.120.0/24 -p icmp --icmp-type 0 -j ACCEPT
iptables -A INPUT --source 192.168.120.0/24 -p icmp --icmp-type 8 -j ACCEPT
iptables -A INPUT --source 192.168.120.0/24 -p icmp --icmp-type 3 -j ACCEPT
iptables -A INPUT --source 192.168.120.0/24 -p icmp --icmp-type 11 -j ACCEPT

# Forwarding-regler
iptables -t nat -I POSTROUTING -o eth0 -j SNAT --to-source 192.168.0.14 --source 192.168.140.0/24
iptables -t nat -I POSTROUTING -o eth0 -j SNAT --to-source 192.168.0.14

# Omdirigera alla icke icke tillåtna till den interna webservern
iptables -t nat -A PREROUTING --in-interface eth1 -p tcp --dport 80 -j DNAT --to-destination 192.168.120.1

# Spärra allt
iptables -A FORWARD -j ACCEPT
iptables -A OUTPUT -j ACCEPT
iptables -A INPUT -j DROP

Tänkte mig att jag sätter en PREROUTING för all utgeånde trafik. Sedan så ger jag den de ip-adresser som den inte ska skicka vidare och de kommer då ut på nätet. Problemet blir när det blir fler än en, för då spelar det ingen roll om regeln gäller för det ip-nummret eller inte.

iptables -t nat -A PREROUTING --in-interface eth1 -p tcp --dport 80 -j DNAT --to-destination 192.168.120.1 ! --source 192.168.120.253

Kan tänka mig att det är lite som med rättigheter i NTFS, har man väl satt DENY så spelar det ingen roll om man är medlem i en grupp som har rättigheter.

Någon som har nån idé om hur jag kan göra istället eller hur man kan gå runt detta.

Mycket tacksam om jag kan få lite idéer :)

Medlem sedan jan. 2004527 inlägg
#2

Du vill alltså att bara en ipadress ska få surfa? eller vad menar du? :-)
Ska bara en i taget kunna surfa ut, eller är det en specifik dator som ska komma åt internet?

Medlem sedan apr. 2003101 inlägg
#3

Vill att utvalda datorer ska kunna surfa ut. Kan variera från ingen till 30+. Dessa som är tillåtna ska kunna göra allt på nätet, bara skickas genom brandväggen. Resten som ska allt blockas för, förutom internettrafiken som ska skickas vidare till den interna webservern. DNS ska alltid tillåtas ut oavsätt om man har tillåtelse eller inte.

Hoppas att det blev lite klarare ;)

Medlem sedan jan. 2004527 inlägg
#4

Okej, och du har 30 publika ipadresser? eller hur överbokat är det liksom?

260 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
130 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)