等保2.0服务器测评-身份鉴别测评方法以及配置整改-01

2024-03-07 09:48

本文主要是介绍等保2.0服务器测评-身份鉴别测评方法以及配置整改-01,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

等保2.0服务器测评-身份鉴别

声明:

测评要求参考《信息安全技术 网络安全等级保护测评要求GB/T 28448一2019》
测评方法以及配置整改为个人工总结,仅供参考不适用全部操作系统,有不合理的地方大家多多指出,欢迎交流。

测评项

 a)应对登录的用户进行身份标识和鉴别,身份标识具有唯一性,身份鉴别信息具有复杂度要求并定期更换;b)应具有登录失败处理功能,应配置并启用结束会话、限制非法登录次数和当登录连接超时自动退出等相关措施; c)当进行远程管理时,应采取必要措施防止鉴别信息在网络传输过程中被窃听; d)应采用口令、密码技术、生物技术等两种或两种以上组合的鉴别技术对用户进行身份鉴别,且其中一种鉴别技术至少应使用密码技术来实现。

测评项a)

a)应对登录的用户进行身份标识和鉴别,身份标识具有唯一性,身份鉴别信息具有复杂度要求并定期更换;

测评方法和预期:
1)用户登录需输入用户名和密码;
2)用户具备唯一性;(即用户名或用户ID不能重复,这个不用多说,windows自动实现,默认符合。)
3)尝试使用空口令登录,未成功;
4)结果如下:
a)复杂性要求已启用;
b)密码长度最小值:长度最小值至少为8位;
c)密码长度最长使用期限:不为0;
d)密码最短使用期限:不为0;
e)强制密码历史:至少记住5个密码以上。

我这里以windows2016服务器为测试案例,windows服务器基本上是大同小异。
测评方法:

1、windows服务器

上机检查:
1、用户登录需输入用户名和密码
运行netplwiz
在这里插入图片描述
2、用户ID不能重复,这个不用多说,windows自动实现,默认符合。
3、检查密码复杂度要求是否启用。
输入gpedit.msc或secpol.msc,进入
计算机配置—Windows设置—安全设置—帐户策略—密码策略
在这里插入图片描述
具体密码复杂度规则说明可以双击“密码必须符合复杂性”要求,查看说明
在这里插入图片描述
综上 windows服务器启用口令复杂度要求并配置口令长度、更换周期、强制密码历史就可以了。

2、linux服务器

上机检查:
以CentOS为例

1)、用户登录需输入用户名和密码

查看是否存在空口令用户
在/etc/passwd中用户的密码是被保护的状态,即使用了*号来隐藏。而实际的密码内容是加密后保存在/etc/shadow文件中了,我们确认是否存在空口令的用户就确认该文件中密码对应字段的长度是否为0,
如果为0则证明该用户密码为空。
具体看下表

uangianlap:$6$oX3cr.x9IJD6Qx1J$17EXp1cHc5cJWECPz36DiUUFY9yzcZdN48AUFAgu6TGT7gpcvuTD/cfatPZCdeGCHUd7BWsMDlBRB2J89N8su1:17017:5:180:7:30:23590:可以看到被“:”分隔出总共有9个字段,下面简要说说这些字段的含义。(1)uangianlap: 系统用户名(必须在系统中存在)(2)$6$oX3c...: 加密后的用户密码
PS:如果为空,则对应用户没有口令,登录时不需要口令;
星号代表帐号被锁定;
双叹号表示这个密码已经过期了;
$6$开头的,表明是用SHA-512加密;
$1$表明是用MD5加密;
$5$ 是用 SHA-256加密;
$2a$ 和 $2y$表示Blowfish算法(3)17017      :最近一次修改密码的时间。即密码的生日。这个数字代表天数(即距1970年1月1日的天数)(4)5              :密码的最短“寿命”(单位为天),这里定了5天,即说明这个用户密码至少得“存活“5天吧?换句话说也就是这5天内不再允许你修改自己的密码了。(5)180       :密码的最长“寿命” (单位为天),即180天内密码都是有效的,但180天之后用户必须更新其密码。(6)7           :密码“寿命”到时提前几天警告用户。这里的7天表示180天的寿命前7天即第173天开始给用户警告。(7)30         :我这里把这个理解为密码失效后的一个缓冲时间。即180天过后的30天之内,密码还是有效的(前提是用户没有拿出),但是若用户要重新登录的话,则要求用户设置新密码了。数字0表示立即失效,如果是-1则代表密码永远不会失效。(8)23590   :帐号失效日期(单位为天,距1970年1月1日的天数)。这个日期后用户帐号将失效,而不会理会密码的问题。(9)             :第9个字段,默认留空,暂时没有意义。是系统保留的一个字段,以备后用。

2)、检查密码复杂度要求以及配置,centOS为例。

2.1) 配置理解

