JunOS İşletim Sistemi NAT Konfigürasyonu (SRX Firewall)

15
Şubat
2013
JunOS İşletim Sistemi NAT Konfigürasyonu (SRX Firewall)

Altıncı JunOS makalemizde, JunOS işletim sistemli bir Juniper SRX 3400 Firewall üzerinde NAT(Network Address Translation) konfigürasyonlarının nasıl gerçekleştirileceğini inceleyeceğiz.

IPv4 adreslerinin yetersizliğine çözüm olarak geliştirilmiş NAT fonksiyonu sayesinde internet ortamında kullanılan gerçek IP’ler (public) ve lokal ağda kullanılan özel IP’ler (private) arasında dönüşüm ve dolayısıyla iletişim mümkün olabilmektedir. Bu sayede zaten yetersiz kalan public IP’lerin lokal ağlarda kullanılma mecburiyerinin önüne geçilmiş olmaktadır.    

Private IP olarak kullanılabilecek IP blokları şu şekildedir:

Tüm firewall’larda özünde iki çeşit NAT konfigürasyonu gerçekleştirilmektedir. Bir tanesi Source NAT ve diğeri Destination NAT’tır. Yani lokal ağınızdaki sistemlerinizin internet ortamına erişimlerinde Source NAT tanımı yapılandırılmalıyken, internet ortamından lokal ağınızda publish ettiğiniz sistemlerinize erişimler için de destination NAT konfigürasyonu yapılandırılmalıdır.
Bu iki NAT tanımının haricinde bir de Static NAT vardır ki aslında görevi destination NAT’lık yapmaktır. Farklarını ve kullanımını ilerleyen sayfalarda inceleyeceğiz.

NAT
1 – Source NAT
2 - Destination NAT
       i- Destination NAT
      ii- Static NAT

NAT konfigürasyonları yapılandırılırken paketlerin source ve destination IP’leri için dönüşümler sağlanabildiği gibi port dönüşümleri de mümkün olabilmektedir(Port Address Translation - PAT).

Aşağıdaki topolojiye göre yapacak olduğumuz örnek konfigürasyonlarla JunOS CLI’ında NAT yapılandırmasını inceleyelim:

 

1 – Source NAT

Source NAT Örnek-1:
TRUST zone’undaki 192.168.1.11 IP’li bilgisayar internete 5.10.15.11 IP’si ile NAT’lanarak çıkış yapsın.

Source NAT Örnek-2: 
TRUST zone’undaki diğer tüm bilgisayarlar 5.10.15.12 ve 5.10.15.13 IP’leriyle çıkış yapsın. (İki IP’den oluşan bir Pool’un kullanımı)

Bunun için yapacak olduğumuz Source NAT konfigürasyonları aşağıdaki gibi olmalıdır:

Örnek-1:

-       Rule-Set Tanımlanmalı (Kaynağı TRUST hedefi UNTRUST olacak T_to_U  isimli bir rule-set tanımlayalım )

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat source rule-set T_to_U from zone TRUST
sensoy@Semerkand-Fw1# set security nat source rule-set T_to_U to zone UNTRUST

-       Pool Tanımlanmalı (Sensoy-pool isimli bir pool tanımlayalım)

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat source pool Sensoy-pool address 5.10.15.11/32

-       Rule Tanımlanmalı

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat source rule-set T_to_U rule Sensoy-rule match source-address 192.168.1.11/32
sensoy@Semerkand-Fw1# set security nat source rule-set T_to_U rule Sensoy-rule match destination-address 
0.0.0.0/0
sensoy@Semerkand-Fw1# set security nat source rule-set T_to_U rule Sensoy-rule then source-nat pool 
Sensoy-pool

 

Örnek-2:

-       Rule-Set Tanımlanmalı

T_to_U isimli bir rule-set bir önceki örnekte zaten tanımlanmıştı.

-       Pool Tanımlanmalı (All-Clients-pool isimli bir pool tanımlayalım)

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat source pool All-Clients-pool address 5.10.15.12/32 to 5.10.15.13/32

