Những lệnh thao tác bảng nat

Một phần của tài liệu tìm hiểu và cài đặt hệ thống firewall kết hợp với proxy để bảo vệ hệ thống mạng bên trong (Trang 51 - 55)

2.5.4.1. Target SNAT

Ánh xạ địa chỉ nguồn và số hiệu cổng (NAPT) là loại ánh xạ địa chỉ mà mọi người hay dùng nhất. Theo hình 9, ánh xạ địa chỉ nguồn được thực hiện sau khi việc định tuyến đã được quyết định. Vì thế SNAT chỉ

Trang 51

được dùng với chain POSTROUTING, bởi vì SNAT được áp dụng ngay trước khi gói tin được chuyển đi.

NAPT được sử dụng khi chúng ta chỉ có một địa chỉ public. Số hiệu cổng nguồn sẽ được thay đổi thành một cổng tự do trên máy Firewall/NAT bởi vì nó chuyển đổi cho mọi máy trong mạng trong, và số hiệu cổng được sử dụng trên máy trong mạng có thể đã được sử dụng bên máy NAT. Khi có trả lời, số hiệu cổng là tất cả những gì máy NAT cần để xác định được gói tin đó là cho một máy bên trong mạng hay là cho chính nó, sau đó nó sẽ xác định xem máy bên trong nào cần gói tin.

Cú pháp cở bản của SNAT như sau:

2.5.4.2. Target MASQUERADE

Ánh xạ địa chỉ nguồn được iptables thực thi với hai dạng khác nhau là SNAT và MASQUERADE. Sự khác biệt nằm ở chỗ MASQUERADE được sử dụng cho interface có kết nối địa chỉ động, và thường trong trường match kết nối là tạm thời, việc gán địa chỉ thường khác nhau mỗi lần kết nối mới. MASQUERADE sẽ rất hữu ích khi sử dụng kết nối quay số.

Vì MASQUERADE là một dạng đặc biệt của SNAT, nó không cần tham số nào để chỉ ra địa chỉ nguồn sẽ được áp vào gói tin. Địa chỉ của interface đi ra sẽ mặc nhiên được sử dụng.

Cú pháp cở bản của MASQUERADE như sau:

iptables -t nat -A POSTROUTING \

--out-interface <interface> ... \

-j MASQUERADE [--to-ports <port>[-<port>]] iptables -t nat -A POSTROUTING \

--out-interface <interface> ... -j SNAT \

Trang 52

2.5.4.3. Target DNAT

Ánh xạ địa chỉ đích và số hiệu cổng là một dạng đặc biệt của NAT. Ở những site nhỏ, thường tính năng này sẽ trở nên rất hữu dụng nếu site chỉ có một địa chỉ public hoặc địa chỉ public là địa chỉ động và quản trị viên thường trung chuyển những kết nối đến từ bên ngoài vào một server bên trong không nhìn thấy được từ bên ngoài.

Theo hình xxx, ánh xạ địa chỉ đích và số hiệu cổng có thể được thực hiện trước quyết định định tuyến. Vì vậy DNAT chỉ được sử dụng với chain PREROUTING và chain OUTPUT. Trong chain PREROUTING, DNAT được áp cho gói tin đến từ một interface nào đó. Trong chain OUTPUT, DNAT được áp cho gói tin đi ra một interface nào đó.

Cú pháp cở bản của DNAT như sau:

2.5.4.4. Target REDIRECT

Chuyển hướng cổng là một trường match đặc biệt của DNAT. Gói tin sẽ được chuyển hướng đến một cổng khác tại trạm cục bộ. Các gói tin đến sẽ được trung chuyển hoặc chuyển hướng cổng tại interface đến qua chain INPUT. Gói tin đi ra được tạo ra từ trạm cục bộ chuyển cổng dựa vào interface loopback.

REDIRECT chỉ là một cách thay thế cho ngắn gọn dễ hiểu, một trường match đặc biệt khi chuyển hướng gói tin đến chính máy đang có Firewall. REDIRECT không có thêm tính năng nào mới, đồng thời DNAT có thể dễ dàng thực hiện chức năng trên.

iptables -t nat -A PREROUTING \

--in-interface <interface> ... \ -j DNAT --to-destination <address>[- <address>][:<port>-<port>]

iptables -t nat -A OUTPUT \

--out-interface <interface> ... -j DNAT \ --to-destination <address>[-<address>][:<port>- <port>]

Trang 53

REDIRECT cũng chỉ được áp dụng cho chain PREROUTING và chain OUTPUT.

Cú pháp cở bản của REDIRECT như sau:

2.5.4.5. Target BALANCE

BALANCE NAT cho phép sử dụng thuật toán round-robin để gửi kết nối đến nhiều hơn một địa chỉ trạm. BALANCE sử dụng một dải địa chỉ nhằm mục đích cung cấp cân bằng tải.

Cú pháp cở bản của BALANCE như sau:

2.5.5. Những thao tác bảng mangle

Bảng mangle làm nhiệm vụ đánh dấu các gói tin và có hai target là MARK và TOS. Tùy chọn của hai target này được chi tiết ở bảng sau:

-t mangle OPTION DESCRIPTION

-j MARK --set-mark

<value> Gán giá trị mark cho gói tin. Giá trị này sẽ được Netfilter lưu trữ

-j TOS --set-tos <value> Gán giá trị cho TOS trong IP header Bảng 2.23 Target MARK và target TOS Ví dụ:

iptables -t mangle -A PREROUTING \ --in-interface eth0 -p tcp \

-s <some src address> -sport 1024:65535 \ -d <some destination address> --dport 23 \ -j MARK --set-mark 0x00010070

iptables -t nat -A PREROUTING -p tcp -j BALANCE \ --to-destination <ip address>-<ip address> iptables -t nat -A PREROUTING \

--in-interface <interface>...

-j REDIRECT [--to-ports <port>[-<port>]]

iptables -t nat -A OUTPUT \

--out-interface <interface>...\

Trang 54

Một phần của tài liệu tìm hiểu và cài đặt hệ thống firewall kết hợp với proxy để bảo vệ hệ thống mạng bên trong (Trang 51 - 55)