系统对密码的控制是有两部分(我知道的)组成:
  1 cracklib
  2 login.defs
  声明:login.defs主要是控制密码的有效期。对密码进行时间管理。此处不细谈。
  login.defs --shadow password suite configuration
  pam_cracklib.so或pam_pwquality.so才是控制密码复杂度的关键文件。

首先明白login.defs、system-auth和shadow文件的关联。
一、login.defs
login.defs是设置新用户帐号限制的文件,在这里我们可配置密码的最大过期天数,密码的最大长度约束等内容(该文件里的配置对root用户无效)。
如果/etc/shadow文件中配置参数为账户既有的配置,如有相同功能的字段配置,则以/etc/shadow里既有的设置为准。
而system-auth中配置的是对Linux登录PAM验证机制,分阶段逐行匹配配置信息,执行认证成功或失败的操作。
检查/etc/login.defs文件,重点关注PASS_MAX_DAYS口令使用最长天数应合理。

2.2) login.defs参考配置策略:

(1)修改/etc/login.defs文件
PASS_MAX_DAYS   90  #密码最长过期天数
PASS_MIN_DAYS   80  #密码最小过期天数
PASS_MIN_LEN    10  #密码最小长度
PASS_WARN_AGE   7   #密码过期警告天数

二、/etc/pam.d/system-auth


[root@hecs-357431 pam.d]# cat  system-auth
#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        required      pam_faildelay.so delay=2000000
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 1000 quiet_success
auth        required      pam_deny.soaccount     required      pam_unix.so
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 1000 quiet
account     required      pam_permit.sopassword    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password    required      pam_deny.sosession     optional      pam_keyinit.so revoke
session     required      pam_limits.so
-session     optional      pam_systemd.so
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session     required      pam_unix.so

在配置前了解system-auth文件的结构:

auth 组件:认证接口,要求并验证密码。

account组件:检测是否允许访问,检测账户是否过期或在末端时间内能否登陆。

password组件:设置并验证密码。

session组件:配置和管理用户 session。

当前组件对配置的限制程度:

required:该模块必须success才能进行继续。即使失败,用户也不会立刻获知,直到所有相关模块完成。

requisite:该模块必须success才能使认证继续进行。

suffifient:如果失败则忽略。

optinal:忽略结果,不管是否失败。

密码复杂度要求策略需在password组件策略下修改pam_pwquality.so或pam_cracklib.so所在行。

2.3) /etc/pam.d/system-auth参考配置策略

password requisite pam_cracklib.so retry=5 difok=3 minlen=8 dcredit=-1 
(此处有个回车请删除)
ucredit=-1 lcredit=-1 ocredit=-1 dictpath=/usr/share/cracklib/pw_dict

释义:修改密码可尝试5次,difok为与旧口令不同的字符个数3个,minlen为新口令最短长度8,dcredit为数字最少1位,ucredit为大写字母最少1位,lcredit为小写字母最少1位,ocredit为特殊字符最少1位(credit配置中负数为最少有X位,正数为最多有X位),启用弱口令检查字典pw_dict。

注意:以上设置对root用户无效。修改后你可能会立即测试,会发现以上设置无效。你可以新建账户,并进入该账户(即对新建用户生效)效果如下:。
在这里插入图片描述

#删除test用户
userdel -rf test
cat /etc/pam.d/system-auth

2.4) 参考不重复历史密码

Debian / Ubuntu:修改文件 # vi /etc/pam.d/common-password
CentOS / RHEL / RedHat / Fedora 修改文件 # vi /etc/pam.d/system-auth在 password sufficient pam_unix.so use_authtok md5 shadow remember=10
在相应行的后面添加 remember=10,而不是添加一行!SUSE比较恶心,找了半天才找到。man pw_check
在/etc/security/pam_pwcheck文件中添加remember=5
passwd:    nullok use_cracklib remember=5

2.5) 综合密码复杂度配置检查:


#密码复杂度
cat  /etc/pam.d/system-auth#更换周期
cat /etc/login.defs
无空口令用户
唯一id一般默认符合,

[root@hecs-357431 pam.d]# cat  system-auth
#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        required      pam_faildelay.so delay=2000000
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 1000 quiet_success
auth        required      pam_deny.soaccount     required      pam_unix.so
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 1000 quiet
account     required      pam_permit.sopassword    requisite     pam_pwquality.so password requisite pam_cracklib.so retry=5 difok=3 minlen=8 dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1
password    sufficient    pam_unix.so sha512 shadow remember=10  nullok try_first_pass use_authtok
password    required      pam_deny.sosession     optional      pam_keyinit.so revoke
session     required      pam_limits.so
-session     optional      pam_systemd.so
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session     required      pam_unix.so

今天就先到这里,欢迎关注公众号
在这里插入图片描述

这篇关于等保2.0服务器测评-身份鉴别测评方法以及配置整改-01的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/783107

相关文章

问题:第一次世界大战的起止时间是 #其他#学习方法#微信

