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) 验证完成后,改回默认比较好

相关推荐
无聊的烤苕皮几秒前
RHCE(RHCSA复习:npm、dnf、源码安装实验)
linux·npm·云计算·dnf·rhcsa
xxxx1234459 分钟前
Linux驱动开发-①pinctrl 和 gpio 子系统②并发和竞争③内核定时器
linux·驱动开发·单片机
stone082314 分钟前
ABAP语言的动态编程(4) - 综合案例:管理费用明细表
linux·运维·服务器
厂里英才38 分钟前
docker无法正常拉取镜像问题的解决
linux·docker
mljy.40 分钟前
Linux《进度条》
linux
顾林海1 小时前
解锁Android应用进程启动:从代码到原理深度剖析
android·linux·操作系统
ღ星ღ1 小时前
网络编程基础
运维·服务器·网络
过客WZX1 小时前
Ubuntu24.04下管理自己的ssh连接
运维·服务器·ssh
沢田纲吉2 小时前
Linux:万字博客带你学会线程!
linux·后端·操作系统
努力犯错玩AI2 小时前
轻松部署Gemma3-27B,L20服务器+最新版vLLM高效推理
linux·后端·python