Iptables NAT olas -> Valami nem jo...

Fórumok

Udvozlok mindenkit,

A problemam a kovetkezo: Van egy iptables t futtato Mandriva linux 2006 om. A bongeszok szamara a squid van rendszeresitve helyi haloban, a tobbi program iptables el quicktables el legeneralt NAT tal fut.

Minden nagyon jol mukodik, de vannak egyes szolgaltatasok, amik semmi penzert nem hajlandoak menni.

PL a munkahelyem levelezoszerveren tarolt IMAP protokollal elerheto leveleimet nem.A PDA m kliense bejelentkezik, es sikeres autentikacio utan eldobja magat. De akarmelyik gepemen allitom be thunderbirdbe vagy outlookba, ugyanez az eredmeny belso halorol probalkozva. /BIZTOS nem rosszul beallitott kliens!/ A masik problema, hogy a kulonbozo okostelefonok nem ernek el egyes szolgaltatasokat...Pl egy zte blade en nem mukodik a youtube kliens, valamint innen sem erem el a munkahelyi mail szervert, valamint a youtube kliens, ami benne van mukodik, keresni is ra lehet videokra, de ha szeretnem oket megnyitni, akkor opening video...es itt megall a dolog, akarcsak a munkahelyi IMAP szervernel. Mert ott is eljutok az autentikacioig, es ott megall a dolog, de biztosan nalam van a hiba....Erdekes dolog, hogy a gmail kliensem hiba nelkul mukodik. Akar asztali geprol beszelunk, akar a blade telefonom beepitett klienserol, akar a pda m profimail programjarol.

En arra tippelek, hogy az en NAT olasommal lehet a problema.

Kerem szepen, legyetek szivesek ranezni a scriptre, amit hasznalok.

==============================================

#!/bin/sh
#
# generated by ./quicktables-2.3 on 2009.11.18.06
#

# set a few variables
echo ""
echo " setting global variables"
echo ""
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
iptables="/sbin/iptables"

# adjust /proc
echo " applying general security settings to /proc filesystem"
echo ""
if [ -e /proc/sys/net/ipv4/tcp_syncookies ]; then echo 1 > /proc/sys/net/ipv4/tcp_syncookies; fi
if [ -e /proc/sys/net/ipv4/conf/all/rp_filter ]; then echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter; fi
if [ -e /proc/sys/net/ipv4/ip_forward ]; then echo 1 > /proc/sys/net/ipv4/ip_forward; fi

# flush any existing chains and set default policies
$iptables -F INPUT
$iptables -F OUTPUT
$iptables -P INPUT DROP
$iptables -P OUTPUT ACCEPT

# setup nat
echo " applying nat rules"
echo ""
$iptables -F FORWARD
$iptables -F -t nat
$iptables -P FORWARD DROP
$iptables -A FORWARD -i eth1 -j ACCEPT
$iptables -A INPUT -i eth1 -j ACCEPT
$iptables -A OUTPUT -o eth1 -j ACCEPT
$iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
$iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp0 -j MASQUERADE

# allow all packets on the loopback interface
$iptables -A INPUT -i lo -j ACCEPT
$iptables -A OUTPUT -o lo -j ACCEPT

# allow established and related packets back in
$iptables -A INPUT -i ppp0 -m state --state ESTABLISHED,RELATED -j ACCEPT

# icmp
echo " applying icmp rules"
echo ""
$iptables -A OUTPUT -p icmp -m state --state NEW -j ACCEPT
$iptables -A INPUT -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT
$iptables -A INPUT -p icmp --icmp-type echo-request -i ppp0 -j DROP

# apply icmp type match blocking
echo " applying icmp type match blocking"
echo ""
$iptables -I INPUT -p icmp --icmp-type redirect -j DROP
$iptables -I INPUT -p icmp --icmp-type router-advertisement -j DROP
$iptables -I INPUT -p icmp --icmp-type router-solicitation -j DROP
$iptables -I INPUT -p icmp --icmp-type address-mask-request -j DROP
$iptables -I INPUT -p icmp --icmp-type address-mask-reply -j DROP

# drop all other packets
echo " applying default drop policies"
echo ""
$iptables -A INPUT -i ppp0 -p tcp --dport 0:65535 -j DROP
$iptables -A INPUT -i ppp0 -p udp --dport 0:65535 -j DROP

echo "### quicktables is loaded ###"
echo ""

==============================================

Elore is nagyon koszonom a segitseget.

Hozzászólások

Én azért próbálkoznék a ppp0 MTU-jának állításával is: 1492 vagy 1412-re. A NAT szabály jónak tűnik nekem.

Meg nem mondom neked korán reggel, hogy mi benne a hiba, de ne bonyolítsd túl az életed, ha nem muszáj:
Ezek a szabályok kb elegek:
sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
/sbin/iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
Ha müködik minden, akkor utána már belerakhatsz bonyolítást, vagy további tiltásokat, korlátozásokat és akkor legalább tudod követni melyik szabály okozhat problémát.
(Persze a a megfelelö interface neveket cseréld, esetleg töröld.)
Forrás:
google után: http://www.revsys.com/writings/quicktips/nat.html

De mandriva-ban van egy egész jól sikerült control center. Szerintem a hálózati vagy tüzfal résznél a NAT összekattintgatható emlékeim szerint.

Vagy ha már Mandriva, ott van a Shorewall. Azzal pofonegyszerű belőni az iptables NAT-olást. Nekem is úgy megy itthon (korábban Mandriva 2007, most a Mandriva alapú PcLos)

http://db.tt/Av0mBzR

Én tennék bele logolást aztán abból kiderül mivan:
/sbin/iptables -j LOG --log-prefix "Firewall blocked input:" --log-level 4

Ez legyen természetesen az utolsó sor, a végső DROP előtt.

----
올드보이
http://molnaristvan.eu/