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

相关推荐
赖亦无11 分钟前
【水动力学】06 Linux + Conda 环境下源码编译安装 pypims (CUDA加速) 避坑指南
linux·运维·conda·pypims·水动力学
穷人小水滴18 分钟前
使用 WebRTC 实现局域网投屏: PC (GNOME ArchLinux) -> 平板 (Android)
android·linux·webrtc·浏览器·js·gnome·投屏
恋红尘20 分钟前
K8S 控制器-资源调度-叩丁狼
linux·docker·kubernetes
weixin_5375904521 分钟前
《C程序设计语言》练习答案(练习1-7)
linux·c语言·算法
123过去2 小时前
ike-scan使用教程
linux·测试工具
疯狂吧小飞牛9 小时前
GPG基础指令
linux·服务器·网络
C++ 老炮儿的技术栈9 小时前
volatile使用场景
linux·服务器·c语言·开发语言·c++
todoitbo10 小时前
用虚拟局域网打通 Win/Mac/Linux 三端:跨设备协作的实用方案
linux·运维·macos
源远流长jerry10 小时前
RDMA 基本操作类型详解:从双端通信到单端直访
linux·网络·tcp/ip·ip
Sylvia-girl11 小时前
Linux下的基本指令1
linux·运维·服务器