山石HCSA学习笔记

1 山石防火墙基础知识

  1. StoneOS 系统架构由接口、安全域、vswitch和vrouter组成,它们之间的关系?

    接口 < 安全域 < vswitch < vrouter
    接口要选择对应类型的安全域
  2. 三层域下面的两个接口之间互访,需要哪两个安全域做放行规则?

    1. 策略放行对应低安全域到高安全域之间的流量。
  3. 二层域下面的两个接口之间互访,需要哪两个安全域做放行规则?

    1. 策略放行对应二层安全域之间的流量。
  4. 同一个安全域下的两个接口之间互访,需要什么安全规则?

    1. 策略放行对应安全域之间的流量。
  5. 不同层次类型的接口之间相互访问,需要什么安全规则?

    1. 策略放行对应三层安全域之间的流量。

1.1 基础概念介绍

  1. 源路由是一种基于源地址进行路由选择的策略,可以实现根据多个不同子网或内网地址,有选择性地将数据包发往不同目的地址的功能。

1.2 介绍StoneOS处理包的Flow过程?

StoneOS数据包基础转发流程(非二层)具体如下:

  1. 识别数据包的逻辑入接口,可能是一般无标签接口,也可能是子接口。从而确定数据包的源安全域。
  2. StoneOS 对数据包进行合法性检查。如果源安全域配置了攻击防护功能,系统会在这一步同时进行攻击防护功能检查。
  3. 会话查询。如果该数据包属于某个已建立会话,则跳过 4 到 10,直接进行第 11 步。
  4. 目的 NAT(DNAT)操作。如果能够查找到相匹配的 DNAT 规则,则为包做 DNAT 标记。因为路由查询需要 DNAT 转换的 IP 地址,所以先进行 DNAT 操作。

    *如果系统配置静态一对一BNAT规则,那么先查找匹配的BNAT规则。数据包匹配了BNAT规则之后,按照 BNAT 的设定进行处理,不再查找普通的 DNAT 规则。
  5. 路由查询。 StoneOS 的路由查询顺序从前到后依次为:策略路由(PBR) >源接口路由(SIBR) >源路由(SBR) >目的路由(DBR) >ISP 路由。

    此时,系统得到了数据包的逻辑出接口和目的安全域。
  6. 源 NAT(SNAT)操作。如果能够查找到相匹配的 SNAT 规则,则为包做 SNAT 标记。 *如果系统配置静态一对一 BNAT 规则,那么先查找匹配的 BNAT 规则。 数据包匹配了 BNAT规则之后,按照 BNAT 的设定进行处理,不再查找普通的 DNAT 规则。
  7. 下一跳 VR 查询。如果下一跳为 VR,则继续查看指定的下一跳 VR 是否超出最大 VR 数限制(当前版本系统仅允许数据包最多通过 3 个 VR),如果超过则丢弃数据包,如果未超过,返回 4;如果下一跳不是 VR,则继续进行下一步策略查询。
  8. 安全策略查询。系统根据数据包的源安全域、目的安全域、源 IP 地址和端口号、目的 IP 地址和端口号以及协议,查找策略规则。如果找不到匹配的策略规则,则丢弃数据包;如果找到匹配的策略规则,则根据规则指定的行为进行处理,分别是:

    · 允许(Permit):允许数据包通过。

    · 拒绝(Deny):拒绝数据包通过。

    · 隧道(Tunnel):将数据包转发到指定的隧道。

    · 是否来自隧道(Fromtunnel):检查数据包是否来自指定的隧道,如果是,则允许通过,如果不是,则丢弃。

    · Web 认证(WebAuth): 对符合条件的流量进行 Web 认证。
  9. 第一次应用类型识别。系统根据策略规则中配置的端口号和服务,尝试识别应用类型。
  10. 会话建立。
  11. 如果需要,进行第二次应用类型识别。根据数据包的内容和流量行为再次对应用类型进行精确识别。
  12. 应用层行为控制。根据确定的应用类型,系统将在此执行配置的 Profile 和 ALG 功能。
  13. 根据会话中记录的信息,例如 NAT 标记等,执行相应的处理操作。
  14. 将数据包转发到出接口。

