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

相关推荐
BAOYUCompany2 小时前
暴雨服务器更懂人工智能+
运维·服务器·人工智能
一只小bit2 小时前
Linux网络:阿里云轻量级应用服务器配置防火墙模板开放端口
linux·网络·阿里云
嘉琪0013 小时前
实现视频实时马赛克
linux·前端·javascript
SpiderPex3 小时前
GitHub下载项目完整配置SSH步骤详解
运维·ssh·github
帽儿山的枪手3 小时前
HVV期间,如何使用SSH隧道绕过内外网隔离限制?
linux·网络协议·安全
睡觉的时候不会困4 小时前
基于三台主机搭建 Web 服务环境:Nginx、NFS 与 DNS 配置全流程
运维·nginx
@半良人4 小时前
Jenkins流水线部署+webhook2.0
运维·jenkins
邹诗钰-电子信息工程4 小时前
嵌入式基础知识复习(C语言)
linux·c语言·vim
瀚高PG实验室5 小时前
CentOS 8 安装HGDB V4.5 psql命令执行报错
linux·运维·centos·瀚高数据库
小醉你真好5 小时前
6、CentOS 9 安装 Docker
linux·docker·centos