1.禁用删除没有用的账号
命令 cat ./etc/shadow 查看多少账号
删除:userdel (用户名)
锁定不必要的账户:passwd -l<用户名>
解锁必要账号: passwd -u<用户名>
查看空口令账号:awk -F:'($2=="")'/etc/shadow
查看UID为0的账号: awk-F: '($3==0)'/etc/passwd
空口令账户设置密码:passwd(用户名)
2.添加口令策略
作用:加强口令的复杂度等,降低被猜解的可能性
使用vim /etc/login.defs修改配置
PASS_MAX_DAYS 用户密码最长使用天数
PASS_MIN_DAYS 用户密码最短使用天数
PASS_WARN_AGE 用户密码到期提前提醒天数
可以用chage命令修改用户配置
chage意思为,密码最长使用天数设为30,最短使用天数设为0,密码2021年12月7日过期,过期前七天警告用户
限制用户su
作用:限制能us到root的用户
用vim /etc/pam.d/su 修改配置,添加
禁止root账户远程登录(慎用)
使用vim /etc/ssh/sshd_config 进入之后,找到PermitRootLogin值,删掉#并且yes改no,之后重启sshd
(注意:打完之后千万别重启虚拟机或者远程端口,只重启sshd,否则会进不去虚拟机)
3.关闭不必要的服务
作用:关必不必要的服务
使用命令systemctl.disable(服务名)设置服务开机不启动(systemctl enable 开机自启动)
chkconfig --list 查看启动服务
4.ssh服务安全
作用:对SSH服务进行安全加固,防止暴力破解成功
使用vim /etc/ssh/sshd_config编辑配置
不允许root直接登录(设置permitRootlogin为no)
修改ssh协议版本,设置protocol版本为2
修改允许密码错误次数(默认为6)
设置Maxauthtries为3
之后记得重启,service
5.设置文件系统umaks值与登录超时
vim /etc/profile 添加umaks 027 与TMOUT=xxx(xxx为秒,)
6.日志
启动日志(系统日志 /var/log/messagers
cron日志 /var/log/cron
安全日志 /var/log/secure
注意:上面路径均为默认路径,如果自己更改过按自己更改来输入
用cat +路径查看
7.记录用户的登录和日志
先进入vim /etc/profile
之后将下面代码复制进去
history
USER=`whoami`
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
if [ "$USER_IP" = "" ]; then
USER_IP=`hostname`
fi
if [ ! -d /var/log/history ]; then
mkdir /var/log/history
chmod 777 /var/log/history
fi
if [ ! -d /var/log/history/${LOGNAME} ]; then
mkdir /var/log/history/${LOGNAME}
chmod 300 /var/log/history/${LOGNAME}
fi
export HISTSIZE=4096
DT=`date +"%Y%m%d_%H:%M:%S"`
export HISTFILE="/var/log/history/${LOGNAME}/${USER}@${USER_IP}_$DT"
chmod 600 /var/log/history/${LOGNAME}/*history* 2>/dev/null
之后保存退出使用source /etc/profile 使配置生效
8.其他
date 查看系统时间
cat /etc/rsyslog.conf 中是否存在
uname -sr 查看系统内核版本
systemctl status auditd 查看状态
systemctl stop auditd 关闭
cat /etc/audit/audit.rules 查看规则
systemctl -a | grep running 查看运行服务
systemctl stop 服务名 关闭服务
yum list installed 查看安装包
netstat -ntlp 查看默认端口号
/etc/hosts.allow(deny) 查看允许接入(不允许接入)
firewall-cmd --list-all 查看防火墙对外开放的端口
rpm -qa | grep patch 查看linux主机补丁安装情况
more /var/log/secure | grep refused 查看重要线索
(没设置不会显示)