2 系统管理

  1. 防火墙是否支持带外认证服务器做管理员帐号?支持什么协议?

    1. 支持,radius与tacacs+
  2. 管理员默认分为哪几种色色?

    1. 系统管理员
    2. 系统操作员:可以修改除管理员配置以外的其他功能模块配置,不能查看日志信息。
    3. 系统审计员:只对日志信息进行操作,查,导,删
    4. 系统管理员(只读)
  3. StoneOS最多保存多少份配置?

    1. 10份
  4. 恢复出厂的方法有哪些?

    1. WEB UI恢复出厂
    2. CLI中 unset all 恢复出厂
    3. 物理机中使用脚针按压CLR同时,按键打开电源。
  5. 测试许可证服务到期与正式许可证服务到期有区别?

    1. 测试许可证服务到期时间为开机时间15天,到期后已有配置不能修改。若设备重启则会恢复出厂配置。
    2. 正式许可证服务到期时间为提供基础防火墙与VPN功能。
  6. 特征库升级服务器有哪些地址?

    1. update1.hillstonenet.com
    2. update2.hillstonenet.com
  7. 如何通过console口对防火墙进行管理设备?

    1. 端口波特率9600
    2. username/password: hillstone
  8. 如何开启外网接口登陆IP地址?

    1. 开启http/https服务端口。

3 搭建实验环境

  1. 命令行下,如何配置接口IP地址?

    interface e0/0
    zone trust
    ip address 192.168.0.1/24
  2. 如何用CLI创建trust到untrust的流量放行策略?

    policy-global
    rule
    src-zone untrust
    dst-zone trust
    src-addr any
    dst-addr any
    service any
    action permit
  3. 防火墙上路由的匹配顺序?

    1. 策略路由
    2. 源接口路由
    3. 源路由
    4. 目的路由
    • 目的路由(静态路由)
    • 目的接口路由
    • 源路由和源接口路由(Source-Based和Source Interface-Based)
    • 策略路由(Policy-based Routing)
    • 动态路由(Rip OSPF BGP IS-IS)

4 安全策略

  1. 安全策略由哪几部分组成?

    1. 过滤条件与执行动作两部分组成
  2. 安全策略规则的动作支持哪几种?

    1. 允许(Permit)、拒绝(Deny)、隧道Tunnel)或来自隧道(Fromtunnel)、WEB认证
  3. 安全策略执行的顺序?

    1. 从列表由上到下根据流量的过滤条件进行匹配。
  4. 同一个安全域内接口间的访问,防火墙安全策略缺省的动作是什么?

    1. 默认拒绝所有流量(可改)
  5. 策略导入的文件格式?

    1. 只支持DAT格式

5 NAT

  1. 对外发布服务器时,访问策略目的IP如何配置?

    1. 定义防火墙策略时,源和目的地址要使用NAT前的地址。
  2. NAT执行的顺序?
    1. 从列表由上到下根据流量的规则顺序进行匹配。

6 WEB认证

  1. 哪几种AAA服务器类型支持Web认证?

    1. local本地认证服务器
    2. redius
    3. tacacs+
    4. LDAP
    5. Active Directory(活动目录)域服务器
  2. 单点认证有哪些实现方式?
    1. SSO-Monitor
    2. AD-Scripting(原SSO-Agent功能)
    3. SSO-Radius
    4. AD-Polling

7 iQOS

  1. 哪些元素可以做为管道的过滤条件?

    1. 源/目安全域,出/入接口、源/目地址、用户、应用和应用组、服务和服务组、VLAN、TOS
  2. 管道流量正反向分别代表什么意思?
    1. 正向:与map方向相同,反之,反向。
    2. 若只配反向动作不可用,但可以只配正向或双向均配置。
  3. 每层管道一共可以创建几级管道?
    1. 4级
  4. 流控模式有哪几种?其中可以限制带宽是哪两种?
    1. 整形模式、管制模式、监控模式。其中监控模式不限制带宽。

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
  • 注意

    1. 第二阶段id指的两端设备内网子网地址,也叫做感兴趣流,是VPN需要加密保护的对象。
    2. 自动连接需要开启,否则无法主动触发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 问答

  1. StoneOS支持哪几种类型的VPN?

    1. SSL VPN、IPSEC VPN、L2TP
  2. 配置site2site IPSec VPN的步骤是?
    1. 配置ISAKMP proposal
    2. 配置ISAKMP 网关
    3. 配置IPSEC proposal
    4. 配置IPSEC 隧道
    5. 配置基于策略的IPSEC VPN
      1. 配置地址簿
      2. 配置策略,执行动作为tunnel,并双向配置
    6. 配置基于路由的IPSEC VPN
      1. 配置地址簿
      2. 创建tunnel 接口
      3. 创建感兴趣流量路由,下一跳指向tunnel接口
      4. 配置放行策略
  3. 第一阶段ISAKMP有哪两种模式,有什么区别?
    1. 主模式与野蛮模式。主模式协商需要发送6个报文,转变模式只需要3个
    2. 主模式、野蛮模式介绍 (huawei.com)
  4. 配置SSL VPN时,创建的地址池有何要求?
    1. 不能包含tunnel网关
    2. 不能包含现网已经在用的IP
  5. 如何使拨号成功的SSL VPN访问互联网时仍从本地发出流量而不经过防火墙?
    1. 配置精确路由指向SSL VPN隧道。

9 攻击防护

  1. ARP防护的方法有哪些?

    1. ARP绑定
    2. ARP检查
    3. 主机防御:Hillstone设备代替不通主机发送免费ARP包,保护被代理主机免受ARP攻击。只支持二层接口。
    4. 主机黑名单
    5. ARP强制认证: 仅支持windows客户端,且需要接口为网关,可针对单个主机启用ARP认证。
  2. 攻击防护的白名单配置?
    1. 安全域: 攻击防护: 白名单
  3. 简述几个常见的AD攻击。StoneOS提供基于域的攻击防护功能
    1. icmp-flood
    2. syn-flood
    3. udp-flood

10 威胁防护

  1. 哪几种威胁防护开启时需要重启设备生效?

    1. 病毒过滤功能、入侵防御功能、沙箱、僵尸网络
  2. 沙箱支持哪几种类型的文件?
    1. PE、APK、JAR、MS-Office、PDF、SWF、RAR、ZIP
  3. 威胁特征库下载网址是什么?
    1. update1.hillstonenet.com
    2. update2.hillstonenet.com
  4. IPS和AV有哪些调用方法?有什么区别?
    1. 安全域下调用、策略下调用。策略下调用更灵活。
  5. 服务许可证过期后是否还可以升级IPS和AV等特征库?
    1. 不可以,只能使用当前IPS特征库版本,无法升级。

11 URL过滤与文件过滤

  1. URL过滤中预定义URL库和自定义URL哪一个更优先匹配?

    1. 自定义更优先
  2. URL关键字过滤支持哪两种匹配方式?
    1. 全文字匹配、正则匹配
  3. 创建好的SSL-Proxy profile在哪个功能中引用?
    1. 策略下引用
  4. 文件过滤支持哪些类型的协议?
    1. http-get、http-post、pop3、SMTP、ftp

12 监控和日志

  1. StoneOS的日志分为哪几种?分别记录哪一类的日志?

    1. 12种。事件日志、网络日志、配置日志、共享接入日志、威胁日志、会话日志、PBR日志、NAT日志、URL日志、文件过滤日志、内容过滤日志、上网行为审计日志
    2. 会话、NAT及上网日志默认未启用。
  2. StoneOS的日志可以通过哪些方式输出?
    1. ftp、tftp
  3. Hillstone防火墙支持哪几种类型的统计功能?
    1. 应用个数、带宽流量、并发连接数
  4. 如何通过会话日志得到连接中断的原因?
    1. 通过配置日志可对管理行为溯源,因配置失误对业务造成的影响都可记录下来,方便查询。

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

