Linux 系统安全 | 账号安全控制

服务器被攻击,或多或少都会成一些影响,密切监视服务器状态,确保服务器能正常运行。


相关文件

  • /etc/passwd 存放所有账号信息

  • /etc/shadow 存放账号的密码及设定信息

  • /etc/login.defs 密码配置文件


梳理账号信息

以下操作可以直接修改 /etc/passwd 文件,也可以用相应的命令实现。

1、删除不要的账号

# 删除用户及家目录
userdel -r [用户名]

# 清除账号密码
passwd -d [用户名]

2、锁定暂时不用的账号

# 锁定账号
usermod -L [用户名]

# 解锁账号
usermod -U [用户名]

# 锁定账号密码
passwd -l [用户名]

# 解锁账号密码
passwd -u [用户名]

# 查看账号状态
passwd -S [用户名]

3、不需要登录的账号设置 nologin

usermod -s /sbin/nologin [用户名]

锁定账号文件

锁定后 root 也无法修改

# 锁定文件 /etc/passwd /etc/shadow
chattr +i /etc/passwd /etc/shadow

# 解锁文件
chattr -i /etc/passwd /etc/shadow

# 查看文件状态
lsattr /etc/passwd /etc/shadow

密码设置

修改配置文件后,只对之后新创建的账号管用

# 密码最大有效期,默认为 99999,表示永久
PASS_MAX_DAYS   99999

# 密码最小有效天数
PASS_MIN_DAYS   0

# 密码最小长度
PASS_MIN_LEN    5

# 密码过期警告时间
PASS_WARN_AGE   7

# 系统用户的 UID 范围
SYS_UID_MIN               201
SYS_UID_MAX               999

# 普通用户的 UID 范围
UID_MIN                  1000
UID_MAX                 60000

# 创建账号时新建家目录
CREATE_HOME yes

对于新用户,可以设置最大有效期为 0,初次登录时修改密码

所有可登录的普通用户,设置定期修改密码


终端自动注销

长时间没有动作时,自动登出服务器

编辑 /etc/profile 后,记得执行 source /etc/profile,使得配置生效

# 300s 后自动注销
export TMOUT=300

限制使用 su 命令的用户

su 可以切换当前登录用户

# root 切换成其他用户,不需要密码

# 普通用户切换到目标用户,需要目标用户的密码

修改配置文件 /etc/pam.d/su,限制可用 su 的用户

# 只允许 wheel 组的用户使用 su
auth       required    pam_wheel.so use_uid

# auth 是 pam 认证模块类型,auth 表示对用户身份进行识别
# required 是 pam 控制标记,required 表示需要返回一个成功值,如果返回失败,不会立刻返回,而是继续进行同类型的下一验证,所有此类型的模块都执行完成后再返回
# pam_wheel.so 是 pam 模块,so 文件在 /usr/lib64/security/ 目录下
# use_uid 是 pam 模块参数,根据不同模块添加

用 sudo 提升权限

注意 sudo susudo su - 的区别

# 提升到 root 权限
sudo su -

sudo -i

修改配置 /etc/sudoers 限制可以提升权限的用户

# 允许 wheel 组的用户执行所有命令
%wheel  ALL=(ALL)   ALL
posted @ 2023-05-29 16:49  菜乌  阅读(98)  评论(0编辑  收藏  举报