← Back to team overview

sslug-teknik team mailing list archive

Re: Netfilter/portforwarding (sort magi?)

 

Jesper wrote:

> Jeg har sat en linux box op som adsl gateway (netexpress).
> Kerne 2.4.3
> Jeg ønsker nu at en intern mailserver på en anden maskine skal kunne nås
> udefra.
>
> jeg afgiver derfor følgende kommandoer. (forward er enablet tidligere)
> iptables -F
> iptables -F -t nat
> iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
> iptables -t nat -A PREROUTING -p tcp --dport 25 -i ppp0 -j DNAT --to
> 192.168.127.2
>
> 192.168.127.2 er den interne postserver linux boxen er 192.168.127.254.
>
> Problemet er nu at trafik på det lokale net fint når internette,
> mens det ikke udefra er muligt at telnette til ppp0's ip adresse på port 25
> ude fra internettet.
>
> Kommentarer modtages med taknemmelighed

Hvis dette er de eneste kommandoer, så er dine policies gode nok, da de
default er accept. Prøv i din forward kæde at tilføj en regel der logger alt
der har med din interne port 25 at gøre.

iptables -A FORWARD -p tcp --dport 25 -j LOG
iptables -A FORWARD -p tcp --sport 25 -j LOG

Dette burde kunne fortælle hvor henne det går galt. Loggen ses i
/var/log/messages

Problemet kunne også skyldes at du netop HAR pillet i dine policies, og derfor
skal tillade noget mere. Statefull inspection er her din ven.

Lav:
iptables -t nat -A PREROUTING -p tcp --dport 25 -i ppp0 -m state --state NEW
iptables -A FORWARD -m state --state ESTABLISHED,RELATED

Jeg tror nok dette burde afhjælpe dit problem. Du har enabled forwarding,
ellers ville din masquerading ikke virke, hvilket den gør.

Mvh. Jesper



Follow ups

References