CentOS7系统安全加固小结

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: CentOS7系统安全加固小结

640.jpg

CentOS7系统安全加固小结


1.设置口令策略+登录限制


加强口令的复杂度等,降低被猜解的可能性。操作步骤如下


1)使用命令 vi /etc/login.defs 修改配置文件


PASS_MAX_DAYS 30 #新建用户的密码最长使用天数
PASS_MIN_DAYS 0 #新建用户的密码最短使用天数
PASS_MIN_LEN 10 #密码最小长度
PASS_WARN_AGE 7 #新建用户的密码到期提前提醒天数

640.png


2)使用chage命令修改用户设置


chage -m 0 -M 30 -E 2020-06-30 -W 7 root


表示将root用户的密码最长使用天数设为30,最短使用天数设为0,密码2020年06月30日过期,过期前七天警告用户

640.png


如上图所示,手动修改系统日期与时间进行验证,再次登录会要求修改密码

640.png


3)设置SSH登录连续输错五次密码,账号锁定30秒


使用命令


vi /etc/pam.d/sshd


修改配置文件,在配置文件中添加


auth required pam_tally2.so deny=5 unlock_time=30 even_deny_root root_unlock_time=30


640.png640.png640.png


pam_tally -r去重置计数

640.png640.png


2.SSH安全加固


1、限制root用户直接登录


创建普通权限账号并配置密码,防止无法远程登录

vi /etc/ssh/sshd_config修改配置文件将PermitRootLogin的值改成no,并保存,然后使用service sshd restart重启服务


2、修改SSH使用的协议版本。


设置 Protocol 的版本为 2


3、修改允许密码错误次数(默认6次)


设置 MaxAuthTries 的值为 3


4、修改SSH的端口


例如改为Port 8022


sed -i 's/#Port 22/Port 8022/g' /etc/ssh/sshd_config
service sshd restart
firewall-cmd --zone=public --add-port=8022/tcp --permanent
firewall-cmd --reload


修改过后请务必请记录SSH 的端口号


5、修改监听地址


ListenAddress 0.0.0.0 修改为具体的网卡IP地址 若有多网卡,只监听在某个网卡地址上


6、关闭AgentForwarding和TcpForwarding


#AllowAgentForwarding yes

#AllowTcpForwarding yes

改为

AllowAgentForwarding no

AllowTcpForwarding no

另外在Linux中,通过外网使用SSH服务登录或数据传输时,速度很慢,即使是使用内网登录或数据传输也很慢。

该问题可能是由于SSH服务启用了UseDNS特性所致。

使用vi等编辑器,修改为

UseDNS no

也可以注释策略配置,在策略配置前添加 #

#UseDNS no

重启SSH服务使配置生效。service sshd restart


3.记录所有用户的登录和操作日志


通过脚本代码实现记录所有用户的登录操作日志,防止出现安全事件后无据可查

vi /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


640.png


运行source /etc/profile 加载配置生效

注意: /var/log/history 是记录日志的存放位置,可以自定义。

通过上述步骤,可以在 /var/log/history 目录下以每个用户为名新建一个文件夹,每次用户退出后都会产生以用户名、登录IP、时间的日志文件,包含此用户本次的所有操作


640.png


目前先总结这么多,后续有遇到再补充

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
1月前
|
消息中间件 安全 Kafka
Apache Kafka安全加固指南:保护你的消息传递系统
【10月更文挑战第24天】在现代企业环境中,数据的安全性和隐私保护至关重要。Apache Kafka作为一款广泛使用的分布式流处理平台,其安全性直接影响着业务的稳定性和用户数据的安全。作为一名资深的Kafka使用者,我深知加强Kafka安全性的重要性。本文将从个人角度出发,分享我在实践中积累的经验,帮助读者了解如何有效地保护Kafka消息传递系统的安全性。
86 7
|
5月前
|
安全 Linux 网络安全
Linux 系统安全加固经验总结
Linux 系统安全加固经验总结
68 2
Linux 系统安全加固经验总结
|
7月前
|
安全 关系型数据库 MySQL
CentOS 7系统加固详细方案SSH FTP MYSQL加固
CentOS 7系统加固详细方案SSH FTP MYSQL加固
|
安全 Unix Linux
全网最全安全加固指南之linux系统加固
全网最全安全加固指南之linux系统加固
1795 0
|
存储 缓存 安全
全网最全安全加固指南之windows系统加固
全网最全安全加固指南,呕心沥血总结本篇文章,可能技术含量不高,但也是极其耗费精力。安服道友们,直接`Ctrl + F` 哪里忘了搜哪里。
5557 0
|
安全 Unix Linux
系统加固之Linux安全加固
系统加固之Linux安全加固
332 0
系统加固之Linux安全加固
|
安全 Linux 网络安全
【分享】非常全面的CentOS7系统安全检测和加固脚本
【分享】非常全面的CentOS7系统安全检测和加固脚本
1389 0
【分享】非常全面的CentOS7系统安全检测和加固脚本
|
安全 Linux
CentOS7一键安全加固及系统优化脚本
CentOS7一键安全加固及系统优化脚本
1321 1
CentOS7一键安全加固及系统优化脚本
|
安全 算法 网络协议
【CentOS7操作系统安全加固系列】第(6)篇
【CentOS7操作系统安全加固系列】第(6)篇
706 0
【CentOS7操作系统安全加固系列】第(6)篇
|
安全 Shell Linux
【CentOS7操作系统安全加固系列】第(1)篇
【CentOS7操作系统安全加固系列】第(1)篇
585 0
【CentOS7操作系统安全加固系列】第(1)篇