Linux系统安全及应用
1.账号安全基本措施
系统账号清理
将非登录用户的shell设为/sbin/nologin设置为无法登录
(shell——/sbin/nologin比较特殊,所谓“无法登陆”仅是这个用户无法使用bash或其他shell来登陆系统而已,并不是说这个账号就无法使用系统资源。
举例来说,各个系统账号中,打印作业有lp这个账号管理,www服务器有apache这个账号管理,他们都可以进行系统程序的工作,但就是无法登陆主机而已)
锁定长期不使用的账号
删除无用的账号
锁定账号文件passwd , shadow
2.密码安全控制
chage [选项] 用户名(适合用于已有用户修改)
-m:密码可更改的最小天数。为零时代表任何时候都可以更改密码。
-M:密码保持有效的最大天数。
-w:用户密码到期前,提前收到警告信息的天数。
-E:帐号到期的日期。过了这天,此帐号将不可用。
-d:上一次更改的日期
chage -d 0 zhangsan 强制张三下一次登录一定修改密码(密码符合复杂性要求)
-i:停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。
-l:例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。
如 使用chage命令进行修改用户thh密码有效期为30天:
进入配置文件修改(对新建用户)
如要求新建用户wangwu,他的密码有效期为20天
vim /etc/login.defs
20左边的0表示(下一次登录一定修改密码且密码符合复杂性要求)
3.命令历史
上面更改永久有效
也可以直接 echo $HISTSIZE=10
source /etc/profile
重启更改失效
临时清除历史命令
history -c
退出清空
vim .bash_logout
~/.bash_logout
echo " " >~/.bash_history
开机后清除
vim .bashrc
echo " " >~/.bash_history
4.设置超时时间
vi /etc/profile
export TMOUT=60
source /etc/profile
5.切换用户
su命令( switch user),可切换用户身份,
su 用户 不完全切换(不会读取目标用户的配置文件,不改变当前工作目录)
su - 用户 完全切换
密码验证
从root切换到任意用户不需要验证密码
普通用户切换到其他用户需要验证目标用户的密码
限制用户使用su切换用户
wheel组
是一个很特殊的用户组,用来控制能否通过su命令来切换到超级用户(root用户)
gpasswd -a wangwu wheel
将用户wangwu 加入 wheel组 root
vim /etc/pam.d/su
查看su操作记录
cat /var/log/secure
文件位置:/var/log/secure
sudo命令作用以及用法
作用:指定用户以超级用户的身份来执行部分命令
一般用户不需要知道超级用户的密码即可获得权限
在一般用户需要取得特殊权限时,在命令前加上“sudo”,会询问该用户自己的密码(以确认终端机前的是该用户本人),回答后以超级用户的权限运行。之后一段时间内(默认为5分钟,可在/etc/sudoers自定义),使用sudo不需要再次输入密码
用法:sudo 授权命令
在配置文件中添加授权, vim /etc/sudoers
通配符“ * ”号任意值和“ !”号进行取反操作
操作:
(1)
(2)反选 “!”
(3)
也可以在/etc/sudoers配置文件里使用alias设置别名进行批量给普通用户提升执行权限
#
Host_Alias MYHOSTS = LLL,localhost
(给登入主机定义)
User_Alias MYUSERS = zhangsan,wangwu,lisi
(给用户定义)
Cmnd_Alias MYCMNDS = /sbin/*,!/sbin/reboot,!/sbin/poweroff,!/sbin/init,!/usr/bin/rm
(定义别名可使用的命令)
#
MYUSERS MYHOSTS=NOPASSWD:MYCMNDS
允许
(4)子目录
vim /etc/sudoers.d/test
在配置文件下创建子目录将用户权限写入子目录
扩展
Joth the Ripper,简称为 JR
一款密码分析工具,支持字典式的暴力破解
通过对shadow文件的口令分析,可以检测密码强度
官方网站:John the Ripper password cracker
暴力破解密码
压缩包拖入
只能破解密码文件中已有的密码password.lst