问题:第一次世界大战的起止时间是 A.1913 ~1918 年 B.1913 ~1918 年 C.1914 ~1918 年 D.1914 ~1919 年 参考答案如图所示

[word] word设置上标快捷键 #学习方法#其他#媒体

word设置上标快捷键 办公中,少不了使用word,这个是大家必备的软件,今天给大家分享word设置上标快捷键,希望在办公中能帮到您! 1、添加上标 在录入一些公式,或者是化学产品时,需要添加上标内容,按下快捷键Ctrl+shift++就能将需要的内容设置为上标符号。 word设置上标快捷键的方法就是以上内容了,需要的小伙伴都可以试一试呢!

Linux 安装、配置Tomcat 的HTTPS

Linux 安装 、配置Tomcat的HTTPS 安装Tomcat 这里选择的是 tomcat 10.X ,需要Java 11及更高版本 Binary Distributions ->Core->选择 tar.gz包 下载、上传到内网服务器 /opt 目录tar -xzf 解压将解压的根目录改名为 tomat-10 并移动到 /opt 下, 形成个人习惯的路径 /opt/tomcat-10

大学湖北中医药大学法医学试题及答案,分享几个实用搜题和学习工具 #微信#学习方法#职场发展

今天分享拥有拍照搜题、文字搜题、语音搜题、多重搜题等搜题模式,可以快速查找问题解析,加深对题目答案的理解。 1.快练题 这是一个网站 找题的网站海量题库,在线搜题,快速刷题~为您提供百万优质题库,直接搜索题库名称,支持多种刷题模式:顺序练习、语音听题、本地搜题、顺序阅读、模拟考试、组卷考试、赶快下载吧! 2.彩虹搜题 这是个老公众号了 支持手写输入,截图搜题,详细步骤,解题必备

uniapp接入微信小程序原生代码配置方案(优化版)

uniapp项目需要把微信小程序原生语法的功能代码嵌套过来,无需把原生代码转换为uniapp,可以配置拷贝的方式集成过来 1、拷贝代码包到src目录 2、vue.config.js中配置原生代码包直接拷贝到编译目录中 3、pages.json中配置分包目录,原生入口组件的路径 4、manifest.json中配置分包,使用原生组件 5、需要把原生代码包里的页面修改成组件的方

2024.6.24 IDEA中文乱码问题(服务器 控制台 TOMcat)实测已解决

1.问题产生原因: 1.文件编码不一致:如果文件的编码方式与IDEA设置的编码方式不一致,就会产生乱码。确保文件和IDEA使用相同的编码,通常是UTF-8。2.IDEA设置问题:检查IDEA的全局编码设置和项目编码设置是否正确。3.终端或控制台编码问题:如果你在终端或控制台看到乱码,可能是终端的编码设置问题。确保终端使用的是支持你的文件的编码方式。 2.解决方案: 1.File -> S

电脑不小心删除的文件怎么恢复?4个必备恢复方法!

“刚刚在对电脑里的某些垃圾文件进行清理时,我一不小心误删了比较重要的数据。这些误删的数据还有机会恢复吗?希望大家帮帮我,非常感谢!” 在这个数字化飞速发展的时代,电脑早已成为我们日常生活和工作中不可或缺的一部分。然而,就像生活中的小插曲一样,有时我们可能会在不经意间犯下一些小错误,比如不小心删除了重要的文件。 当那份文件消失在眼前,仿佛被时间吞噬,我们不禁会心生焦虑。但别担心,就像每个问题

ONLYOFFICE 8.1 版本桌面编辑器测评

在现代办公环境中,办公软件的重要性不言而喻。从文档处理到电子表格分析,再到演示文稿制作,强大且高效的办公软件工具能够极大提升工作效率。ONLYOFFICE 作为一个功能全面且开源的办公软件套件,一直以来都受到广大用户的关注与喜爱。而其最新发布的 ONLYOFFICE 8.1 版本桌面编辑器,更是带来了诸多改进和新特性。本文将详细评测 ONLYOFFICE 8.1 版本桌面编辑器,探讨其在功能、用户

通过SSH隧道实现通过远程服务器上外网

搭建隧道 autossh -M 0 -f -D 1080 -C -N user1@remotehost##验证隧道是否生效,查看1080端口是否启动netstat -tuln | grep 1080## 测试ssh 隧道是否生效curl -x socks5h://127.0.0.1:1080 -I http://www.github.com 将autossh 设置为服务,隧道开机启动

IDEA配置Tomcat远程调试

因为不想把本地的Tomcat配置改乱或者多人开发项目想测试,本文主要是记录一下,IDEA使用Tomcat远程调试的配置过程,免得一段时间不去配置到时候忘记(毕竟这次是因为忘了,所以才打算记录的…) 首先在catalina.sh添加以下内容 JAVA_OPTS="-Dcom.sun.management.jmxremote=-Dcom.sun.management.jmxremote.port