-       Rule Tanımlanmalı

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat source rule-set T_to_U rule All-Clients-rule match source-address 
0.0.0.0/0
sensoy@Semerkand-Fw1# set security nat source rule-set T_to_U rule All-Clients-rule match destination-address 0.0.0.0/0
sensoy@Semerkand-Fw1# set security nat source rule-set T_to_U rule All-Clients-rule then source-nat pool All-Clients-pool


Source NAT konfigürasyonunda pool tanımı kullandığımız iki örneği yukarıda gördük. Pool tanımının haricinde, Source NAT IP değeri olaral UNTRUST interface’inin IP’si de kullanılabilir.

sensoy@Semerkand-Fw1# set security nat source rule-set T_to_U rule All-Clients-rule then source-nat interface

Ya da Source NAT kullanılmasın da denilebilir.

sensoy@Semerkand-Fw1# set security nat source rule-set T_to_U rule All-Clients-rule then source-nat off

 

2 – Destination NAT

      i- Destination NAT

Destination NAT Örnek-1:
192.168.2.1 IP’li Web sunucumuz üzerinde geliştirilmiş sayfamızı dışarıdan 5.10.15.80 IP’si ile erişilebilir hale getirmek için(Web Publishing) Destination NAT tanımı yapalım.

Destination NAT Örnek-2:
192.168.5.1 IP’li SFTP sunucumuzu dışarıdan SSH portundan ve 5.10.15.22 IP’si ile erişilebilir hale getirmek için Destination NAT tanımı yapalım.

Örnek-1:

-       Rule-Set Tanımlanmalı (Kaynağı UNTRUST olacak U_DNAT isimli bir rule-set tanımlayalım )

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat destination rule-set U_DNAT from zone UNTRUST

-       Pool Tanımlanmalı (Web-pool isimli bir pool tanımlayalım)

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat destination pool Web-pool address 192.168.2.1/32
sensoy@Semerkand-Fw1# set security nat destination pool Web-pool address port 80

-       Rule Tanımlanmalı

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat destination rule-set U_DNAT rule Web–rule match source-address 0.0.0.0/0
sensoy@Semerkand-Fw1# set security nat destination rule-set U_DNAT rule Web–rule match destination-address 5.10.15.80/32
sensoy@Semerkand-Fw1# set security nat destination rule-set U_DNAT rule Web–rule match destination-port 80

sensoy@Semerkand-Fw1# set security nat destination rule-set U_DNAT rule Web–rule then destination-nat pool 
Web-pool


Örnek-2:

-       Rule-Set Tanımlanmalı

U_DNAT isimli bir rule-set bir önceki örnekte zaten tanımlanmıştı.

-       Pool Tanımlanmalı (SFTP-pool isimli bir pool tanımlayalım)

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat destination pool SFTP-pool address 192.168.5.1/32
sensoy@Semerkand-Fw1# set security nat destination pool SFTP-pool address port 22

-       Rule Tanımlanmalı

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat destination rule-set U_DNAT rule SFTP–rule match source-address 0.0.0.0/0
sensoy@Semerkand-Fw1# set security nat destination rule-set U_DNAT rule SFTP–rule match destination-address 5.10.15.22/32
sensoy@Semerkand-Fw1# set security nat destination rule-set U_DNAT rule SFTP–rule match destination-port 22
sensoy@Semerkand-Fw1# set security nat destination rule-set U_DNAT rule SFTP–rule then destination-nat pool SFTP-pool

 

2 – Destination NAT

      ii- Static NAT

Destination NAT tanımında yaptığımız iki örneği şimdi de Static NAT ile gerçekleştirelim.

Örnek-1:

-       Rule-Set Tanımlanmalı

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat static rule-set U_StNAT from zone UNTRUST

-       Rule Tanımlanmalı

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat static rule-set U_StNAT rule Web–rule match destination-address 5.10.15.80/32
sensoy@Semerkand-Fw1# set security nat static rule-set U_StNAT rule Web–rule then static-nat prefix 192.168.2.1/32


Örnek-2:

-       Rule-Set Tanımlanmalı

U_StNAT isimli bir rule-set bir önceki örnekte zaten tanımlanmıştı.

