一、账号安全
(1)系统账号清理
可以将不是登录用户的shell设为禁止登陆,如果有登陆需求可以进行解除禁止
usermod -s /bin/bash 用户名 //指定该用户允许登陆shell
usermod -s /sbin/nologin 用户名 //指定该用户禁止登陆shell
锁定长期无操作账号,如果有需求可以进行解锁
usermod -L 用户名 //锁定该用户
usermod -U 用户名 //解锁该用户
锁定账号文件,防止被操作修改文件内容
charrt +i 文件位置 //锁定文件
charrt -i 文件位置 //解锁文件
(2)密码安全
设置密码的有效时间,防止密码长时间使用导致被外部破解
chage -M 天数 用户 //设置该用户密码有效期
vi /etc/login.defs //可以配置新用户密码有效期
强制此用户在下次登陆时进行更改密码操作
chage -d 0 用户名 //强制下次登陆修改密码
二、命令权限
(1)切换用户
用户在有一定需求的时候可以进行切换一些有较高权限的用户
su 用户名 //切换用户
(2)PAM认证
为了防止一些用户进行无用功的用户切换导致文件数据受损进行设置一定权限认证
一般遵循的顺序
- Service(服务)→PAM(配置文件)→pam_*.so
文件位置
- PAM的配置文件位于/etc/pam.d
- 最后调用认证文件位于/lib/security
vi /etc/pam.d/su //进入su权限文件
auth sufficient pam_rootok.so
//第一行,意义是使root用户可以不需要密码进行切换用户,关闭只需要在前方加符号#
auth required pam_wheel.so use_uid
//第二行,意义是启用pam_wheel认证模块,启用后只有加入wheel组和root用户可以使用su命令,打开只需要删除前方符号#
查看某个程序是否支持PAM认证
ls /etc/pam.d | grep 命令 //查看命令是否支持
(3)用户提升权限
有些特殊岗位可能需要提升一部分权限,此命令可以单独给某个用户赋予某些权限
sudo 需要赋权的命令 //使用赋权的命令
vi /etc/sudoers //赋权文件位置,里面可以进行配置给某用户赋予某命令权限
用户 主机名列表 = 命令 //写入赋权命令格式
三、系统弱口令测验
(1)Joth the Ripper
一款密码分析工具,支持字典式的暴力破解
通过对shadow文件的口令分析,可以检测密码强度
安装方法:
主要程序文件为 john
cd /opt //进入目录/opt
tar zxf john-1.8.0.tar.gz //解压缩文件
yum install -y gcc gcc-c++ make //安装c语言和c++环境
cd /opt/john-1.8.0/src //切换到src子目录
make clean linux-x86-64 //进行安装
如图:
(2)检测弱口令账号
cp /etc/shadow /opt/shadow.txt //复制shadow.txt文件
cd /opt/john-1.8.0/run //进入john破解程序目录
./john /opt/shadow.txt //使用破解程序破解shadow.txt文件
./john --show /opt/shadow.txt //查看已破解出的账户列表
如图:
四、网络扫描
NMAP 是一个强大的端口扫描类安全评测工具,支持 ping 扫描、多端口检测等多种技术。
(1)安装nmap软件包
yum install -y nmap //安装nmap
如图:
(2)nmap命令常用选项和扫描类型
-O:激活操作探测;
-P0:值进行扫描,不ping主机;
-PT:是同TCP的ping;
-sV:探测服务版本信息;
-sP:ping扫描,仅发现目标主机是否存活;
-ps:发送同步(SYN)报文;
-PU:发送udp ping;
-PE:强制执行直接的ICMPping;
-PB:默认模式,可以使用ICMPping和TCPping;
-6:使用IPv6地址;
-v:得到更多选项信息;
-d:增加调试信息地输出;
-oN:以人们可阅读的格式输出;
-oX:以xml格式向指定文件输出信息;
-oM:以机器可阅读的格式输出;
-A:使用所有高级扫描选项;
--resume:继续上次执行完的扫描;
-P:指定要扫描的端口,可以是一个单独的端口,用逗号隔开多个端口,使用“-”表示端口范围;
-e:在多网络接口Linux系统中,指定扫描使用的网络接口;
-g:将指定的端口作为源端口进行扫描;
--ttl:指定发送的扫描报文的生存期;
--packet-trace:显示扫描过程中收发报文统计;
--scanflags:设置在扫描报文中的TCP标志。
(3)natstat命令常用选项
-a:显示主机中所有活动的网络连接信息。
-n:以数字的形式显示相关的主机地址、端口等信息。
-t:查看 TCP相关的信息。
-u:显示 UDP协议相关的信息。
-p:显示与网络连接相关联的进程号、进程名称信息。
-r:显示路由表信息。
-l:显示处于监听状态的网络连接及端口信息。
查看正在运行的使用TCP/UDP协议的网络状态信息
netstat -natp 查看正在运行的使用TCP协议的网络状态信息
netstat -naup 查看正在运行的使用UDP协议的网络状态信息
如图: