系统安全及应用

基本安全措施:①将非登录用户的shell设为/sbin/nologin

命令chsh 交互式修改,后面直接输用户名修改登录状态。或者用vim 打开/etc/passwd进行修改

②锁定长期不使用的账号

passwd -l锁定账号 passwd -S查看账号锁定状态 passwd -u解锁

③删除无用的账号

userdel 【-r】用户名

加参数-r递归删除用户

④锁定账号文件/etc/passwd  /etc/shadow

锁定chattr +i /etc/passwd  /etc/shadow

解锁chattr -i /etc/passwd  /etc/shadow

查看lsattr  /etc/passwd  /etc/shadow

⑤密码安全控制,设置密码有效期

修改某个已存在用户的密码:chage  -M  天数  用户名或passwd  -x  天数  用户名

设置今后添加用户时的默认密码有效期

vim  编辑/etc/login.defs文件,修改PASS_MAX_DAY后面的数值

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

chage -d 0 用户名

历史命令查看history  

history  -c  清空历史命令

历史命令默认是一千条,可以在/etc/profile全局变量配置文件里修改HISTSIZE的数值。所有和变量相关的都放在这个文件里。也可以直接用命令export  HISTSIZE=数值    注意:export全局生效,仅当前用户环境下生效

切换用户命令su

su  用户名  切换用户,只是新起一个进程,和之前的进程没有关系,之前进程并没有消失,root切普户不用密码,普户切root需要root密码,这种切换方式一般不使用,不规范。

su  -  用户名   以普通用户的初始环境进行切换普通用户,这么切换,环境变量会重置成普通用户的环境变量。

su  -  root  -c  ls  /root意思是临时切换一次root账号的身份,执行后面的命令一次,将结果显示出来,“我”仍旧是普户,需输root密码

由此我们可借鉴得知,由普通用户启动身份的方法是进入到/etc/rc.local个人配置脚本中按照格式su  -  普通用户  -c  命令

命令sudo,不让你知道超户的密码,还能让你干超户才能干的活,前提是要在sudo的配置文件/etc/sudoers里进行授权。/etc/sudoers配置文件的安全级别非常高,超户都是只读权限,想去修改sudo的配置文件只能用命令visudo,如果用chmod将它的权限改了,那么整个sudo就不能用了。

总结:sudo申请提权的前提是visudo里要给普户授权了才能申请提权 。如果超户授权了就提权成功,每次申请提权都要输普户自己的密码。

sudo  -l 看当前用户有什么权限。按照98行的模板给普户yu授权。第一个ALL是所有ip地址,第二个ALL是所有主机名,一般我们可以不写,第三个ALL是所有命令。如果我们给普户yu授权了所有权限,一般来说root能用的权限yu也都能用。我们也可设置它只能在某个ip或网段登录,或者设定它只能用哪些命令和不能用哪些命令格式/sbin/* , ! /sbin/reboot , ! /sbin/.......先允许它/sbin/的所有都能用,再用逗号隔开,叹号取反后跟不让他使用的命令。先允许,再拒绝,这就是权限授权规则。在工作中,授权要最小化。

原文地址:https://www.cnblogs.com/wsnbba/p/9851791.html