简介:这份文档面向网络安全从业者、等保测评人员及企业合规负责人,系统梳理网络安全等级保护2.0中二级与三级要求的差异,帮助读者在定级备案、安全建设与整改时快速对照两级标准。内容围绕监管要求与技术要求两条主线展开,涵盖《网络安全法》《刑法》相关条款、网安定级备案流程,以及网络安全结构、访问控制、拨号访问控制、安全审计、边界完整性检查、入侵防范、恶意代码防范、网络设备防护等技术控制项的逐条对比,并标注三级在带宽优先级、内容过滤、移动设备接入、实时报警、非法外联阻断等方面的增强要求。资源为1个docx文档,压缩包约57KB,体积轻便,便于随查随用。目前已有2915人学习下载,适合作为等保项目自查、测评准备与培训参考的对照清单,帮助读者厘清二级与三级在控制粒度与合规深度上的具体差距。
1. 等保2.0二级与三级:一份文档背后,差的是钱还是命
很多团队第一次接触等保,都是被一纸通知推着走的:业务上线前要做测评,甲方或监管问一句“你们过的是二级还是三级”,会议室里瞬间安静。等保2.0把原来分散的标准整合成一套体系,二级和三级看着只差一级,落到实际建设上,可能是几十万和上百万的差距,也可能是“整改两周”和“整改半年”的差距。这份《网络安全等级保护2.0二级和三级等保比较》文档,本质上要回答的就是:同样一套系统,定级定到二级还是三级,控制项差在哪、钱花在哪、测评怎么过。它适合正在做定级备案的运维负责人、要写整改方案的安全工程师,以及被预算卡住、想知道哪些钱能省哪些不能省的技术管理者。下面我按自己做过几个项目的顺序,把二级和三级的差异拆成能落地的判断和动作。
2. 定级这件事:二级和三级的分界线到底画在哪
2.1 定级不是拍脑袋,先看受侵害的客体和程度
等保2.0的定级逻辑,核心看两个维度:受侵害的客体(公民法人和其他组织、社会秩序和公共利益、国家安全)和侵害程度(一般、严重、特别严重)。二级对应的是“客体是一般系统,受侵害后对公民法人有一般损害,或对社会秩序公共利益有一般损害”;三级则往上走一层,要么对社会秩序公共利益造成严重损害,要么对国家安全造成一般损害。听起来抽象,落到业务上就是几个追问:系统里有没有超过一定规模的个人信息、是不是面向社会提供公共服务、一旦宕机或数据泄露会不会影响一批人的正常生活。
我一般会拿一张表把业务系统过一遍,先判断它属于哪个客体层级,再判断损害程度。很多争议出在“一般”和“严重”的边界上,这时候不要自己硬扛,把业务影响面、用户规模、数据敏感度写成材料,找测评机构和专家评审确认。定级定错了,后面所有控制项都是白做。
2.2 二级和三级的控制项数量差异,先有个心理预期
等保2.0的安全通用要求里,二级和三级在十个大类上都有要求,但三级的控制点明显更多、更细。以我手头项目的经验,三级在“安全区域边界”“安全计算环境”“安全管理中心”这几块增加最多,尤其是安全管理中心,二级基本不强制,三级是硬指标。下面这张表是我整理的一个粗略对照,具体条款以最新标准文本为准,但数量级能帮你判断工作量。
| 控制大类 | 二级关注重点 | 三级新增/加严重点 |
|---|---|---|
| 安全物理环境 | 机房基本门禁、防火防水 | 增加电磁防护、更细的出入记录 |
| 安全通信网络 | 通信传输完整性、保密性 | 增加网络架构冗余、关键设备硬件冗余 |
| 安全区域边界 | 访问控制、入侵防范 | 增加恶意代码防范、安全审计、边界完整性检查 |
| 安全计算环境 | 身份鉴别、访问控制、数据完整性 | 增加入侵防范、恶意代码防范、可信验证、数据保密性 |
| 安全管理中心 | 基本不强制 | 系统管理、审计管理、安全管理三员分立 |
| 安全管理制度 | 制度齐全、评审 | 增加制度发布、修订流程的严格记录 |
这张表不是让你照抄去写方案,而是让你在定级阶段就意识到:三级多出来的不是几条配置,而是一整套管理动作。比如“三员分立”,意味着系统管理员、审计管理员、安全管理员不能是同一个人,很多小团队就三个人,这一条直接卡死,要么招人要么调整组织架构。
2.3 定级备案的实操步骤和材料清单
定级不是内部开个会就完事,要走备案。我一般按这个顺序推:
- 确定定级对象:把业务系统、支撑它的网络和硬件划成一个定级对象,不要拆得太碎,也不要混在一起。
- 初步定级:按上面说的客体和程度,给出二级或三级的初步结论,写清楚理由。
- 专家评审:找至少三名相关领域专家开评审会,形成评审意见。这一步很多团队想省,但备案时主管部门会看。
- 主管部门审核:把定级报告和评审意见报给行业主管部门,拿到审核意见。
- 公安备案:在系统上线后30日内,到属地公安机关网安部门备案,提交定级报告、评审意见、备案表等。
材料上,定级报告要写清楚系统描述、定级理由、级别结论;评审意见要有专家签字;备案表按当地公安的模板填。不同地区细节有差异,提前打电话问清楚,比返工强。
提示:定级备案的时间点尽量往前赶,不要等测评机构进场了才想起来备案没做,测评报告和备案信息对不上,会被打回。
3. 二级等保落地:哪些控制项可以轻量做,哪些不能省
3.1 二级的“轻量”不等于“不做”,先抓身份鉴别和访问控制
二级等保在很多人眼里是“意思意思”,但测评不过照样整改。我的经验是,二级先把身份鉴别和访问控制做扎实,这两块是测评必查、也最容易出问题的地方。身份鉴别要求用户名口令不能太弱、要有复杂度策略、登录失败要处理;访问控制要求按角色分配权限、默认拒绝、最小权限。这些在操作系统、数据库、应用层都要覆盖。
以Linux服务器为例,二级的身份鉴别可以用PAM模块做口令复杂度,下面这段配置我一般直接抄:
# 编辑 /etc/pam.d/system-auth 或 /etc/pam.d/common-password # 加入 pam_pwquality 模块,强制口令复杂度 password requisite pam_pwquality.so try_first_pass local_users_only retry=3 minlen=8 dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 # 参数说明: # minlen=8 最小长度8位 # dcredit=-1 至少1个数字 # ucredit=-1 至少1个大写字母 # lcredit=-1 至少1个小写字母 # ocredit=-1 至少1个特殊字符 # retry=3 允许重试3次改完要执行authconfig --update或重启相关服务生效。这段配置的逻辑是:在口令修改和登录时强制检查复杂度,不满足就拒绝。参数里minlen和四个credit是最常调的,二级一般8位加三类字符就够,三级会要求更长或更频繁更换。
访问控制方面,Linux上我一般用chmod和chown把关键目录权限收紧,比如/etc/shadow必须是000或400,Web目录不能有写权限给所有人。应用层则要在代码里做角色判断,不能只靠前端隐藏按钮。
3.2 二级的日志和审计:不用上大平台,但必须留得住
二级等保对安全审计的要求是“覆盖到每个用户”,记录重要用户行为和安全事件。很多小团队觉得日志随便存存就行,结果测评时被问“三个月前的登录记录能查吗”,直接翻车。我的做法是,二级先用系统自带的日志服务,把关键日志集中到一个地方,保留至少6个月。
下面这段是Linux下用rsyslog把日志转发到一台日志服务器的配置:
# 在客户端 /etc/rsyslog.conf 末尾加入 *.* @192.168.1.100:514 # 参数说明: # *.* 表示所有设施和所有级别 # @ 表示UDP传输,@@ 表示TCP # 192.168.1.100 是日志服务器IP # 514 是syslog默认端口 # 在日志服务器 /etc/rsyslog.conf 中启用接收 $ModLoad imudp $UDPServerRun 514 # 并配置按客户端IP分目录存储 $template RemoteLogs,"/var/log/remote/%FROMHOST-IP%/%$YEAR%-%$MONTH%-%$DAY%.log" *.* ?RemoteLogs逻辑是客户端把所有日志通过UDP发给服务器,服务器按来源IP和日期分文件存。参数上,UDP可能丢包,对完整性要求高就换成TCP(@@)。二级这样够用,三级会要求日志防篡改、有审计员角色,那就需要上专门的日志审计系统或SIEM。
3.3 二级的备份和恢复:别等测评前才想起来测
二级要求数据备份和恢复,但没三级那么严。我一般建议至少做到:关键数据每天增量备份、每周全量备份,备份介质异地存放,并且每季度做一次恢复演练。测评时老师会看备份策略文档和恢复记录,没有记录等于没做。
具体操作上,数据库用mysqldump或xtrabackup做定时任务,文件用rsync同步到备份机。下面是一个简单的MySQL备份脚本:
#!/bin/bash # 每天凌晨2点执行全量备份,保留最近7天 BACKUP_DIR=/data/backup/mysql DATE=$(date +%Y%m%d) mysqldump -uroot -p'密码' --all-databases --single-transaction --routines --triggers > $BACKUP_DIR/full_$DATE.sql # 删除7天前的备份 find $BACKUP_DIR -name "full_*.sql" -mtime +7 -delete # 参数说明: # --single-transaction 保证InnoDB表一致性,不锁表 # --routines 导出存储过程和函数 # --triggers 导出触发器脚本逻辑是每天全量导出,保留7天。参数里--single-transaction对业务影响小,但只对InnoDB有效。恢复演练就是拿这个SQL在测试库跑一遍,记录时间和结果,留档。
4. 三级等保落地:多出来的控制项怎么补,钱花在哪
4.1 三级的安全管理中心:三员分立怎么落地
三级最让人头疼的是安全管理中心,要求系统管理员、审计管理员、安全管理员三个角色分立,互相制约。小团队没这么多人,常见做法是:系统管理员由运维担任,审计管理员由财务或行政兼任,安全管理员由技术负责人兼任,但权限必须分开。具体到系统上,就是不同角色登录不同的管理界面,操作日志互相可见但不能互删。
以Linux为例,可以建三个用户组,用sudo做权限隔离:
# 创建三个用户和组 groupadd sysadmin groupadd auditadmin groupadd secadmin useradd -G sysadmin sysuser useradd -G auditadmin auduser useradd -G secadmin secuser # 配置 sudoers,让 sysuser 只能执行运维命令 # 编辑 /etc/sudoers.d/sysadmin sysuser ALL=(ALL) NOPASSWD: /bin/systemctl, /usr/bin/vi /etc/nginx/nginx.conf # auduser 只能查看日志 auduser ALL=(ALL) NOPASSWD: /usr/bin/cat /var/log/*, /usr/bin/tail /var/log/* # secuser 只能管理安全策略 secuser ALL=(ALL) NOPASSWD: /usr/sbin/iptables, /usr/bin/firewall-cmd逻辑是用sudo把命令粒度控制到具体路径,三个角色各管一摊。参数上,NOPASSWD是为了自动化,但生产环境建议保留密码。审计管理员能看日志但不能删,安全管理员能改防火墙但不能看业务数据,这样才叫分立。
4.2 三级的入侵防范和恶意代码防范:主机层怎么配
三级在安全计算环境里明确要求入侵防范和恶意代码防范。入侵防范包括关闭多余端口、限制终端接入、检测异常行为;恶意代码防范就是杀毒软件或HIDS。Linux上我一般做这几件事:
- 关闭不需要的服务和端口,用
systemctl disable和firewall-cmd只放行必要端口。 - 安装HIDS或杀毒,比如开源的
osquery做行为监控,或者商业EDR。 - 配置
auditd监控关键文件变更。
下面是一段auditd规则,监控/etc/passwd和/etc/shadow的写操作:
# 在 /etc/audit/rules.d/audit.rules 中加入 -w /etc/passwd -p wa -k passwd_change -w /etc/shadow -p wa -k shadow_change # 参数说明: # -w 监控文件路径 # -p wa 监控写(w)和属性变更(a) # -k 是自定义关键字,方便查询 # 重启auditd service auditd restart # 查询相关事件 ausearch -k passwd_change逻辑是内核级监控文件变更,任何写操作都记录。参数里-p wa覆盖了内容和权限变化,-k用于快速过滤。三级测评会看这些规则和日志,二级一般不强制。
4.3 三级的网络架构冗余:双机双线怎么省钱做
三级要求关键网络设备、链路和服务器硬件冗余。全冗余很贵,我一般按业务重要性分级:核心交换机做堆叠,出口链路找两家运营商,应用服务器做双机热备。预算有限时,至少把数据库和认证服务器做成主备。
以Nginx+Keepalived做双机热备为例:
# 主备机都安装 nginx 和 keepalived # 主机 /etc/keepalived/keepalived.conf vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.1.200 } } # 备机 state 改为 BACKUP,priority 改为 90 # 参数说明: # virtual_router_id 同一集群要一致 # priority 主高备低,决定谁抢到VIP # virtual_ipaddress 是对外提供服务的浮动IP逻辑是两台机器跑Keepalived,通过VRRP协议争抢VIP,主机挂了备机接管。参数里priority差越大切换越果断,advert_int是心跳间隔。三级测评会看冗余架构图和切换测试记录,二级不强制。
5. 避坑与排查:二级三级项目里最容易翻车的五件事
5.1 定级定高了预算爆炸,定低了测评不过
现象:系统明明只面向内部几百人,却定了三级,整改预算翻倍;或者面向公众的小程序定了二级,测评时被指出应定三级,重新走流程。 原因:定级时没仔细对照客体和损害程度,或者为了“保险”往高定,或者为了省钱往低定。 解决:定级前把业务影响面、用户规模、数据敏感度写成书面材料,找专家评审确认。已经定错的,及时申请变更,别硬扛。
5.2 三员分立变成“三个人共用一套密码”
现象:测评时发现系统管理员、审计员、安全员用同一个账号登录,或者虽然有三个账号但密码相同、权限没隔离。 原因:小团队人手不够,图省事,或者不理解“分立”的技术含义。 解决:至少做到账号独立、权限独立、日志独立。可以用sudo或堡垒机做细粒度控制,审计员只能看日志,安全员只能改策略,系统管理员只能运维。
5.3 日志保留时间不够,测评时查不到
现象:测评老师要三个月前的登录日志,发现日志只留了7天,或者被轮转覆盖了。 原因:默认日志轮转策略太短,或者没做集中存储。 解决:调整logrotate保留周期,或者用rsyslog转发到日志服务器。二级至少6个月,三级建议12个月以上。
5.4 备份做了但没恢复演练,等于没备份
现象:测评时要求提供恢复演练记录,拿不出来;或者真出故障时发现备份文件损坏。 原因:只配了定时备份,没验证过恢复流程。 解决:每季度做一次恢复演练,记录时间、步骤、结果。备份文件要定期校验完整性,比如用md5sum比对。
5.5 三级项目漏了“可信验证”,整改时临时补
现象:三级测评条款里有“可信验证”,很多团队没听过,整改时不知道从哪下手。 原因:等保2.0三级新增了可信验证要求,传统安全建设没覆盖。 解决:可信验证目前落地方式包括TPM、TCM芯片或可信软件基,预算有限可以先做软件层面的完整性校验,比如用AIDE做文件完整性监控,至少满足“检测到篡改能告警”。
# 安装并初始化AIDE yum install aide -y aide --init mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz # 每天执行检查 aide --check # 参数说明:--init 生成初始数据库,--check 对比当前状态逻辑是记录文件初始哈希,定期比对,发现变更就告警。参数上,aide.conf里可以配置监控目录和排除规则。三级测评会看这个机制,二级不要求。
6. 从二级升三级:一份可复用的差距评估清单和升级顺序
如果你现在系统是二级,业务发展要升三级,别急着全面铺开。我一般先做差距评估,把三级多出来的控制项逐条对照,标出“已满足”“部分满足”“未满足”,然后按风险和成本排序。下面这张清单是我常用的模板,你可以直接拿去改。
| 控制项 | 二级状态 | 三级要求 | 差距 | 优先级 |
|---|---|---|---|---|
| 安全管理中心 | 无 | 三员分立 | 未满足 | 高 |
| 入侵防范 | 基本无 | 主机层检测 | 部分满足 | 高 |
| 恶意代码防范 | 无 | 防病毒/HIDS | 未满足 | 高 |
| 网络冗余 | 单线单机 | 关键设备冗余 | 未满足 | 中 |
| 数据保密性 | 传输加密 | 存储加密 | 部分满足 | 中 |
| 可信验证 | 无 | 完整性校验 | 未满足 | 低 |
升级顺序上,我建议先做安全管理中心和三员分立,因为这是三级独有的硬指标,也是测评最先看的;然后补入侵防范和恶意代码防范,这两块技术方案成熟,花钱能解决;网络冗余和数据加密根据预算排期;可信验证放最后,用软件方案先顶住。
具体操作上,差距评估可以用表格逐条过,每一条写清楚现状、目标、整改动作、责任人、预算。比如“三员分立”这一条,整改动作就是建三个账号、配sudo权限、改管理流程,责任人写运维负责人,预算可能为零,但需要调整组织架构。
最后说一个我自己的习惯:每次做完等保项目,我都会把测评老师提的问题和整改过程记在一个文档里,下次做同类项目先翻这个文档。等保2.0的二级和三级比较,说到底不是背条款,而是把条款翻译成自己系统里的具体配置和流程。我踩过最深的坑是以为二级随便过,结果身份鉴别和日志两块被卡了两个月。希望帮到你。
本文还有配套的精品资源,点击获取