系统安全和应用
一、账号安全的基本措施
1. shell设置为login
针对非登录用户
usermod -s nologin 用户名 --------------- 禁止登录
2. 锁定账号
① 通过账户名称锁定
锁定:usermod -L 用户名
解锁:usermod -U 用户名
②通过账户密码锁定
passwd -l 用户名
passwd -u 用户名
3. 删除账号
userdel [-r] 用户名
删除时加上 -r 选项,表示连同该用户的家目录一起删除
4. 锁定重要文件
用 chatter 命令锁定重要的文件(passwd、shadow、fstab)
[root@localhost ~]# chattr +i /etc/passwd /etc/shadow
[root@localhost ~]# lsattr /etc/passwd /etc/shadow
[root@localhost ~]# chattr -i /etc/passwd /etc/shadow
当passwd文件被锁定时,不可以更改保存
5. 密码安全控制
(1)更改已有用户的密码有效期
将已有用户user1的密码有效期改为30天
[root@localhost ~]# chage -M 30 user1
(2)提前设置新用户的密码有效期
提前设置新用户user2的密码有效期为30天
[root@localhost ~]# vim /etc/login.defs
PASS_MAX_DAYS 30
[root@localhost ~]# useradd user2
[root@localhost ~]# passwd user2
(3)强制在下次登录成功时修改密码
① 临时修改(只需要在设置后第一次登陆成功后更改密码)
[root@localhost ~]# chage -d 0 user1
② 永久修改(在设置后每一次登录成功后都要修改一次密码)
[root@localhost ~]# vim /etc/shadow
将指定用户的第3字段改为0
6. 命令历史记录限制
history 命令可查看命令历史记录,系统默认1000条记录
history -c 命令可临时清除记录,重启记录还在
(1)临时修改当前用户的历史命令条数
临时修改命令历史条数为5条
[root@localhost ~]# HISTSIZE=5
[root@localhost ~]# history
(2)永久修改命令历史条数
进入配置文件 /etc/profile 修改
永久将命令历史条数改为5条
[root@localhost ~]# vim /etc/profile
将 HISTSIZE 的值改为5
[root@localhost ~]# source /etc/profile
(3)退出当前终端将命令清除
进入配置文件 ~/.bash_logout 添加命令
[root@localhost ~]# vim ~/.bash_logout
[root@localhost ~]# source ~/.bash_logout
(4)开机后当前终端将命令清除
进入配置文件 ~/.bashrc 添加命令
[root@localhost ~]# vim ~/.bashrc
[root@localhost ~]# source ~/.bashrc
7. 设置登录超时时间
进入配置文件
设置10秒内无操作自动登出
[root@localhost ~]# vim /etc/profile
TMOUT=10
[root@localhost ~]# source /etc/profile
8. 限制用户使用su命令
进入配置文件 /etc/pam.d/su,将第六行 auth required pam_wheel.so use_uid 注释取消
第一字段:认证类型
第二字段:控制类型
第三字段:PAM模块及其参数
再将希望使用su命令的用户加入到wheel组中即可
设置user1可以使用su命令,user2不可以使用su命令
[root@localhost ~]# vim /etc/pam.d/su
auth required pam_wheel.so use_uid # 此行注释取消
[root@localhost ~]# gpasswd -a user1 wheel
9. 限制用户使用sudo命令
(1)给普通用户添加指定管理员命令
给普通用户user1添加ifconfig、passwd管理员命令
(2)限制用户配置的sudo命令
# 配置用户user2 可以使用 sudo rm 命令
[root@localhost data]# vim /etc/sudoers
user2 ALL=(root) /bin/rm
# 限制用户使用已配置的sudo 命令
[root@localhost data]# vim /etc/sudoers
Host_Alias MYHOSTS = localhost
User_Alias MYUSERS = user2
Cmnd_Alias MYCMNDS = !/bin/rm
MYUSERS MYHOSTS = MYCMNDS
10. 加密GRUB菜单
重启服务器,按e键可以查看并修改GRUB引导参数,这对服务器是一个极大的威胁。
可以为GRUB菜单设置一个密码,只有提供正确的密码才被允许修改引导参数。
未加密前按e键
加密grub命令
[root@localhost ~]# grub2-setpassword
Enter password:
Confirm password: