山石网科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
山石网科HCSA学习笔记的更多相关文章
- [每日自动更新]Hillstone 山石网科 StoneOS ISP路由表配置文件
1.数据基于APNIC,准确有效 2.适用于StoneOS 4.0~5.5各版本 3.对APNIC数据进行路由聚合,实现最小子网 4.覆盖中国大陆地区电信.联通.移动三大运营商,长宽.电信通等二级运营 ...
- Spring3.0官网文档学习笔记(八)--3.4.3~3.4.6
3.4.3 使用depends-on 使用depends-on能够强制使一个或多个beans先初始化,之后再对这个bean进行初始化. 多个bean之间用","." ...
- Spring3.0官网文档学习笔记(一)
Part 1 Spring框架概述 Spring是模块化的,在应用中仅仅须要引入你所须要用到的模块的jar包,其余的jar包不用引入. spring框架支持声明式的事务管理,通过RMI或web ser ...
- Spring3.0官网文档学习笔记(七)--3.4.2
3.4.2 依赖与配置的细节 3.4.2.1 Straight values (primitives, Strings, and so on) JavaBeans PropertyE ...
- Spring3.0官网文档学习笔记(二)
1.3 使用场景 典型的成熟的spring web应用 spring使用第三方框架作为中间层 远程使用场景 EJB包装 1.3.1 依赖管理.命名规则(包) spring-*.jar *号代表 ...
- android官网文档学习笔记
1.android的四大组件的了大概功能 activity:负责显示界面,和用户交互. service:运行在后台. content provider:为程序app之间的数据访问提供接口. broad ...
- Spring3.0官网文档学习笔记(四)--3.1~3.2.3
3.1 Spring IoC容器与Beans简单介绍 BeanFactory接口提供对随意对象的配置: ApplicationContext是BeanFactory的子接口.整合了Sp ...
- suricate学习笔记1--初步认识(转)
最近在研究关于dpi网卡采集的代码重组这块,公司一个同事,简单的用CPP讲解了suricata内部的一些处理逻辑,,,其中大部分代码是用C语言写的,对于用C重构代码有很好的借鉴作用,,,如果有相关工作 ...
- c语言入门这一篇就够了-学习笔记(一万字)
内容来自慕课网,个人学习笔记.加上了mtianyan标签标记知识点. C语言入门 -> Linux C语言编程基本原理与实践 -> Linux C语言指针与内存 -> Linux C ...
- Spring Security Architecture and Implementation(架构和实现)学习笔记
Spring Security 关于spring-security的官网文档学习笔记,主要是第8章 Architecture and Implementation(架构和实现)内容 参考: https ...
随机推荐
- 【每日一题】【小根堆&边出队边入队后续节点&注意判空】23. 合并K个升序链表-211128/220213
给你一个链表数组,每个链表都已经按升序排列. 请你将所有链表合并到一个升序链表中,返回合并后的链表. 答案1(参数是数组): /** * Definition for singly-linked li ...
- CMS可视化---ECharts图表
一.ECharts介绍 ECharts,全称Enterprise Charts,商业级数据图表,一个纯Javascript的图表库,能够流畅的运行在PC以及移动设备上,兼容当前绝大部分浏览器.为我们许 ...
- 外包公司中的"炼狱",极度摧残,避免踩坑。
引言 前些天羊了,一直没有更新.今天给大家聊聊两家外包公司,遇到的小伙伴避免踩坑. 咱不说那些虚的,什么尽量不要去外包公司,尽可能找甲方,这些谁都知道,肯定是因为一些原因(比如学历.项目经验.技术有待 ...
- ssm——mybatis整理
目录 1.mybatis框架概述 2.直接使用jdbc连接数据库带来的问题 3.mybatis连接池 3.1.mybatis连接池yml配置 3.2.mybatis连接池xml配置 4.一个简单的my ...
- Hadoop详解(03)-Hadoop编译源码-了解
Hadoop详解(03)-Hadoop编译源码-了解 准备工作 CentOS联网 配置CentOS能连接外网.Linux虚拟机ping www.baidu.com 是畅通的 jar包准备(hadoop ...
- python读取kafka,输出到Vertica数据库
# 主测试 # https://docs.python.org/2/library/json.html import sys import json import vertica_python imp ...
- windows安装wordcloud遇到的坑汇总
pip install wordcloud报错,缺少visual studio包 不要偷懒,一定要从报错的地方去下载完整版本 然后安装c++ 重启后就不会报错了
- npm 中设置环境NODE_ENV变量,判断失败打印process.env.NODE_ENV确实是"development",但是判断process.env.NODE_ENV === "development" 是false
通过package.json 的scripts脚本 修改NODE_ENV的值来区分开发环境和生产环境. "scripts": { "build": " ...
- 线上代码已变更,客户没有刷新浏览器,导致点击菜单后找不到相对路由js文件无法加载XXX路由,解决办法如下
1,reload 方法,该方法强迫浏览器刷新当前页面. 语法:location.reload([bForceGet]) 参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当 ...
- SQL优化的一些方法
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...