用USG6620替换AR2200后,企业内部邮箱业务只能接收邮件不能发送邮件到外网

发布时间:  2015-12-10 浏览次数:  233 下载次数:  0
问题描述

组网:

组网概述:

图中标红的R2 AR路由器是需要被替换的,邮箱服务器在内网。

AR主要业务配置:

interface GigabitEthernet0/0/2
description ***TO_Nawras***
ip address 37.200.226.222 255.255.255.252
nat server protocol tcp global interface LoopBack 1 smtp inside 10.3.2.70 smtp
nat server protocol tcp global interface LoopBack 3 443 inside 10.3.2.70 443
nat outbound 2001 address-group 1
#

#
acl number 2001 
rule 5 permit source 10.7.0.0 0.0.63.255
rule 10 permit source 10.7.64.0 0.0.15.255
rule 15 permit source 10.5.32.0 0.0.1.255
rule 20 permit source 10.3.1.0 0.0.0.255
rule 21 deny source 10.3.2.70 0

后续Rule省略

 

USG6620替换脚本:

nat server 3 protocol tcp global 37.200.224.202 smtp inside 10.3.2.70 smtp no-reverse
nat server 4 protocol tcp global 37.200.224.203 443 inside 10.3.2.70 443 no-reverse 

由于是同一安全区域,而且内网地址相同,所以需要配置no-reverse参数

nat-policy 
    rule name policy_nonat
    source-zone trust
    destination-zone untrust
    source-address 10.3.2.70 32                     
    action no-nat 

    rule name policy_nat_1
    source-zone trust
    destination-zone untrust 
    source-address address-set 2001 
    action nat address-group a

当使用这个脚本替换后测试业务,发现只能接收邮件不能发送邮件到外网。

 

处理过程

 

1.根据SMTP邮箱工作原理第一步排查从用户PC ping 内网SMTP Server,结果ping可达。因为PC和SMTP Server不经过任何防火墙所以认为邮件发送到SMTP Server成功。

2.排查SMTP Server到Internet,发现SMTP Server无法访问Internet,查看新USG6600配置。发现NAT策略第一条rule name policy_nonat 就是不让SMTP Server做NAT,而且USG6600 配置了no-reverse当然也就无法访问Internet。

3.删除这个命令source-address 10.3.2.70 32 问题得到解决(ACL 2001省略的RULE里有包括这个IP的网段),测试业务正常。

 

根因

1.为什么明明知道SMTP Server 需要访问Internet还会去配置NO-NAT呢?

从替换前的AR配置分析,在nat outbound的ACL 2001里是deny这个SMTP ServerIP的。让它不能做源转访问Internet。这是替换前的配置当时翻译脚本的时候直接翻译过来了。

2.但是如果这样配置了那以前邮箱业务会一直不通的,为什么替换前是正常的呢?

继续查看AR配置还有一条这个SMTP Server 邮箱业务的NAT Server。原来NAT Server的优先级是高于nat outbound的。 这条命令可以让公网访问内网特定的目的端口号,但是从内网到公网是不需要匹配端口号的,只要匹配源IP就可以访问Internet。所以其实那条deny 根本就没有生效,在替换前这台SMTP Server 还是可以访问Internet的。邮箱业务就是正常的。

解决方案

1、直接删除source-address 10.3.2.70 32 命令,让SMTP Server IP 匹配下面的源NAT 访问Internet。(现网实施方案,后面与客户协商客户同意放开这个Server上网权限)

2、在rule name policy_nat_1 之前新建一条rule 精确匹配SMTP端口。

ip service-set smtp type object
service protocol tcp  destination-port 25

rule name smtp_server
    source-zone trust
    destination-zone untrust 
    source-address 10.3.2.70 32
    service smtp 
    action nat address-group b  

 

建议与总结

现网割接设备的脚本不能完全直接翻译,不同的产品还是有不同的差异的。翻译脚本的时候要注意一些矛盾的脚本。分析不同产品的实现原理。

END