-       Rule Tanımlanmalı

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat static rule-set U_StNAT rule Web–rule match destination-address 5.10.15.22/32
sensoy@Semerkand-Fw1# set security nat static rule-set U_StNAT rule Web–rule then static-nat prefix 192.168.5.1/32


Destination NAT ile Static NAT arasındaki en büyük fark, Static NAT konfigürasyonunda port tanımlama imkanının bulunmamasıdır. Tanımlanan NAT, tüm port’lar için geçerli olacaktır.

Ayrıca, Static NAT tanımlanmış bir Server, dışarıya da aynı IP ile NAT’lanıp çıkar. Bizim örneğimizde Web Server için 
5.10.15.80 ß à192.168.2.1 şeklinde bir Static NAT tanımı yaptık. 192.168.2.1 IP’li Web sunucumuz, internete erişim gerçekleştirdiğinde de IP’si 5.10.15.80 olarak görülecektir. Farklı bir IP ile NAT’lanıp çıkması mümkün olmayacaktır.



Proxy-ARP Konfigürasyonu

İster Source isterse de Destination( Destination & Static) NAT tanımı gerçekleştirilsin, NAT konfigürasyonunda tanımlanan tüm IP’ler için Proxy-ARP tanımı yapılmak zorundadır. Bizim örneklerimizde kullandığımız Public IP’ler şunlardı:

5.10.15.11/32 
5.10.15.12/32
5.10.15.13/32
5.10.15.80/32
5.10.15.22/32

Bu beş IP için yapılması gereken Proxy-ARP konfigürasyonu aşağıdaki gibi olmalıdır:

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security nat proxy-arp interface reth1.0 address 5.10.15.11/32
sensoy@Semerkand-Fw1# set security nat proxy-arp interface reth1.0 address 5.10.15.12/32
sensoy@Semerkand-Fw1# set security nat proxy-arp interface reth1.0 address 5.10.15.13/32
sensoy@Semerkand-Fw1# set security nat proxy-arp interface reth1.0 address 5.10.15.80/32
sensoy@Semerkand-Fw1# set security nat proxy-arp interface reth1.0 address 5.10.15.22/32


Son olarak, Destination NAT tanımı yaptığımız Web Server için yazılacak policy örneğiyle makalemizi sonlandıralım.  Dikkat edilmesi gereken husus, policy’nin destination-address kısmında public IP değil private IP tanımlanması gerektiğidir. Yani destination-address kısmında 5.10.15.80 değil, 192.168.2.1 IP’si yazılmalıdır.

{primary:node0}[edit]
sensoy@Semerkand-Fw1# set security policies from-zone UNTRUST to-zone WEB policy WebSayfasi-Erisim match source-address any

sensoy@Semerkand-Fw1# set security policies from-zone UNTRUST to-zone WEB policy WebSayfasi-Erisim match destination-address WEB_Server-192.168.2.1
sensoy@Semerkand-Fw1# set security policies from-zone UNTRUST to-zone WEB policy WebSayfasi-Erisim match application junos-http
sensoy@Semerkand-Fw1# set security policies from-zone UNTRUST to-zone WEB policy WebSayfasi-Erisim then permit
sensoy@Semerkand-Fw1# set security policies from-zone UNTRUST to-zone WEB policy WebSayfasi-Erisim then log session-close


Hoşçakalın.


Şensoy Şahin

EC-Council         

Certified Ethical Hacker CEH

Juniper           

JNCIA-JunOS,  JNCIS-SEC

F5-BIGIP        

F5 Certified System Engineer (F5-SEL, F5-SEG)

CITRIX Netscaler

Citrix Certified Administrator for Netscaler (CCA)

 

MAKALEYE YORUM YAZ

İsminiz
E-posta adresiniz
Yorumunuz
Doğrulama kodu ?

Copyright © 2006 - 2013  DESTEKYERI.COM

Embedded by  ® SANALOG Tüm Hakları Saklıdır . Yayınlanan yazıların izin alınmadan kopyalanması ve kullanılması  5846 sayılı Fikir ve Sanat Eserleri Yasasına göre suçtur. Makalelerin "alıntı" olduğunu belirterek yayınlayabilir ve kaynağı belirtmeniz önemlidir !!!