系统安全:对于个人,对于企业都是非常重要的。
一、账号安全控制:
锁定不需要的账户
passwd -l 用户名
解锁:passwd-u 用户名
usermod -L 用户名
解锁:usermod-U
删除不需要的用户
userdel -r 用户名 连家目录一并删除
查看文件状态:lsattr
lsattr /etc/passwd
lsattr /etc/shadow
lsattr /etc/fstab
在工作当中,重要的应用程序,在非发版(更新迭代)期,都是锁定的
锁定重要文件:chattr +i 文件路径
例如 chattr +i /etc/passwd
重要文件:/etc/passwd
/etc/shadow
/etc/fstab
解锁文件:chattr - i 文件路径
例如:chattr -i /etc/passwd
密码进行安全控制:
密码有效期:到了一定时间点,强制用户修改密码。
密码控制:文本格式密码。
设置密码的有效期:
1.vim /etc/login.defs 修改配置文件,改变账号创建时的密码最大有效期。(只能针对新建用户,已有用户不在此范围之内)
底行模式:set nu
25dd跳转到25行
修改有效期:
接下来新建用户chang------>密码有效期变成所设置的时间(图中设置为最大有效期30天)
第二种方式:vim/etc/shadow 直接改(不推荐)
怎么改已有账号密码有效期?
chage -M 密码最大有效期 用户名
例:将已有用户my密码最大有效期改为20天
强制用户下次登陆时修改密码:
chage -d 0 用户名
例:将chang用户强制下次登录修改密码:
注意:此次修改的密码不能太短,太简单否则更改不成功
对历史命令进行限制,限制历史命令的数量,也就是清空历史命令
history :查看历史记录
history -c :临时清除,重启后历史命令还在
永久修改历史记录:vim /etc/profile
找到HISTSIZE= 需要让其保存到条数(30-50条即可)
修改完成后需要source /etc/profile :刷新
设置登录超时时间:
主要是针对远程连接工具,主要目的:释放资源,防止堵塞
vim /etc/profile
在最后一行添加:TMOUT=60 (60s内不在终端操作远程工具直接退出)
注意要source /etc/profile 刷新立即生效
60s未操作------>自动退出
su 命令切换
su -root 完全切换
su root 不完全切换
限制用户进行切换:只能自己用不可以切换到其他用户
限制使用su命令的用户:
wheel组是一个特殊组,用于控制用户的访问权限,加入wheel组之后,可以和root管理员一样使用一些敏感命令
有一个限制条件:sudo 可以和管理员一样,执行root管理员命令,必须要加入wheel组中,有一个条件,wheel默认为空,需要手动添加,会进行限制,只能使用指定的一些命令
vim /etc/pam.d/su
看第六行 : auth required pam_wheel.so use_uid
第六行就是:普通用户之间切换su ,将会收到限制,除非加入wheel,否则,将不能进行切换。(将其取消注释)
加入wheel:gpasswd -a 用户名 wheel
例:将tiao用户加入wheel组,tiao用户切换rapper用户 ,rapper不在wheel组内无法切换至tiao用户
认证机制:su -用户名 ;su -root; 配置文件-------su模块是否启动--------用户uid在不在wheel-------不在-------不允许切换
PAM:身份认证的框架
提供一种标准的身份认证接口,管理员可以定制化配置各种认证方式。
可插拔:即配即用,即删即失效。
PAM由三个模块组成:
ls /etc/pam.d 查看pam配置文件
认证模块、授权模块、模块的参数和配置项
auth:用户身份认证
account:账户的有效性
passwd:用户修改密码时的机制校验
session :会话控制,控制最大打开的文件数,能开多少进程
required:一票否决,表示只有认证成功才能进行下一步,但是如果认证失败,结果也不会立即通知用户,而是等到所有的认证步骤全部走完,才会给用户回馈
requisite :一票否决,只要返回失败,立即终止,并反馈给用户
sufficient:一票通过,返回成功后,就不会执行跟他相同模块内的认证 ,其他模块返回失败,可以忽略。
optional:可选项,可有可无
使用sudo机制提升权限:
提升sudo命令的做一个限制:
sudoers :必须强制保存退出,或者强制退出
vim /etc/sudoers
将99,102行 注释:
在最后一行插入一个新内容。用户名 ALL =(root) /sbin/ifconfig (给这个用户使用ifconfig命令)
要想多加一些权限:(用,隔开)
例如:用户名 ALL =(root) /sbin/ifconfig ,/bin/passwd
例:tiao ALL =(root) /sbin/ifconfig ,/bin/passwd
sudoers退出必须强制 !
给tiao用户以超级管理员一样的sbin/ifconfig,/bin/passwd 的修改权限
sudo核心:普通用户可以使用管理员才可以使用的命令,但是这个权限一定要进行控制,不能全部放开,否则风险极大
假设将所有权限都给tiao用户:tiao ALL=(root) ALL,sudo 后与超级管理员权限将一一致,为了安全起见与误操作,可以限定他不能操作一些重要文件
永久改主机名:
hostnamectl set-hostname 需要修改的主机名
开关机安全控制:
在grup菜单处添加密码
grub2-setpassword
按下e
输入密码才可以进行操作修改。