Tìm hiểu về NAT, phân biệt NAT & PAT trên thiết bị tường lửa Firewall Cisco ASA

Thảo luận trong 'Firewall Cisco' bắt đầu bởi vientri, 19/10/17.

  1. vientri

    vientri New Member

    1. Giới thiệu về NAT

    NAT : chuyển đổi 1 địa chỉ IP thành 1 địa chỉ IP khác ( IP Public thành IP Private, Private thành Private, Public thành Public …)
    Các bạn có thể tham khảo bài viết TẠI ĐÂY để hiểu rõ hơn về NAT.

    Vậy NAT khác với Route như thế nào ?

    - Đối với NAT thì khi ngoài internet truy cập vào DMZ, user phải gõ ip của Firewall rồi sau đó Firewall sẽ redirect gói tin đó đến DMZ.
    - Còn đối với Route thì user ngoài internet gõ trực tiếp ip của DMZ thì có thể truy cập được. Nghĩa là một phiên làm việc sẽ được thiết lặp giữa user ngoài internet và DMZ.


    2. Các kiểu NAT trên Firewall ASA.

    Trước khi nói đến các kiểu NAT ta phải phân biệt được các loại địa chỉ sau:
    - Inside local address: Địa chỉ IP được gán cho một host của mạng trong. Đây là địa chỉ được cấu hình như là một tham số của hệ điều hành trong máy tính hoặc được gán một cách tự động thông qua các giao thức như DHCP. Địa chỉ này không phải là những địa chỉ IP hợp lệ được cấp bởi NIC (Network Information Center) hoặc nhà cung cấp dịch vụ Internet
    - Inside global address : Là một địa chỉ hợp lệ được cấp bởi NIC hoặc một nhà cung cấp dịch vụ trung gian. Địa chỉ này đại diện cho một hay nhiều địa chỉ IP inside local trong việc giao tiếp với mạng bên ngoài.
    - Outside local address: Là địa chỉ IP của một host thuộc mạng bên ngoài, các host thuộc mạng bên trong sẽ nhìn host thuộc mạng bên ngoài thông qua địa chỉ này. Outside local không nhất thiết phải là một địa chỉ hợp lệ trên mạng IP (có thể là địa chỉ private).
    - Outside global address: Là địa chỉ IP được gán cho một host thuộc mạng ngoài bởi người sở hữu host đó. Địa chỉ này được gán bằng một địa chỉ IP hợp lệ trên mạng Internet.
    Ví dụ như mô hình sau:
    upload_2017-10-19_16-32-45.jpeg

    • Inside Local: 192.168.2.23 địa chỉ được cấp phát cho các thiết bị inside và ko được quảng bá ra ngoài.
    • Inside Global: 203.10.5.23 là địa chỉ đại diện cho địa chỉ Inside Local để kết nối ra outside
    • Outside Global: 192.31.7.130 là địa chỉ được cấp phát cho các thiết bị trong mạng Outside và địa chỉ này ko được quảng cáo đến vùng Inside
    • Outside Local: 1.1.1.1 là địa chỉ đại diện cho outside global để kết nối với vùng Inside.
    Có 3 kiểu NAT chính
    • Static nat ( nat tĩnh)

    Static NAT là phương thức NAT một đổi một. Nghĩa là một địa chỉ IP cố định trong LAN sẽ được ánh xạ ra một địa chỉ IP Public cố định trước khi gói tin đi ra Internet. Phương pháp này không nhằm tiết kiệm địa chỉ IP mà chỉ có mục đích ánh xạ một IP trong LAN ra một IP Public để ẩn IP nguồn trước khi đi ra Internet làm giảm nguy cơ bị tấn công trên mạng.
    Phương án này có nhược điểm là nếu trong LAN có bao nhiêu IP muốn đi ra Internet thì ta phải có từng đó IP Public để ánh xạ. Do vậy phương án NAT tĩnh chỉ được dúng với các máy chủ thuộc vùng DMZ với nhiệm vụ Public các Server này lên Internet.

    • Dynamic NAT ( nat động )

    Nat động (Dynamic NAT) là một giải pháp tiết kiệm IP Public cho NAT tĩnh. Thay vì ánh xạ từng IP cố định trong LAN ra từng IP Public cố định. LAN động cho phép NAT cả dải IP trong LAN ra một dải IP Public cố định ra bên ngoài

    • NAT Overload
    upload_2017-10-19_16-33-45.jpeg

    Nat overload – PAT là giải pháp được dùng nhiều nhất đặc biệt là trong các Modem ADSL, đây là giải pháp mang lại cả hai ưu điểm của NAT đó là:

    - Ẩn địa chỉ IP trong hệ thống mạng nội bộ trước khi gói tin đi ra Internet giằm giảm thiểu nguy cơ tấn công trên mạng
    - Tiết kiệm không gian địa chỉ IP
    Bản chất PAT là kết hợp IP Public và số hiệu cổng (port) trước khi đi ra Internet. Lúc này mỗi IP trong LAN khi đi ra Internet sẽ được ánh xạ ra một IP Public kết hợp với số hiệu cổng.
    Trong ví dụ trên PAT sử dụng số port nguồn cùng với địa chỉ IP riêng bên trong để phân biệt khi chuyển đổi. Router thực hiện chuyển đổi địa chỉ ip nguồn từ 10.1.1.2 sang 203.0.113.2 port nguồn 1723. tương tự ip nguồn từ 10.1.1.1 sang 203.0.113.20 port nguồn là 1024.
    Giải pháp PAT thực sự tiết kiệm không gian địa chỉ IP vì với mỗi IP Public có thể đại diện cho 65.536 IP trong LAN theo lý thuyết, tuy nhiên thực tế mỗi IP Public đại diện cho khoảng 4000 IP trong LAN. Đây cũng là một con số địa chỉ IP khổng lồ thừa sức cung cấp cho bất kỳ một công ty nào lớn nhất thế giới.

    Bài viết liên quan:

    - Cấu hình NAT, PAT và Policy NAT trên tường lửa Firewall Cisco ASA
     
  2. huypham

    huypham New Member

    Tìm hiểu NAT & PAT trên Firewall Cisco ASA

    1. NAT là gì?

    NAT đã là một phần không thể thiếu khi triển khai mạng IP diện rộng do không gian địa chỉ IPv4 đã bắt đầu co hẹp. Về cơ bản, NAT cho phép một (hay nhiều) địa chỉ IP nội miền được ánh xạ với một (hay nhiều) địa chỉ IP ngoại miền. Điều này cho phép sử dụng dải địa chỉ IP riêng theo chuẩn RFC 1918 trên các mạng nội bộ trong khi chỉ sử dụng một hoặc một số ít các địa chỉ IP công cộng.

    Bởi vì địa chỉ IP riêng chỉ được dành cho các mạng nội bộ và được coi là “không thể định tuyến chung trên Internet công cộng, NAT chuyển các địa chỉ riêng thành các địa chỉ public , địa chỉ có khả năng định tuyến khi máy chủ mạng nội bộ cần phải kết nối tới được với máy chủ bên ngoài của mạng tư nhân.

    Thêm vào đó, nhiều tổ chức có thể khai triển cùng IP với nhau, NAT sẽ được sử dụng để giải quyết vấn đề khi các tổ chức này muốn giao tiếp trao đổi với nhau qua mạng.

    2. Lợi ích của NAT

    Một trong những lợi ích chính của NAT là việc thoải mái sử dụng số lượng địa chỉ ip private rộng lớn, hơn 17 triệu địa chỉ/ Điều này bao gồm 1 lớp địa chỉ mạng lớp A, 16 địa chỉ mạng lớp B và 256 địa chỉ mạng lớp C. Khi bạn sử dụng địa chỉ Ip private dù cho bạn có đổi nhà cung cấp dịch vụ, bạn sẽ không cần phải đánh lại địa chỉ cho các thiết bị trong mạng cục bộ mà bạn chỉ phải thay đổi cấu hình NAT trên firewall để trùng với địa chỉ IP public mới.

    Có nhiều loại NAT khác nhau có thể được thực hiện bởi Firewall. Trong đó có 2 loại tiêu biểu là NAT và PAT.

    3. Ví dụ về NAT

    Như được nói trước đó, NAT thực hiện việc dịch chuyển từ 1 địa chỉ đến 1 địa chỉ. Bạn thường sử dụng NAT tĩnh khi bạn có một Server, và bạn muốn mọi người trên Internet có thể truy cập Server này. Tuy nhiên, đối với các User trên mạng cục bộ bạn sẽ tạo một pool địa chỉ IP và để thiết bị NAT ngẫu nhiên chỉ định các địa chỉ IP public cho các thiết bị bên trong mạng cục bộ. Trong ví dụ này User bên trong mạng cục bộ đang truy cập nguồn tài nguyên bên ngoài Internet (User có địa chỉ 192.168.1.5 đang cố gắng truy cập 201.201.201.2)
    [​IMG]
    Hình 1: Ví dụ về NAT (a)

    Ở hình 1, bạn có thể nhìn thấy thực sự việc truyền dữ liệu từ 192.168.1.5. Firewall nhận gói tin từ 192.168.1.5 và quyết định xem nó có cần thực hiện NAT hay không và chuyển tiếp gói tin tới đích.

    Firewall nhận thấy gói tin đến nó và so sánh với rule NAT. Bởi vì gói tin trùng với rule trong chính sách NAT, Firewall sẽ dịch chuyển địa chỉ nguồn trong gói tin từ 192.168.1.5 thành 200.200.200.1, đây là địa chỉ IP public.

    Tiếp theo bạn có thể thấy địa chỉ đích 201.201.201.2 nhận gói tin. Nó nhận thấy địa chỉ nguồn là 200.200.200.1.
    [​IMG]
    Hình 2: Ví dụ về NAT (b)

    Khi đó máy đích gửi gói tin trả lời trở lại cho User, nó sử dụng địa chỉ IP public mà nó thấy được sau khi NAT là 200.200.200.1
    Tiếp theo Firewall nhận gói tin và kiểm tra chính sách NAT của nó. Sau khi quyết định cần thiết dịch chuyển lại địa chỉ ban đầu. Nó thấy địa chỉ 200.200.200.1 và thay đổi địa chỉ IP public này trở lại địa chỉ IP private ban đầu là 192.168.1.5, sau đó chuyển tiếp gói tin này vào địa chỉ User trong mạng cục bộ.

    4. Ví dụ về PAT

    Với PAT, firewall sẽ thay đổi địa chỉ IP và TCP/UDP port của gói tin. Ví dụ này nhà cung cấp dịch vụ ISP chỉ định cho bạn một địa chỉ IP public và bạn cần phải sử dụng địa chỉ này cho tất cả các kết nối của người dùng ra ngoài Internet.
    [​IMG]
    Hình 3: Ví dụ về PAT (a)

    Trong hình trên User ở địa chỉ 192.168.1.5 telnet đến 201.201.201.2. Firewall nhận gói tin và nó so sánh thông tin của gói tin với chính sách NAT và quyết định xem nó có cần thực hiện NAT hay không. Do nó trùng với chính sách vì thế firewall thực hiện việc NAT và thay đổi địa chỉ private 192.168.1.5 thành 200.200.200.1. Trong trường hợp này, thông số port nguôn là 1024 không được sử dụng trong bảng NAT nên nó vấn được giữ nguyên mà không thay đổi số Port. Chú ý rằng firewall thêm địa chỉ NAT này vào trong bảng NAT để mà nó có thể giải quyết vấn đề traffic quay trở lại mạng cục bộ. Máy đích nhận được gói tin sau khi NAT.
    Khi máy địch gửi gói tin trả về, nó sẽ sử dụng địa chỉ IP đích là 200.200.200.1 và port đích là 1024. Khi firewall nhận gói tin đến, nó quyết định xem có thực hiện NAT hay không và sau đó nó tìm kiếm xem có thuộc rule nào trong bảng NAT không. Khi thấy trùng, nó thay đổi địa chỉ đích từ 200.200.200.1 thành 192.168.1.5 và để lại port nguồn như ban đầu.

    Một ví dụ khác, giả sử có một máy cục bộ có địa chỉ 192.168.1.6 cũng telnet đến 201.201.201.2 với địa chỉ port nguồn là 1024
    [​IMG]
    Hình 4: Ví dụ về PAT (b)

    Firewall nhận gói tin, và gói tin trùng với chính sách NAT đã thiết lập. Firewall tạo một đối tượng NAT trong bảng NAT cho kết nối của User. Trong trường hợp này địa chỉ IP public 200.200.200.1 được sử dụng. Tuy nhiên bởi vì port nguồn 1024 đã tồn tại trong bảng NAT, nên firewall chỉ định một port khác là 1025 cho kết nối của User. Port nguồn khác nhau nhằm giúp cho thiết bị đích nhận biết, phân biệt giữa các kết nối là của 192.168.1.5 hay 192.168.1.6 và cũng cho phép Firewall Cisco dịch chuyển gói tin trả về từ 201.201.201.2

    Bài viết liên quan:

    - Cấu hình NAT, PAT và Policy NAT trên tường lửa Firewall Cisco ASA
     

trang này