■ 系统账号清理
[root@localhost ~]# chattr +i /etc/passwd /etc/shadow
[root@localhost ~]# lsattr /etc/passwd /etc/shadow
----i----------- /etc/passwd
----i----------- /etc/shadow
1、vi /etc/passwd进入编译
2、把想锁定的账户后面改成/sbin/nologin,wq保存退出
3、这样就不能登录了
1、passwd -l tang 锁定tang用户
2、passwd -u tang 解锁tang用户
1、usermod -L tang 锁定tang用户
2、usermod -U tang 解锁tang用户
usermod命令锁定和解锁用户的的时候没有交互信息(就是不会有提示)
1、用chattr +i 命令锁定/etc/passwd 和 /etc/shadow文件
2、进入文件验证一下
3、随便输入一下,wq保存一下发现无法保存,只能读不能写
1、用chattr -i 命令解锁/etc/passwd 和 /etc/shadow文件
2、随便输入,发现可以保存退出了
■ 密码安全控制
[root@localhost ~]# vim /etc/login.defs ###适用于新建用户
......
PASS_MAX_DAYS 30 ###适用于已有用户
[root@localhost ~]#chage -d 0zhangsan ###强制在下次登录时更改密码
1、进入vi编辑
2、找到PASS_MAX_DAYS 99999改成30 就是30天
3、新建一个账号zk1
4、进入shadow里看一下
5、zk1账户密码有效期变成了30天
1、把zk1账户密码有效期设置成40天
2、进shadow查看一下
3、zk1账户变成了40天
■ 命令历史限制
[root@localhost lisi]# vim /etc/profile '进入/etc/profile'
HISTSIZE=200
[root@localhost /]# vim ~/.bash_logout
history -c
clear
[root@localhost /]# vim ~/.bash_profile
.......
export TMOUT=600
1、编辑全局变量文件
2、查询 一下HISTSIZE 在哪里,然后把后面的数值改成100,这样就只记录100条
3、刷新一下文件,让生效
4、查看一下记录命令
5、一百多条,我们重启一下看看
6、用history命令在查看一下,就只保存一百条,多出来的不保存
1、vi编辑
2、输入此命令,设置成注销时自动清空历史命令,wq保存退出
1、编辑全局变量文件
2、设置600秒后注销,wq保存退出
3、刷新文件生效一下
1、编辑全局变量文件
2、设置600秒后注销,wq保存退出
3、刷新文件生效一下
■ 用途及方法
su - 目标用户
■ 密码验证
[root@localhost /]# su - root
[root@localhost ~]# whoami
root
■ 限制使用su命令的用户
■ 查看su操作记录
[root@localhost ~]# gpasswd -a root wheel
正在将用户“root”加入到“wheel”组中
1、将zk1用户加到wheel组
2、进去看一下是否添加成功
3、已成功
1、vi编辑
2、把这两条命令前面#字符去掉启动
3、vi编辑
4、然后设置成不在组能不能运行SU命令登陆
5、验证一下,用不在组里的su命令切换一下,发现输入正确密码也无法登陆(没有权限)
■ su命令的安全隐患
■ 一般遵循的顺序
■ 首先要确定哪一项服务,然后加载相应的PAM的配置文件(位于/etc/pam.d下),最后调用认证文件(位于/lib/security下)进行安全认证
■ 用户访问服务器的时候,服务器的某一个服务程序把用户的请求发送到PAM模块进行认证
■ 不同的应用程序所对应的PAM模块也是不同的
■ 查看某个程序是否支持PAM认证,可以用ls命令
ls /etc/pam.d | grep su
■ 查看su的PAM配置文件:cat /etc/pam.d/su
■ 控制类型也可以乘坐Control Flags,用于PAM验证类型的返回结果
1、required验证失败时仍然继续,但返回Fail
2、requisite验证失败则立即结束整个验证过程,返回fail(最重要的一步)
3、sufficient验证成功则立即返回,不再继续,否则忽略结果并继续
4、optional不用于验证,只显示信息(通常用session类型)
■ su命令的缺点
■ sudo命令的用途及用法
sudo 授权命令
■ 配置sudo授权
用户 主机名列表 = 命令程序列表
1、用root用户 进入vi /etc/sudoers添加提权用户
2、zk用户在zk主机下执行/sbin下所有命令,出了reboot
3、去zk账户里创建一个网卡,输入密码
4、用ifconfig命令查看一下是否创建成功了
■ 查看sudo操作记录
[root@localhost ~]# visudo
Defaults logfile ="、var/log/sudo"
■ 查询授权的sudo操作
■ 调整BIOS引导设置
■ GRUB限制
1、设置BIOS密码
2、重启f2进入BIOS ,就需要刚刚设置的密码进入了
1、设置grub密码
2、开机在这个界面按e
3、输入账号、密码
4、进入grub菜单
■ 限制root只在安全终端登录
[root@localhost ~]# vi /etc/securetty
......
#tty5 ###禁止root用户从终端tty5登录
#tty6 ###禁止root用户从终端tty6登录
■ 禁止普通用户登录
[root@localhost ~]# touch /etc/nologin #禁止普通用户登录
[root@localhost ~]#rm -rf /etc/nologin #取消上述登录限制
1、在字符界面先用who看一下在哪个终端
2、进入编辑
3、我们把tty2终端注释掉,或者删掉
4、Carl+alt+f2切到tty2终端,输入账号密码看看能不能登录,显示不能登录,成功!
1、创建/etc/nologin文件(如果该文件存在,那么Linux上的所有用户(除了root以外)都无法登录)
2、编辑
3、里面输入什么普通用户登录的时候就显示什么,但登录不上
4、用zk1账户登录,就会登录不上,并显示刚刚输入的提示内容
■ Joth the Ripper,简述为JR
■ 安装JR工具
make clean 系统类型
■ 检测弱口令账号
■ 密码文件的暴力破解
1、先用Xmanager Enterprise软件的xftp 把JR包上传上去
2、cd 进入opt看一下压缩包是否在
3、解压包
4、解压完后 ,ll 查看一下
5、进入解压的目录看一下
6、进入 src子目录 ,ls查看一下
7、编译一下linux-x86-64
8、退到上一层,进入run目录,ls查看一下,在进入/目录
9、复制shadow文件到root下面的shadow.txt里
10、进入root目录,查看一下有没有复制过去
11、创建一个字典,里面写入密码
12、破解密码
13、ll查看一下,破解的密码放在john.pot里面
14、编辑john.opt ,里面就是刚刚破解的密码
15、注意! 如果在破解刚刚的账号,会提示已经破解了 不能在破解
1、编辑 john.opt
2、直接按 100dd 键清除里面所有东西,wq保存退出
3、输入穷举破解,等待就好!!!
4、已经破解出来
5、用此条命令就能直接看到刚刚破解的账号密码
■ NMAP
■ NMAP的扫描 nmap [扫描类型] [选线] <扫描目标...>
■ 常用的扫描类型
■ 示例1
■ 示例2
■ 示例3
1、虚拟机要连接
2、挂载一下,并安装一下nmap扫描工具
3、查看本机开了多少端口
4、扫描本机开的udp端口
5、查看20.0.0.0/24字段的ftp服务(-p后面21是ftp端口)
6、查看20.0.0.0/24段的存活哪些主机(能ping通)
7、查看20.0.0.0-200主机是否开启文件共享