Linux:系统安全及应用

一、账号安全控制

1、账号安全基本措施

(1)系统账号清理

a、将非登录用户的Shall设为/sbin/nologin

usermod -s/sbin/nologin 用户名

b、锁定长期不使用的账号

usermod -L 用户名 passwd -l 用户名

passwd -S 用户名

c、删除无用的账号

userdel[-r]用户名

d、锁定账号文件passwd、shadow

chattr +i/etc/passwd/etc/shadow(锁定文件并查看状态)

isattr /etc/passwd/etc/shadow

chattr -i/etc/passwd/etc/shadow(解锁文件)

账号安全管理

禁止程序用户登录 usermod -s /sbin/nologin 用户名

锁定禁用长期不使用的用户 passwd -l 用户名 usermod -L 用户名 #查看锁定账号状态 passwd -S 用户名

删除无效用户 userdel -r 用户名

禁止账号和密码的修改 chattr +i /etc/passwd /etc/shadow #查看锁定文件状态 lsattr 文件名

(2)密码安全控住

a、设置密码有效期

b、要求用户下次登录时修改密码

root@localhost\~\]# vi/etc/login.defs(修改密码配置文件适用于新建用户) PASS_MAX_DAYS 30 \[root@localhost\~\]# chage-M 30 lisi(适用于已有用户) \[root@localhost\~\]# cat/etc/shadow \| grep lisi \[root@localhost\~\]# chage -d 0 zhangsan(强制在下次登录时更改密码) \[root@localhost\~\]# cat /etc/shadow \| grep zhangsan(shadow文件中的第三个字段被修改为0) 密码安全管理 设置密码有效期 chage -M 天数 用户名 #针对已存在的用户,天数为 99999 表示为永不过期 vim /etc/login.defs --\> PASS_MAX_DAYS 天数 #针对新建的用户 强制用户下一次登录修改密码 chage -d 0 用户名 (3)命令历史限制 a、减少记录的命令条数 b、登录时自动清空命令历史 (4)终端自动注销 a、闲置600秒后自动注销 历史命令安全管理 查看历史命令 history 限制历史命令数量 vim /etc/profile --\> export HISTSIZE=XX --\> source /etc/profile 清空历史命令 history -c #临时清空 vim /etc/profile --\> \> \~/.bash_history 2、使用su命令切换用户 (1)限制使用su命令的用户 a、将允许使用su命令的用户加入wheel组 b、启用pam_wheel认证模块 限制su切换用户 1)将信任的用户加入到wheel组中 gpasswd wheel -a 用户名 2)修改su的PAM认证配置文件 vim /etc/pam.d/su -\> 开启 auth required pam_wheel.so use_uid 的配置 ssh远程登录输入三次密码错误则锁定用户 vim /etc/pam.d/sshd auth required pam_tally2.so deny=3 unlock_time=600 even_deny_root root_unlock_time=600 sudo提权 visudo vim /etc/sudoers (要用 wq! 强制保存) #用户/组授权 用户名 主机名=程序列表 #命令要用绝对路径表示,支持使用通配符 \* 表示所有, ! 表示取反 %组名 主机名=程序列表 用户名 主机名=NOPASSWD: 程序列表 #NOPASSWD: 表示sudo不用密码验证 #别名设置 User_Alias 大写别名=用户1, 用户2, ... Host_Alias 大写别名=主机名1, 主机名2, ... Cmnd_Alias 大写别名=命令路径1, 命令路径2, ... 用户别名 主机别名=命令别名 #设置sudo日志路径 Defaults logfile = "/var/log/sudo.log" sudo -l #普通用户查看有哪些sudo权限 如何查看进程是否已经开启? systemctl status 进程名 ps aux/-elf \| grep 进程名 netstat/ss -lntup \| grep 进程名/:端口 lsof -i :端口 如何通过端口查看进程号? netstat -lntup \| grep :端口 ss -lntup \| grep :端口 lsof -i :端口

相关推荐
Sheffield8 小时前
Docker的跨主机服务与其对应的优缺点
linux·网络协议·docker
Sheffield16 小时前
Alpine是什么,为什么是Docker首选?
linux·docker·容器
舒一笑1 天前
程序员效率神器:一文掌握 tmux(服务器开发必备工具)
运维·后端·程序员
Johny_Zhao1 天前
centos7安装部署openclaw
linux·人工智能·信息安全·云计算·yum源·系统运维·openclaw
haibindev1 天前
在 Windows+WSL2 上部署 OpenClaw AI员工的实践与踩坑
linux·wsl2·openclaw
NineData2 天前
数据库管理工具NineData,一年进化成为数万+开发者的首选数据库工具?
运维·数据结构·数据库
梦想很大很大2 天前
拒绝“盲猜式”调优:在 Go Gin 项目中落地 OpenTelemetry 链路追踪
运维·后端·go
Sinclair2 天前
内网服务器离线安装 Nginx+PHP+MySQL 的方法
运维
叶落阁主2 天前
Tailscale 完全指南:从入门到私有 DERP 部署
运维·安全·远程工作