Linux之系统安全及应用

德国南部之星 / 2023-07-30 / 原文

目录
  • 账号安全
    • 系统账号清理
    • 密码安全控制
    • 命令历史限制
    • 终端自动注销
  • 系统引导和登陆控制
    • 使用su命令切换用户
    • PAM安全认证模块
  • sudo

账号安全

系统账号清理

  • 将非登陆用户的Shell设为/sbin/nologin
[root@localhost ~]#cat /etc/passwd #查看系统有哪些用户
[root@localhost ~]#usermod -s /sbin/nologin 用户名 #将用户设置为不能登陆
  • 锁定长期不适用的账号
[root@localhost ~]#passwd  -l #锁定用户
[root@localhost ~]#usermod -L #锁定用户

[root@localhost ~]#passwd  -u #解锁用户
[root@localhost ~]#usermod -U #解锁用户

[root@localhost ~]#passwd  -S #查看用户状态
  • 删除无用的账号
[root@localhost ~]#userdel 用户    #删除用户
[root@localhost ~]#userdel -r 用户 #将宿主目录一起删除
  • 锁定账号文件passwd用户、shadow密码

[root@localhost ~]#chattr +i /etc/passwd
[root@localhost ~]#chattr +i /etc/shadow
#锁定文件


[root@localhost ~]#chattr -i /etc/passwd
[root@localhost ~]#chattr -i /etc/shadow
#解锁文件


[root@localhost ~]#lsattr /etc/passwd
[root@localhost ~]#lsattr /etc/shadow
#查看文件状态属性


#####例子
[root@localhost ~]#chattr +i /etc/passwd
[root@localhost ~]#lsattr /etc/passwd
----i----------- /etc/passwd
[root@localhost ~]#chattr -i /etc/passwd
[root@localhost ~]#lsattr /etc/passwd
---------------- /etc/passwd


[root@localhost ~]#chattr +i /etc/shadow
[root@localhost ~]#lsattr /etc/shadow
----i----------- /etc/shadow
[root@localhost ~]#chattr -i /etc/shadow
[root@localhost ~]#lsattr /etc/shadow
---------------- /etc/shadow






密码安全控制

  • 设置密码有效期
  • 要求用户下次登陆时修改密码
chage -M 30 用户 #设置密码有效期30天 适用于已有用户

chage -d 0 用户 #下次登陆必须修改密码

命令历史限制

  • 减少记录的命令条数
  • 注销时自动清空命令历史
env


echo $HISTSIZE
HISTSIZE=10


vim /etc/profile
HISTSIZE=10


export HISTSIZE=200

history -c #临时清理
echo "">.bash_history #写入.bash_logout #注销时自动清理命令

终端自动注销

vim /etc/profile  #对所有用户生效
vim .bashrc  #只对自己生效
export TMOUT=10
. /etc/profile  #刷新配置文件,使文件立即生效
source /etc/profile  #刷新配置文件,使文件立即生效

系统引导和登陆控制

使用su命令切换用户

su 用户

root切换普通用户不用密码验证
普通用户切换其他用户需要密码验证

su - 用户
#加 - 是完全切换  自立门户
#不加 - 是不完全切换  继承师尊遗产 会残留上一个用户的一些设置

PAM安全认证模块

用户来访问我
首先确定用什么来访问 确定service类型 (用户名 密码 密钥 短信验证码)
根据配置文件确定是否放行
如果调用的相关的模块

配置文件:
主配置:/etc/security 只有功能强大的pam模块才会有主配置文件
次配置文件:/etc/pam.d 虽然他是次配置 他优先

模块文件:/usr/lib64/security

我怎么知道 怎么配置 模块的配置文件
man 8 pam_nologin

type #验证类型
control 
moudle-path 
arguments

cat system-auth

sudo