NAT JUNOS

From Teknologisk videncenter
Revision as of 17:44, 11 January 2015 by Rael (talk | contribs) (Destination NAT)
Jump to: navigation, search

Juniper SRX enheder arbejder med 3 forskellige typer nat

Static NAT
One-to-one
Bruges som regl til at oversætte en offentlig adresse til en privat adresse på intersiden. Static NAT er 2-vejs, det vil sige at en nat regl tillader pakker fra inderside host til yderside og fra yderside til inderside.
Source NAT
Many-to-one
Source nat bruges oftest til at tillade flere private inderside adresser at blive oversat til 1 eller flere offentlige yderside adresser.
Destination NAT
One-to-many
Bruges som regl til at præsentere inderside servere på internettet.

Konfigurations eksempler

Eksempler og referencer er tilrettet til behovet i diagrammet ovenfor men fundet i Junipers NAT Guide

Image text

Source NAT

Ydersiden er forbiundet til en access port i vlan 99 og indersiden er forbundet til en access port i vlan 10. For hver af de 2 vlans er der oprettet et RVI: vlan.10 for VLAN 10 og vlan.99 for VLAN 99

[edit]
rael@SRX240# <input>show interfaces vlan</input>
unit 10 {
    family inet {
        address 10.0.255.1/24;
    }
}
unit 99 {
    family inet {
        dhcp;
    }
}

Hvert RVI interface er smidt i en security zone kalder trust for LAN netværket(10.0.255.0/24) og untrust for WAN netværket(192.168.146.0/24).

[edit]
rael@SRX240# <input>show security zones security-zone trust</input>
host-inbound-traffic {
    system-services {
        all;
    }
    protocols {
        all;
    }
}
<notice>interfaces {
    vlan.10;
}</notice>

[edit]
rael@SRX240# <input>show security zones security-zone untrust</input>
screen untrust-screen;
interfaces {
    vlan.99 {
        host-inbound-traffic {
            system-services {
                dhcp;
                tftp;
            }
        }
    }
}

Source NAT reglen er lavat så alt traffik der kommer fra et interface i en trust zone og bliver routet til et interface i untrust zonen, bliver NAt'et til ydersidens IP adresse. Alt trafik er tilladt.

[edit]
rael@SRX240# <input>show security nat source</input>
rule-set trust-to-untrust {
    from zone trust;
    to zone untrust;
    rule source-nat-rule {
        match {
            source-address 0.0.0.0/0;
        }
        then {
            source-nat {
                interface;
            }
        }
    }
}

Da vi arbejder på en SRX i Flow-mode skal trafikken også tillades i en politik. Som default tillader vi fra alt, til alt, på alle protokoller.

[edit]
rael@SRX240# <input>show security policies</input>
from-zone trust to-zone untrust {
    policy trust-to-untrust {
        match {
            source-address <notice>any</notice>;
            destination-address <notice>any</notice>;
            application <notice>any</notice>;
        }
        then {
            permit;
        }
    }
}

Destination NAT

På serveren er der installeret en webserver på port 80. Den skal nu præsenteres på internettet på port 80 & 8080.
Først oprettet web servicen som en pool

[edit]
rael@SRX240# <input>show security nat destination</input>
pool JServer-10_0_255_10-80 {
    address 10.0.255.10/32 port 80;
}

Så oprettes 2 NAT regler for port 80 & 8080. Da vi har en DHCP tildelt adresse på ydersiden er destinations adressen sat til hele /24 netværket.(Proxy-ARP er ikke konfigureret så i dette setup vil det virke)

[edit]
rael@SRX240# <input>show security nat destination</input>
rule-set untrust-to-trust {
    from zone untrust;
    rule dest-nat-jserver-8080 {
        match {
            destination-address 192.168.146.0/24;
            destination-port 8080;
        }
        then {
            destination-nat pool JServer-10_0_255_10-80;
        }
    }
    rule dest-nat-jserver-80 {
        match {
            destination-address 192.168.146.0/24;
            destination-port 80;
        }
        then {
            destination-nat pool JServer-10_0_255_10-80;
        }
    }
}

Til sidste tillades HTTP trafik fra alle adresser til serverens adresse af en policy.
Læg her mærke til at adressen er inderside adresse på serveren og der kun matches på http/port 80. Destinations NAT ligger før policies i JUNOS Flowet og skal derfor konfigureres sådan.

[edit]
rael@SRX240# <input>show security policies</input>
from-zone untrust to-zone trust {
    policy untrust-to-trust {
        match {
            source-address any;
            <notice>destination-address JServer-10.0.255.10;
            application junos-http;</notice>
        }
        then {
            permit;
        }
    }
}

Fejlfinding

Verifying NAT Configuration

Referencer