山石网科HCSA学习笔记
山石HCSA学习笔记
目录
1 山石防火墙基础知识
-
StoneOS 系统架构由接口、安全域、vswitch和vrouter组成,它们之间的关系?
接口 < 安全域 < vswitch < vrouter 接口要选择对应类型的安全域
-
三层域下面的两个接口之间互访,需要哪两个安全域做放行规则?
- 策略放行对应低安全域到高安全域之间的流量。
-
二层域下面的两个接口之间互访,需要哪两个安全域做放行规则?
- 策略放行对应二层安全域之间的流量。
-
同一个安全域下的两个接口之间互访,需要什么安全规则?
- 策略放行对应安全域之间的流量。
-
不同层次类型的接口之间相互访问,需要什么安全规则?
- 策略放行对应三层安全域之间的流量。
1.1 基础概念介绍
- 源路由是一种基于源地址进行路由选择的策略,可以实现根据多个不同子网或内网地址,有选择性地将数据包发往不同目的地址的功能。
1.2 介绍StoneOS处理包的Flow过程?
StoneOS数据包基础转发流程(非二层)具体如下:
- 识别数据包的逻辑入接口,可能是一般无标签接口,也可能是子接口。从而确定数据包的源安全域。
- StoneOS 对数据包进行合法性检查。如果源安全域配置了攻击防护功能,系统会在这一步同时进行攻击防护功能检查。
- 会话查询。如果该数据包属于某个已建立会话,则跳过 4 到 10,直接进行第 11 步。
- 目的 NAT(DNAT)操作。如果能够查找到相匹配的 DNAT 规则,则为包做 DNAT 标记。因为路由查询需要 DNAT 转换的 IP 地址,所以先进行 DNAT 操作。
*如果系统配置静态一对一BNAT规则,那么先查找匹配的BNAT规则。数据包匹配了BNAT规则之后,按照 BNAT 的设定进行处理,不再查找普通的 DNAT 规则。 - 路由查询。 StoneOS 的路由查询顺序从前到后依次为:策略路由(PBR) >源接口路由(SIBR) >源路由(SBR) >目的路由(DBR) >ISP 路由。
此时,系统得到了数据包的逻辑出接口和目的安全域。 - 源 NAT(SNAT)操作。如果能够查找到相匹配的 SNAT 规则,则为包做 SNAT 标记。 *如果系统配置静态一对一 BNAT 规则,那么先查找匹配的 BNAT 规则。 数据包匹配了 BNAT规则之后,按照 BNAT 的设定进行处理,不再查找普通的 DNAT 规则。
- 下一跳 VR 查询。如果下一跳为 VR,则继续查看指定的下一跳 VR 是否超出最大 VR 数限制(当前版本系统仅允许数据包最多通过 3 个 VR),如果超过则丢弃数据包,如果未超过,返回 4;如果下一跳不是 VR,则继续进行下一步策略查询。
- 安全策略查询。系统根据数据包的源安全域、目的安全域、源 IP 地址和端口号、目的 IP 地址和端口号以及协议,查找策略规则。如果找不到匹配的策略规则,则丢弃数据包;如果找到匹配的策略规则,则根据规则指定的行为进行处理,分别是:
· 允许(Permit):允许数据包通过。
· 拒绝(Deny):拒绝数据包通过。
· 隧道(Tunnel):将数据包转发到指定的隧道。
· 是否来自隧道(Fromtunnel):检查数据包是否来自指定的隧道,如果是,则允许通过,如果不是,则丢弃。
· Web 认证(WebAuth): 对符合条件的流量进行 Web 认证。 - 第一次应用类型识别。系统根据策略规则中配置的端口号和服务,尝试识别应用类型。
- 会话建立。
- 如果需要,进行第二次应用类型识别。根据数据包的内容和流量行为再次对应用类型进行精确识别。
- 应用层行为控制。根据确定的应用类型,系统将在此执行配置的 Profile 和 ALG 功能。
- 根据会话中记录的信息,例如 NAT 标记等,执行相应的处理操作。
- 将数据包转发到出接口。
2 系统管理
-
防火墙是否支持带外认证服务器做管理员帐号?支持什么协议?
- 支持,radius与tacacs+
-
管理员默认分为哪几种色色?
- 系统管理员
- 系统操作员:可以修改除管理员配置以外的其他功能模块配置,不能查看日志信息。
- 系统审计员:只对日志信息进行操作,查,导,删
- 系统管理员(只读)
-
StoneOS最多保存多少份配置?
- 10份
-
恢复出厂的方法有哪些?
- WEB UI恢复出厂
- CLI中 unset all 恢复出厂
- 物理机中使用脚针按压CLR同时,按键打开电源。
-
测试许可证服务到期与正式许可证服务到期有区别?
- 测试许可证服务到期时间为开机时间15天,到期后已有配置不能修改。若设备重启则会恢复出厂配置。
- 正式许可证服务到期时间为提供基础防火墙与VPN功能。
-
特征库升级服务器有哪些地址?
update1.hillstonenet.com
update2.hillstonenet.com
-
如何通过console口对防火墙进行管理设备?
- 端口波特率9600
username/password: hillstone
-
如何开启外网接口登陆IP地址?
- 开启http/https服务端口。
3 搭建实验环境
-
命令行下,如何配置接口IP地址?
interface e0/0 zone trust ip address 192.168.0.1/24
-
如何用CLI创建trust到untrust的流量放行策略?
policy-global rule src-zone untrust dst-zone trust src-addr any dst-addr any service any action permit
-
防火墙上路由的匹配顺序?
- 策略路由
- 源接口路由
- 源路由
- 目的路由
- 目的路由(静态路由)
- 目的接口路由
- 源路由和源接口路由(Source-Based和Source Interface-Based)
- 策略路由(Policy-based Routing)
- 动态路由(Rip OSPF BGP IS-IS)
4 安全策略
-
安全策略由哪几部分组成?
- 过滤条件与执行动作两部分组成
-
安全策略规则的动作支持哪几种?
- 允许(Permit)、拒绝(Deny)、隧道Tunnel)或来自隧道(Fromtunnel)、WEB认证
-
安全策略执行的顺序?
- 从列表由上到下根据流量的过滤条件进行匹配。
-
同一个安全域内接口间的访问,防火墙安全策略缺省的动作是什么?
- 默认拒绝所有流量(可改)
-
策略导入的文件格式?
- 只支持DAT格式
5 NAT
- 对外发布服务器时,访问策略目的IP如何配置?
- 定义防火墙策略时,源和目的地址要使用NAT前的地址。
- NAT执行的顺序?
- 从列表由上到下根据流量的规则顺序进行匹配。
6 WEB认证
- 哪几种AAA服务器类型支持Web认证?
- local本地认证服务器
- redius
- tacacs+
- LDAP
- Active Directory(活动目录)域服务器
- 单点认证有哪些实现方式?
- SSO-Monitor
- AD-Scripting(原SSO-Agent功能)
- SSO-Radius
- AD-Polling
7 iQOS
- 哪些元素可以做为管道的过滤条件?
- 源/目安全域,出/入接口、源/目地址、用户、应用和应用组、服务和服务组、VLAN、TOS
- 管道流量正反向分别代表什么意思?
- 正向:与map方向相同,反之,反向。
- 若只配反向动作不可用,但可以只配正向或双向均配置。
- 每层管道一共可以创建几级管道?
- 4级
- 流控模式有哪几种?其中可以限制带宽是哪两种?
- 整形模式、管制模式、监控模式。其中监控模式不限制带宽。
8 VPN
8.1 IPSec VPN
8.1.1 配置IPSec VPN的第一、二阶段
# 配置isakmp密钥协商提案(可选)
isakmp proposal "isakmp_01"
hash sha256
encryption aes-256
lifetime 300
exit
# 配置isakmp网关
isakmp peer "isakmp_peer_01"
mode aggressive
isakmp-proposal "isakmp_01"
pre-share "$01011NGr$o441lZqXz2eRqBVSeuq2DjJ7I8Y="
peer 200.1.1.1
interface ethernet0/2
exit
# 配置IPSEC提案
ipsec proposal "ipsec_01"
hash sha256
encryption aes-256
group 2
lifetime 300
exit
# 配置IPSEC隧道
tunnel ipsec "tunnel_01" auto sa-index 1
ipsec-proposal "ipsec_01"
# 自动连接
auto-connect
isakmp-peer "isakmp_peer_01"
exit
- 注意:
- 第二阶段id指的两端设备内网子网地址,也叫做感兴趣流,是VPN需要加密保护的对象。
- 自动连接需要开启,否则无法主动触发VPN的建立。
8.1.2 基于策略的IPSEC VPN
配置VPN安全策略,策略行为选择隧道或来自隧道
# 创建本地和对端内网地址簿
address "vpn_local"
ip 192.168.1.0/24
exit
address "vpn_remote"
ip 172.16.1.0/24
exit
# 创建安全策略
policy-global
rule id 1
action tunnel "tunnel_01"
src-addr "vpn_local"
dst-addr "vpn_remote"
service "Any"
exit
rule id 2
action fromtunnel "tunnel_01"
src-addr "vpn_remote"
dst-addr "vpn_local"
service "Any"
exit
# 创建SNAT规则
ip vrouter "trust-vr"
snatrule id 1 from address-book "vpn_local" to address-book "vpn_remote" service "Any" eif ethernet0/2 no-trans
snatrule id 2 from address-book "Any" to address-book "Any" service "Any" eif ethernet0/2 trans-to eif-ip mode dynamicport
# 访问外网路由要可达
ip route 0.0.0.0/0 100.1.1.2
- 本地到对端安全连接选择:tunnel
- 对端到本地安全连接选择:fromtunnel
- WEB UI下勾选“双向VPN策略”会自动创建来回两个策略。
8.1.3 基于路由的IPSEC VPN
绑定Tunnel接口,添加通过Tunnel接口到对端访问的路由,根据Tunnel接口绑定安全域配置普通流量策略
# 创建本地和对端内网地址簿
address "vpn_local"
ip 192.168.1.0/24
exit
address "vpn_remote"
ip 172.16.1.0/24
exit
# 创建Tunnel接口
interface tunnel1
zone "VPNHub"
tunnel ipsec "tunnel_01"
# 创建路由条目
ip vrouter "trust-vr"
ip route 172.16.1.0/24 "tunnel1"
# 创建出站入站策略
policy-global
rule top from vpn_local to vpn_remote service any permit
rule top from vpn_remote to vpn_local service any permit
8.2 SSL VPN
8.2.1 创建SSL VPN隧道
interface ethernet0/1
zone "untrust"
ip address 200.1.1.1 255.255.255.0
exit
# 配置SSLVPN隧道
tunnel scvpn "sslvpn_01"
# 配置SSLVPN建立连接时使用的端口
https-port 4433
pool "sslvpn_pool"
anti-replay 32
# 配置隧道路由
split-tunnel-route 192.168.1.0/24 metric 35
aaa-server "local"
# 配置接入接口
interface ethernet0/1
exit
# 配置隧道接口和地址池
# 隧道接口的IP地址必须与地址池的IP地址在同一网段,且不被地址池包含。
scvpn pool "sslvpn_pool"
address 10.1.1.10 10.1.1.20 netmask 255.255.255.0
exit
# SSLVPN的tunnel接口必须配置地址,作为客户端的网关地址。
interface tunnel1
zone "VPNHub"
ip address 10.1.1.1 255.255.255.0
tunnel scvpn "sslvpn_01"
exit
8.2.2 配置SSL VPN策略放行
policy-global
rule id 1
action permit
src-zone "VPNHub"
dst-zone "trust"
src-addr "Any"
dst-addr "Any"
service "Any"
exit
8.3 问答
- StoneOS支持哪几种类型的VPN?
- SSL VPN、IPSEC VPN、L2TP
- 配置site2site IPSec VPN的步骤是?
- 配置ISAKMP proposal
- 配置ISAKMP 网关
- 配置IPSEC proposal
- 配置IPSEC 隧道
- 配置基于策略的IPSEC VPN
- 配置地址簿
- 配置策略,执行动作为tunnel,并双向配置
- 配置基于路由的IPSEC VPN
- 配置地址簿
- 创建tunnel 接口
- 创建感兴趣流量路由,下一跳指向tunnel接口
- 配置放行策略
- 第一阶段ISAKMP有哪两种模式,有什么区别?
- 主模式与野蛮模式。主模式协商需要发送6个报文,转变模式只需要3个
- 主模式、野蛮模式介绍 (huawei.com)
- 配置SSL VPN时,创建的地址池有何要求?
- 不能包含tunnel网关
- 不能包含现网已经在用的IP
- 如何使拨号成功的SSL VPN访问互联网时仍从本地发出流量而不经过防火墙?
- 配置精确路由指向SSL VPN隧道。
9 攻击防护
- ARP防护的方法有哪些?
- ARP绑定
- ARP检查
- 主机防御:Hillstone设备代替不通主机发送免费ARP包,保护被代理主机免受ARP攻击。只支持二层接口。
- 主机黑名单
- ARP强制认证: 仅支持windows客户端,且需要接口为网关,可针对单个主机启用ARP认证。
- 攻击防护的白名单配置?
- 安全域: 攻击防护: 白名单
- 简述几个常见的AD攻击。StoneOS提供基于域的攻击防护功能
- icmp-flood
- syn-flood
- udp-flood
10 威胁防护
- 哪几种威胁防护开启时需要重启设备生效?
- 病毒过滤功能、入侵防御功能、沙箱、僵尸网络
- 沙箱支持哪几种类型的文件?
- PE、APK、JAR、MS-Office、PDF、SWF、RAR、ZIP
- 威胁特征库下载网址是什么?
update1.hillstonenet.com
update2.hillstonenet.com
- IPS和AV有哪些调用方法?有什么区别?
- 安全域下调用、策略下调用。策略下调用更灵活。
- 服务许可证过期后是否还可以升级IPS和AV等特征库?
- 不可以,只能使用当前IPS特征库版本,无法升级。
11 URL过滤与文件过滤
- URL过滤中预定义URL库和自定义URL哪一个更优先匹配?
- 自定义更优先
- URL关键字过滤支持哪两种匹配方式?
- 全文字匹配、正则匹配
- 创建好的SSL-Proxy profile在哪个功能中引用?
- 策略下引用
- 文件过滤支持哪些类型的协议?
- http-get、http-post、pop3、SMTP、ftp
12 监控和日志
- StoneOS的日志分为哪几种?分别记录哪一类的日志?
- 12种。事件日志、网络日志、配置日志、共享接入日志、威胁日志、会话日志、PBR日志、NAT日志、URL日志、文件过滤日志、内容过滤日志、上网行为审计日志
- 会话、NAT及上网日志默认未启用。
- StoneOS的日志可以通过哪些方式输出?
- ftp、tftp
- Hillstone防火墙支持哪几种类型的统计功能?
- 应用个数、带宽流量、并发连接数
- 如何通过会话日志得到连接中断的原因?
- 通过配置日志可对管理行为溯源,因配置失误对业务造成的影响都可记录下来,方便查询。
13 基础命令
13.1 常用show 命令
# 查看系统版本信息
show version
# 查看接口信息
show interface
# 查看路由
show ip route
# 查看源NAT
show snat
# 查看目的NAT
show dnat
# 查看当前配置信息
show policy
# 统计策略在当前环境中的使用情况,以判断是否有效
show policy hit-count
# 查看当前配置信息
show configuration
# 状态检测技术(会话)
show session
# 保存系统当前配置信息
save
# 设备恢复出厂设置
unset all
13.2 AD类型AAA服务器
SG-6000(config)# aaa-server adtest type active-directory
SG-6000(config-aaa-server)# host 192.168.1.100
# 配置域名称
SG-6000(config-aaa-server)# base-dn ou=east,dc=ps,dc=com
# 配置登录角色,需要能访问到DC对应资源
SG-6000(config-aaa-server)# login-dn cn=Administrator,ou=east,dc=ps,dc=com
SG-6000(config-aaa-server)# login-password password
SG-6000(config-aaa-server)# exit
13.3 IP-MAC绑定
绑定后还需要再接口模式下进行配置:
# 关闭ARP自动学习
no arp-learning
# 禁用动态信息表,仅查静态绑定表
arp-disable-dynamic-entry
13.4 日志导出
日志或者会话可通过ftp/tftp命令直接导出到文本中进行运维分析
SG-6000# show logging | redirect ?
ftp:// Uniform Resource Locator (ftp://[username:password@]x.x.x.x[:port:vrid]/filename)
tftp:// Uniform Resource Locator (tftp://x.x.x.x[:vrid]/filename)
SG-6000# show logging event | redirect tftp://1.1.1.20/log.txt