Linux系统安全及应用

1.系统账号清理

  1. 将非登录用户的 Shell 设为 /sbin/nologin(/sbin/nologin:禁止终端登录)

root@localhost \~\]# grep "/sbin/nologin$" /etc/passwd \| wc -l //这条命令的作用是统计/etc/passwd文件中登录 Shell 为/sbin/nologin的用户数量。 \[root@localhost \~\]# grep "/sbin/nologin$" /etc/passwd \| awk -F: '{print $1}' \> nologin.txt //这条命令的作用是从/etc/passwd文件中筛选出指定用户,并将用户名保存到nologin.txt文件中。 \[root@localhost \~\]# cat nologin.txt //查看文件login.txt ![](https://i-blog.csdnimg.cn/direct/c917982fef2d4a04baa09a97b7db022d.jpeg) 2.锁定长期不用的用户,但不确定是否删除 \[root@localhost \~\]# useradd zhangsan root@localhost \~\]# echo "123123" \| passwd --stdin zhangsan 这条命令的整体效果是将字符串 "123123" 作为新密码,为用户 zhangsan 设置密码。通常情况下,执行 passwd 命令时,系统会提示用户输入当前密码(如果有设置)以及新密码两次进行确认,但使用 --stdin 选项后,就可以通过管道直接将密码传递给 passwd 命令,实现非交互式的密码设置 \[root@localhost \~\]# usermod -L zhangsan \[root@localhost \~\]# passwd -S zhangsan \[root@localhost \~\]# usermod -U zhangsan \[root@localhost \~\]# passwd -S zhangsan ![](https://i-blog.csdnimg.cn/direct/a1a39636e54349899712d23e80b73f70.jpeg) 3.锁定账号文件 \[root@localhost \~\]# chattr +i /etc/passwd /etc/shadow //锁定这两个文件 # passwd用于存储用户 # shadow用于存储用户密码的 \[root@localhost \~\]# lsattr /etc/passwd /etc/shadow //查看文件状态 \[root@localhost \~\]# useradd wangwu //创建用户测试 \[root@localhost \~\]# chattr -i /etc/passwd /etc/shadow //解锁 \[root@localhost \~\]# useradd wanguw //再次创建用户测试 \[root@localhost \~\]# echo "123123" \| passwd --stdin wangwu ![](https://i-blog.csdnimg.cn/direct/6d2f16c4d037497d8447ceef90681473.jpeg) ##### 2.密码安全控制 1.设置密码有效期限(默认为99999天)下面将把他改为30天 \[root@localhost \~\]# vim /etc/login.defs 找到:PASS_MAX_DAYS 99999 改为:PASS_MAX_DAYS 30 给已有用户:root@localhost \~\]# chage -M 30 zhangsan 2.下次登陆重设密码 \[root@localhost \~\]# chage -d 0 zhangsan 登录用户验证 ![](https://i-blog.csdnimg.cn/direct/548edd02926946cba5e02a77eb96c901.jpeg) ##### 3。自动清空历史命令及自动注销 1.限制记录命令的条数 //默认为1000 \[root@localhost \~\]# vim /etc/profile 找到HISTSIZE=1000 改为:HISTSIZE=5 \[root@localhost \~\]# source /etc/profile //执行脚本 \[root@localhost \~\]# history //查看历史记录 ![](https://i-blog.csdnimg.cn/direct/e48dc53da54e452699839dd7bc5097ca.jpeg) 需要全部清空的话:\[root@localhost \~\]# vim \~/.bash_logout 进入之后向下面加入:history -c clear //就能把历史都清空 2.终端自动注销 在 Bash 终端环境中可以设置一个限制超时时间,当超过指定时间没有任何操作自动注销终端。 root@localhost \~\]# echo "export TMOUT=30" \>\> \~/.bash_profile #终端30秒不做任何操作将自动注销 \[root@localhost \~\]# source \~/.bash_profile #使其生效 \[root@localhost \~\]# 等待输入超时:自动登出 ![](https://i-blog.csdnimg.cn/direct/e3a4ae3ad2174d8cb2cbeafeb1160bca.jpeg) 验证完成后,改回默认比较好

相关推荐
kcuwu.12 分钟前
从0到1:VMware搭建CentOS并通过FinalShell玩转Linux命令
linux·运维·centos
s65166549621 分钟前
linux-内核结构体
linux
.柒宇.28 分钟前
MySQL双主同步
linux·数据库·mysql·docker
格林威32 分钟前
AI视觉检测:INT8 量化对工业视觉检测精度的影响
linux·运维·人工智能·数码相机·计算机视觉·视觉检测·工业相机
万山寒1 小时前
linux日志查询,查找某个关键词后面的内容
linux·运维·服务器
房开民1 小时前
ubuntu中安装claude code
linux·运维·ubuntu
Bert.Cai1 小时前
Linux mv命令详解
linux·运维
云捷配低代码1 小时前
低代码库存管理系统实战:实现库存预警、出入库自动化管理
运维·低代码·自动化·数字化·敏捷流程·数字化转型
头铁的伦1 小时前
QNX 网络模型
linux·网络·车载系统
小贾要学习1 小时前
【Linux】TCP网络通信编程
linux·服务器·网络·c++·网络协议·tcp/ip