山石网科HCSA学习笔记的更多相关文章

  1. [每日自动更新]Hillstone 山石网科 StoneOS ISP路由表配置文件

    1.数据基于APNIC,准确有效 2.适用于StoneOS 4.0~5.5各版本 3.对APNIC数据进行路由聚合,实现最小子网 4.覆盖中国大陆地区电信.联通.移动三大运营商,长宽.电信通等二级运营 ...

  2. Spring3.0官网文档学习笔记(八)--3.4.3~3.4.6

    3.4.3 使用depends-on     使用depends-on能够强制使一个或多个beans先初始化,之后再对这个bean进行初始化. 多个bean之间用","." ...

  3. Spring3.0官网文档学习笔记(一)

    Part 1 Spring框架概述 Spring是模块化的,在应用中仅仅须要引入你所须要用到的模块的jar包,其余的jar包不用引入. spring框架支持声明式的事务管理,通过RMI或web ser ...

  4. Spring3.0官网文档学习笔记(七)--3.4.2

    3.4.2 依赖与配置的细节     3.4.2.1  Straight values (primitives, Strings, and so on)     JavaBeans PropertyE ...

  5. Spring3.0官网文档学习笔记(二)

    1.3 使用场景 典型的成熟的spring web应用 spring使用第三方框架作为中间层 远程使用场景 EJB包装 1.3.1 依赖管理.命名规则(包)     spring-*.jar *号代表 ...

  6. android官网文档学习笔记

    1.android的四大组件的了大概功能 activity:负责显示界面,和用户交互. service:运行在后台. content provider:为程序app之间的数据访问提供接口. broad ...

  7. Spring3.0官网文档学习笔记(四)--3.1~3.2.3

    3.1 Spring IoC容器与Beans简单介绍     BeanFactory接口提供对随意对象的配置:     ApplicationContext是BeanFactory的子接口.整合了Sp ...

  8. suricate学习笔记1--初步认识(转)

    最近在研究关于dpi网卡采集的代码重组这块,公司一个同事,简单的用CPP讲解了suricata内部的一些处理逻辑,,,其中大部分代码是用C语言写的,对于用C重构代码有很好的借鉴作用,,,如果有相关工作 ...

  9. c语言入门这一篇就够了-学习笔记(一万字)

    内容来自慕课网,个人学习笔记.加上了mtianyan标签标记知识点. C语言入门 -> Linux C语言编程基本原理与实践 -> Linux C语言指针与内存 -> Linux C ...

  10. Spring Security Architecture and Implementation(架构和实现)学习笔记

    Spring Security 关于spring-security的官网文档学习笔记,主要是第8章 Architecture and Implementation(架构和实现)内容 参考: https ...

随机推荐

  1. 【每日一题】【小根堆&边出队边入队后续节点&注意判空】23. 合并K个升序链表-211128/220213

    给你一个链表数组,每个链表都已经按升序排列. 请你将所有链表合并到一个升序链表中,返回合并后的链表. 答案1(参数是数组): /** * Definition for singly-linked li ...

  2. CMS可视化---ECharts图表

    一.ECharts介绍 ECharts,全称Enterprise Charts,商业级数据图表,一个纯Javascript的图表库,能够流畅的运行在PC以及移动设备上,兼容当前绝大部分浏览器.为我们许 ...

  3. 外包公司中的"炼狱",极度摧残,避免踩坑。

    引言 前些天羊了,一直没有更新.今天给大家聊聊两家外包公司,遇到的小伙伴避免踩坑. 咱不说那些虚的,什么尽量不要去外包公司,尽可能找甲方,这些谁都知道,肯定是因为一些原因(比如学历.项目经验.技术有待 ...

  4. ssm——mybatis整理

    目录 1.mybatis框架概述 2.直接使用jdbc连接数据库带来的问题 3.mybatis连接池 3.1.mybatis连接池yml配置 3.2.mybatis连接池xml配置 4.一个简单的my ...

  5. Hadoop详解(03)-Hadoop编译源码-了解

    Hadoop详解(03)-Hadoop编译源码-了解 准备工作 CentOS联网 配置CentOS能连接外网.Linux虚拟机ping www.baidu.com 是畅通的 jar包准备(hadoop ...

  6. python读取kafka,输出到Vertica数据库

    # 主测试 # https://docs.python.org/2/library/json.html import sys import json import vertica_python imp ...

  7. windows安装wordcloud遇到的坑汇总

    pip install wordcloud报错,缺少visual studio包 不要偷懒,一定要从报错的地方去下载完整版本 然后安装c++ 重启后就不会报错了

  8. npm 中设置环境NODE_ENV变量,判断失败打印process.env.NODE_ENV确实是"development",但是判断process.env.NODE_ENV === "development" 是false

    通过package.json 的scripts脚本 修改NODE_ENV的值来区分开发环境和生产环境. "scripts": { "build": " ...

  9. 线上代码已变更,客户没有刷新浏览器,导致点击菜单后找不到相对路由js文件无法加载XXX路由,解决办法如下

    1,reload 方法,该方法强迫浏览器刷新当前页面. 语法:location.reload([bForceGet]) 参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当 ...

  10. SQL优化的一些方法

    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...