1.測試拓撲:
R2(20.1.1.2/24)--------------(20.1.1.1/24)R1 (10.1.1.1/25)-------(10.1.1.18)FTPServer
情況一: outside inside
情況二: inside outside
2.測試目的:
A.了解FTP的主動模式,被動模式
B.了解CBAC技術對FTP應用的處理
C.了解CBAC的基本配置方法
----CBAC在老的版本IOS才有,已經被ZBF所取代,本次測試2691平台上進行,沒有配置NAT。
----CBAC相對ZBF來說配置起來要簡單些,隻需要在接口上配置,而不是像ZBF那樣在不同zone之間配置
3.基本配置:
R1:
interface FastEthernet0/0
ip address 20.1.1.1 255.255.255.0
no shutdown
!
interface FastEthernet0/1
ip address 10.1.1.1 255.255.255.0
R2:
ip address 20.1.1.2 255.255.255.0
ip route 0.0.0.0 0.0.0.0 20.1.1.1
ip ftp username xll
ip ftp password 1234qwer
FTP Server:
IP:10.1.1.18/24
GW:10.1.1.1
4.FTP伺服器在内網:
A.在R1的外口配置通路政策,隻允許通路FTP伺服器的tcp 21連接配接進入
access-list 101 permit tcp any host 10.1.1.18 eq ftp
ip access-group 101 in
B.FTP通路測試:
①這時FTP通路主動模式和被動模式都不行,因為ACL隻放行了TCP 21端口,其他資料通訊端口沒放行
②在路由器内網口開啟TCP審查,目的是讓内網主動發起的通路,能正常傳回,不是接口ACL控制
ip inspect name tcpinspect tcp
int f0/1
ip inspect tcpinspect in
③這時FTP主動模式是正常的:因為FTP用戶端隻主動通路FTP Server的tcp 21端口,資料通道是FTP Server主動發起的,不受ACL控制。
但是,FTP被動模式因為FTP用戶端還需主動通路FTP伺服器的資料通道端口,而ACL沒有放行,是以失敗。
④這時在R1外口對進入的流量進行FTP審查
ip inspect name ftpinspect ftp
interface f0/0
ip inspect ftpinspect in
---開啟ftp審查後,被動FTP也能正常工作
⑤如果這時FTP的端口修改為2121,這時因為預設FTP審查的是21端口,被動模式的FTP還是不能正常工作
此時需要在R1上面通過如下指令告訴路由器TCP 2121端口也是FTP的控制端口
ip port-map ftp port tcp 2121
通過如下指令可以看到自定義的FTP端口
R1#show ip port-map | in 21
Default mapping: gtpv1 tcp port 2123 system defined
Default mapping: gtpv1 udp port 2123 system defined
Default mapping: sql-net tcp port 1521,150 system defined
Default mapping: ipx udp port 213 system defined
Default mapping: ftp tcp port 21 system defined
Default mapping: ftp tcp port 2121 user define
5.FTP伺服器在外網網:
A.在R1的外口配置通路政策,禁止任何IP資料包進行
access-list 102 deny ip any any
ip access-group 102 in
B.在R1的内網口開啟TCP審查
ip inspect name insideinspect tcp
int f0/0
ip inspect insideinspect in
C.此時被動FTP所有的通路都是有内網發起,因為有TCP審查,能正常進行,
但是主動FTP不能正常工作,需要内網流量的FTP應用審查
ip inspect name insideinspect ftp
D.如果FTP服務不是通常的21端口,同樣需要修改ip port-map.
本文轉自 碧雲天 51CTO部落格,原文連結:http://blog.51cto.com/333234/1059944,如需轉載請自行聯系原作者