思科ASA 基础学习
ASA
int e0/0
ip add 192.168.1.1 24
nameif inside
secruity-leve 100
int e0/0/0
ip add 192.168.2.1 24
nameif inside
security-leve 100
int e0/1
ip add 172.16.1.1 24
nameif dmz
secruity-leve 50
int e0/2
定义区域
nameif outside
配置IP
ip add 200.1.1.1 24
设置安全等级,数字越小,等级越低, 默认高等级可以到低等级,
低等级不能到高等级,除非设置策略
secruity-leve 0
配置路由,不同于路由器的 ip route
route inside 192.168.0.0 16 192.168.1.2
route outside 0.0.0.0 0 200.1.1.2
配置acl
access-list 100 permit icmp any any
应用acl ,不同于路由器在接口模式下,全局模式
access-group 100 in outside interface e0/2
动态NAT
nat 一般定义内部的
global 一般定义外部
两个匹配通过 nat id
查看 show xlate detail
清除 clear xlate
标示符 flags
栗子 1 用来关联 nat global
192.168.1.0 也可以用acl 控制
nat (inside) 1 192.168.1.0 255.255.255.0
global (outside) 1 200.1.1.10-200.1.1.20
global (dmz) 1 172.16.2.0 255.255.255.0
匹配所有内部网络 ,0 0 表示所有网络
nat (inside) 1 0 0
-----------------------------------
动态PAT ,居于端口的转换
nat (inside) 1 192.168.1.0 255.255.255.0
global (outside) 1 200.1.1.1
global (outside) 1 interface #直接指定端口
--------------------------------------
静态NAT 隐藏内部IP
低安全级别要去访问高安全级别,需要策略放行
acess-list out_to_dmz host 200.1.1.2 host 172.16.1.2
策略应用到outside 的进方向
access-group out_to_dmz in interface outside
static (dmz,outside) 200.1.1.10 172.16.1.2
#static 关键字,
#(dmz,outside) ,先高安全级别,低安全级别
# 200.1.1.10 172.16.1.2 ,先外部,再内部
static (dmz,outside) 200.1.1.100 172.16.1.2
#放行流量 ,因为已经映射了 地址转成 100, 所以放行100
access-list 100 permit ip host 200.1.1.100 host 172.16.1.2
#把策略应用到接口
access-group 100 in interface outside
------------------------------------------------
静态PAT,居于端口的映射
static (dmz,outside) tcp 200.1.1.10 http 172.16.1.2 http
static (dmz,outside) tcp 200.1.1.10 ftp 172.16.1.2 ftp
access-list 100 permit tcp 200.1.1.10 http 172.16.1.2 http
access-list 100 permit tcp 200.1.1.10 ftp 172.16.1.2 ftp
access-group 100 in interface outside
---------------------------------------------
NAT控制
nat-control 默认关闭
内网 inside 可以访问 outside ,但是没有NAT
nat规则不是必需
开启nat-control 默认所有inside 都要nAT 才能出 outside
NAT规则必需
NAT 豁免
当开启NAT控制时,每个发起的链接都需要一个相应的NAT规则,
在某些应用场景(例如配置VPN)需要绕过NAT规则
NAT 豁免允许双向通讯
NAT 豁免的配置步骤
定义一个ACL ,用于指定需要绕过NAT规则的流量。
acess-list nonat extended permit ip 192.168.2.0 255.255.255.0 200.1.1.0 255.255.255.0
#这里一定要用 0 nat id
nat (inside) 0 access-list nonat
-------------------------------------------------------
策略NAT
定义acl ,
NAT 时匹配 acl ,实现流量分流。
access-list WEB extended permit 192.168.2.0 255.255.255.0 host 172.168.1.2 eq 80
access-list telnet extended permit 192.168.2.0 255.255.255.0 host 172.168.1.2 eq telnet
nat (inside) 1 acess-list WEB
global (dmz) 1 200.1.1.2
nat (inside) 2 access-list telnet
global (dmz) 2 200.1.1.3
实现效果,
1,当192.168.2.0 网段主机去访问 172.16.1.2 的80端口时 nat 200.1.1.2 地址
2,当192.168.2.0 网段主机去访问 172.168.1.2 的23 端口时 nat 200.1.1.3 地址
验证 telnet 172.16.1.2 80 /source interface loopback 0
--------------------------
NAT 优先级
NAT 豁免最高
静态NAT 和静态PAT
策略动态 NAT nat access-list
正常的动态NAT
ACL 写法不同于路由器, 不用反掩码, 路由协议宣告网络时,也不用反掩码,用正常掩码即可。
telnet 配置 开启 telnet 服务
允许192.168.1.110 telnet ASA防火墙
telnet 192.168.1.110 255.255.255.2555 inside
telnet 172.16.1.110 255.255.255.255 dmz
telnet timeout 10 #设置超时时间,10分钟不活动自动断开连接
passwd 666 #设置远程登录密码
-----------------------------------------------------------------
开启ssh 服务
username admin passwd 1234
启用 aaa
aaa authentication enable console LOCAL #设置enable 验证
aaa authentication ssh console LOCAL #设置ssh 验证
ssh 172.16.1.2 255.255.255.255 dmz
ssh 192.168.1.0 255.255.255.0 inside
crypto key generate rsa moduls 1024
验证 ssh -l 用户名密码登录,还有其他方式
ssh -l admin 172.16.1.1 输入密码
enable
再次输入用户密码
ssh 是居于用户管理,所以enable 的密码也是 用户密码,
-----------------------------------------------------------------------------------------------------
相同安全等级下的不同端口默认不能通讯
same-security-traffic permit inter-interface