原創不易,如果您喜歡安全運維系列文章,歡迎關注、評論,期待與您一起成長
隨著互聯網技術的快速發展,接入互聯網的設備也迅速增加,入網數量超過了IP地址的梳理,這就出現了IP地址不夠用的情況。因此,除了必備的公網業務,各組織和單位都構建了自己的局域網,局域網內使用內網地址,需要與外網交互時則將內網地址轉換為外網地址。這種將內網地址轉換為外網地址的技術就是NAT(Network Address Translation,網絡地址轉換),本文基于實際工作需要對NAT映射的相關配置進行介紹。
NAT映射示意圖
1、NAT映射適用場景
做NAT映射有兩種適用場景:一是內網終端訪問公網IP地址時需要將內網地址轉換為公網地址,稱之為源NAT映射;二是為內網服務器分配公網地址,以為外部用戶提供服務,稱之為目的NAT映射。這兩種場景在實際工作中都會用到,安全運維人員需要熟練操作這兩種映射方式。
2、NAT映射的普遍原理
NAT映射的普遍實現原理是端口映射,按照源NAT和目的NAT介紹如下:
(1)源NAT:內網終端訪問公網應用時,其數據包是從某一個具體端口出去的,同樣的一個公網地址也有若干個服務端口(65535),那么就可以從公網的端口中選擇一個并將其與內網終端的數據包出口綁定(即映射)。比如,內網10.153.11.12:10000可以對應公網211.120.135.6:10000,內網10.153.11.13:1888可以對應公網211.120.135.6:1888。
(2)目的NAT:內部服務器為外部用戶提供的服務也是以端口的形式存在,如主機10.153.11.12的WWW服務對應的端口號80,則可以將其映射為211.120.135.6,端口號為80或8080或8888。這樣,外網用戶只需要訪問211.120.135.6:8888即可訪問10.153.11.12的www服務。
如下命令將內網地址10.153.11.12映射成公網地址211.120.135.6:
nat server global 211.120.135.6 inside 10.153.11.12
考慮到服務端口和協議類型,如下命令將內網10.153.11.12的www服務(80端口)映射為公網的211.120.135.6的8888端口,協議為TCP:
nat server protocol tcp global 211.120.135.6 8888 inside 10.153.11.12 80
上述命令中,global表示公網地址,inside表示內網地址,更詳細的命令涵義可以通過問號?進行查詢。
3、NAT地址池
如上面所述,每個單位所分配的公網地址是有限的,我們將這樣一組有限的地址形象地看作一個水池,水池里面存儲的不是水而是公網地址,這就是NAT地址池。對于源NAT映射,NAT地址池的概念特別重要,防火墻就是從地址池中隨機的選擇一個公網IP和端口并映射到內網IP和端口上。如下命令配置了一個包含8個公網地址的地址池:
nat address-group 1
mode pat
status active
section 0 211.120.135.1 211.120.135.8
上述命令中,mode pat表示NAT映射的方式是端口映射(P=Port),還有另外一種模式NO-PAT,即非端口映射,也可稱為一對一IP地址轉換,即一個內網IP地址對應一個公網IP地址。
4、源NAT映射配置和安全策略配置
上面介紹了源NAT映射和NAT地址池的概念,如下命令演示了源NAT的配置方式,其含義是10.153.11.12和10.153.11.13這兩個IP地址及10.153.12.2-10.153.12.188這186個地址可以從address-group1的NAT地址池中隨機選擇公網地址進行映射。
nat-policy interzone trust untrust outbound
policy 0
action source-nat
policy source 10.153.11.12 0
policy source 10.153.11.13 0
policy source range 10.153.12.2 10.153.12.188
address-group 1
上面配置了源NAT的NAT策略,即定義了內網IP會被轉換為哪些公網IP地址(含端口)。但是,防火墻還有一個重要功能就是進行流量的控制,確定一個流量是否允許通過防火墻,且其判斷發生在NAT之前。因此,除了配置NAT策略外,還需要在此之前利用《安全運維之華為防火墻策略配置》中的方法配置內網IP地址的訪問策略,即指明哪些內網IP地址可以訪問哪些外網地址。
policy interzone trust untrust outbound
policy 0
action permit
policy service service-set servicename
policy source 10.153.11.12 0
policy source 10.153.11.13 0
policy source range 10.153.12.2 10.153.12.188
policy destination 211.121.111.8 0
policy destination 211.121.150.88 0
policy destination 211.121.188.8 0
通過上面這些操作即可完成內網IP地址訪問公網地址的源NAT映射配置。
5、目的NAT映射配置和安全策略
目的NAT映射的配置統一包括映射策略和安全策略兩個部分,映射策略的配置前面已經舉例配置,即
nat server protocol tcp global 211.120.135.6 8888 inside 10.153.11.12 80
而其安全配置也與4中的安全策略配置類似:
policy interzone trust untrust inbound
action permit
policy destination 10.153.11.12 0
6、總結
NAT映射的主要目的是為了實現內外網地址的互訪,包括源NAT和目的NAT兩種場景,主要的實現原理是端口映射,其配置均包括安全策略配置和映射策略配置兩部分,且安全策略要在映射策略之前。
感謝您花費時間閱讀此文,水平有限,但請見諒,歡迎關注評論“斯沃勒科教工作室”,期待與您一起學習、成長。有興趣深入了解的同仁可以參見《強叔侃墻》,絕對物超所值,下文將介紹華為防火墻的用戶管理和安全管理。