Linux服务器安全配置基线

基线要求:

安全类别

|

检查项

|

检查要求

|

检查步骤

|

备注

—|—|—|—|—

账户及口令安全

|

1.1 检查是否设置口令生存周期

|

应配置口令生存周期,密码最长使用期限应小于等于90天,密码最短使用期限应非0。

|

执行:cat /etc/login.defs,检查是否配置了以下参数。
PASS_MAX_DAYS 配置项决定密码最长使用期限;
PASS_MIN_DAYS 配置项决定密码最短使用期限;
要求:PASS_MAX_DAYS为小于等于90。
PASS_MIN_DAYS为非0。

|

针对程序帐号之类的不能完全使用上述策略的帐号口令应予以原因说明。

1.2 检查是否设置口令复杂度策略

|

最短密码长度8个字符,启用本机组策略中密码必须符合复杂性要求的策略。即密码至少包含以下四种类别的字符中的三种:
·英语大写字母 A, B, C, … Z
·英语小写字母 a, b, c, … z
·西方阿拉伯数字 0, 1, 2, … 9
·非字母数字字符,如标点符号,@, #, $, %, &, *等

|

1、执行:cat /etc/login.defs,检查是否配置了以下参数。
PASS_MIN_LEN 配置项决定密码最小长度。
要求:PASS_MIN_LEN为8。
2、执行:cat /etc/pam.d/system-auth,检查是否配置了以下参数。
password requisite pam_cracklib.so minlen=8 ucredit=-1 lcredit=-1
dcredit=-1 ocredit=-1
或者为pam_pwquality.so模块,最早之前使用的是 pam_cracklib.so ,后来改成
pam_pwquality.so 这个模块,但此模块完全兼容于 pam_cracklib.so
minlen 配置项决定了新密码最短长度。
ucredit 配置项限定了新密码中至少有多少个大写字符。
lcredit 配置项限定了新密码中至少有多少个小写字符。
dcredit 配置项限定了新密码中至少有多少个数字。
ocredit 配置项限定了新密码中至少有多少个其他字符。

|

针对程序帐号之类的不能完全使用上述策略的帐号口令应予以原因说明。

1.3 检查是否设置口令失效提示

|

应设置口令在失效前7天进行提示。

|

执行:cat /etc/login.defs,检查是否配置了以下参数。
PASS_WARN_AGE 配置项决定密码到期提醒时间。
要求:PASS_WARN_AGE为7。

|

针对程序帐号之类的不能完全使用上述策略的帐号口令应予以原因说明。

1.4 检查是否设置口令重复使用次数

|

不能复用近期使用过的5个密码

|

执行:cat /etc/pam.d/system-auth以及cat /etc/pam.d/passwd,检查是否配置了以下参数。
password required pam_unix.so remember=5
remember 指新密码不能和之前的5个密码相同。
要求:remember为5

|

1.5 检查是否存在空口令账号

|

应不存在空口令的账号。

|

执行:awk -F: ‘($2 == “”) { print $1 }’ /etc/shadow,检查是否有输出账号,若有输出则该账号为空口令账号。

|

1.6 检查除root账户以外是否存在uid为0的账户

|

uid为0的账户应只有root。

|

执行:awk -F: ‘($3 == 0) { print $1 }’ /etc/passwd,检查是否输出条目是否只有root。

|

1.7 检查是否删除或锁定无用账户

|

应删除或锁定与设备运行、维护等工作无关的账号。需锁定daemon、bin、sys、nuucp、lpd、imnadm、ipsec、ldap、nobody、snapp、invscout、Adm、lp、sync、shutdown、halt、news、uucp、operator、games等系统默认账户

|

1、执行:cat /etc/shadow,检查无用账户。
2、执行:passwd -l username,锁定无用账户。
要求:锁定的用户为daemon、bin、sys、nuucp、lpd、imnadm、ipsec、ldap、nobody、snapp、invscout、Adm、lp、sync、shutdown、halt、news、uucp、operator、games等系统默认账户。
可通过passwd -S username查看用户状态。
3、执行:awk -F: ‘($2 == “*”) { print $1 }’ /etc/shadow,查看已锁定的账户。
4、执行:awk -F: ‘($2 == “!!”) { print $1 }’ /etc/shadow,查看密码已过期的账户,判断其是否需要删除。

|

若需系统默认账号登录系统,需管理员提供设置密码的原因。

1.8 检查是否有登录失败处理功能

|

应启用登录失败处理功能,在登录失败5次后,锁定账户10分钟,包括root账户。

|

1、执行:cat /etc/pam.d/system-auth以及cat /etc/pam.d/sshd,检查第一行是否配置了以下参数。
auth required pam_tally2.so onerr=fail deny=5 unlock_time=600
even_deny_root root_unlock_time=600
deny 表示最大几次认证错误,如果超出此错误,将执行后面的策略。如锁定N秒,如果后面没有其他策略指定时,默认永远锁定,除非手动解锁。
onerr 表示出现异常时的处理。
unlock_time 表示认证被锁后,多长时间自动解锁用户。
even_deny_root 指root用户在认证出错时,一样被锁定。
root_unlock_time 指root用户在失败时,锁定多长时间。
要求:onerr 为fail
deny 为5
ulock_time 为600秒
root_ulock_time 为600秒
2、执行 cat /etc/ssh/sshd_config,检查以下参数。
MaxAuthTries 决定进行SSH登录时的最大尝试次数。
要求:MaxAuthTries为5

|

1.9 检查是否禁用root用户远程ssh登录

最后

从时代发展的角度看,网络安全的知识是学不完的,而且以后要学的会更多,同学们要摆正心态,既然选择入门网络安全,就不能仅仅只是入门程度而已,能力越强机会才越多。

因为入门学习阶段知识点比较杂,所以我讲得比较笼统,大家如果有不懂的地方可以找我咨询,我保证知无不言言无不尽,需要相关资料也可以找我要,我的网盘里一大堆资料都在吃灰呢。

干货主要有:

①1000+CTF历届题库(主流和经典的应该都有了)

②CTF技术文档(最全中文版)

③项目源码(四五十个有趣且经典的练手项目及源码)

④ CTF大赛、web安全、渗透测试方面的视频(适合小白学习)

⑤ 网络安全学习路线图(告别不入流的学习)

⑥ CTF/渗透测试工具镜像文件大全

⑦ 2023密码学/隐身术/PWN技术手册大全

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

扫码领取

  • 19
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值