Linux系统安全加固的常规操作

摘要:linux是一套免费使用和自由传播的系统 , 是一个基于UNIX的多用户、多任务、支持多线程和多CPU的操作系统 。所谓的多用户和多任务 。多用户是指在同一时刻可以有多个用户同时使用操作系统而且他们互不干扰 , 而多任务则指的是任何一个用户在同一时间可以在操作系统上运行多个程序 。
作为一个开放源代码的操作系统 , Linux服务器以其安全、高效和稳定的显著优势而得以广泛应用 , 不过 , 如果不做好权限的合理分配 , 系统的安全性得不到更好的保障 。
因此 , 为提高系统的稳定性 , 加强安全管理必不可少 。
本文将使用centos7操作系统 , 分别从账户安全、密码策略、登录控制、系统资源控制以及日志审计等方面优化系统的安全性 。详细内容请参考下文 。
一、优化系统账号管理
说明:系统账户默认存放的目录为/etc/passwd , 可以执行cat指令手动查询用户信息 。具体的优化措施是除了root账户需要登录以外 , 其他的账户全部设置为禁止登录 。
需要用到的命令如下:
userdel <用户名> //删除不必要的账号 。
passwd -l <用户名> //锁定不必要的账号 。
passwd -u <用户名> //解锁必要的账号 。
解决办法:本文使用{passwd -l 用户名}锁定用户登录 , 可以编写lockuser.sh脚本完成这个过程 。
1、编写脚本
执行指令# vim lockuser.sh

Linux系统安全加固的常规操作

文章插图
 
备注:grep -v就是反向过滤文本行的搜索 , grep -v name # 表示搜索除了含有name之外的行内容 。
2、执行脚本
执行指令# sh lockuser.sh
Linux系统安全加固的常规操作

文章插图
 
二、设置密码管理策略
说明:操作系统和数据库的管理用户身份鉴别信息应具有不易被破解的特点 , 口令应有一定的复杂度要求并定期更换 。设置有效的密码策略 , 防止攻击者破解出密码 。
1、查看空口令帐号并为弱/空口令帐号设置强密码
执行指令# awk -F: '($2 == ""){print $1}' /etc/shadow
备注:可用密码网站查询出帐号的密码是否是弱口令
2、修改login.defs配置密码周期策略
执行指令# vim /etc/login.defs
修改密码策略文件
Linux系统安全加固的常规操作

文章插图
 
修改内容为
Linux系统安全加固的常规操作

文章插图
 
备注:此策略只对策略实施后所创建的帐号生效 ,  以前的帐号还是按99999天周期时间来算 。对于已创建的账户 , 可以使用chage命令修改用户设置(针对已创建用户) 。【比如# chage -m 0 -M 90 -I 5 -W 7 <用户名>】表示将此用户的密码最长使用天数设为30 , 最短使用天数设为0 , 密码过期后5天之后账户失效 , 过期前7天警告用户 。
参数含义如下所示:
PASS_MAX_DAYS 90 #密码最长过期天数
PASS_MIN_DAYS 0 #密码最小过期天数
PASS_MIN_LEN 8 #密码最小长度
PASS_WARN_AGE 7 #密码过期警告天数
3、修改system-auth配置密码复杂度
执行指令# vim /etc/pam.d/system-auth
修改密码复杂度文件为
Linux系统安全加固的常规操作

文章插图
 
备注:在密码复杂度文件的末尾添加如下一行:password requisite pam_cracklib.so retry=3 difok=2 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1
参数含义如下所示:
difok:本次密码与上次密码至少不同字符数
minlen:密码最小长度 , 此配置优先于login.defs中的PASS_MAX_DAYS
ucredit:最少大写字母
lcredit:最少小写字母
dcredit:最少数字


推荐阅读