系统账号清理
- 降非登录用户的shell设为/sbin/nologin
- 锁定长期不使用的账号
- 删除无用的账号
- 锁定账号文件passwd、shadow
+i加锁 -i解锁
chattr +i /etc/paswwd /etc/shadow 锁定账号
lsattr /etc/passwd /etc/shadow 查看状态
chattr -i /etc/passwd /etc/shadow 解锁账号
密码安全控制
- 设置密码有效期
- 要求用户下次登陆时修改密码
vim /etc/login.defs 使用于新建用户
chage -M 30 lisi 已见用户
chage -d 0 lisi 强制下次登陆更改密码
vim /etc/shadow 查看账户密码
命令历史限制
- 减少记录的命令条数
- 注销时自动清空命令历史
(历史命令最多记录1000条)
删除历史记录
history -c
vim /etc/profile 进入
vim /etc/profile 最后插入命令 export TMOUT=60
执行:source /etc/profile
限制使用su命令的用户
- 将允许使用su命令的用户加入wheel组
- 启动pam_wheel认证模块
查看su操作记录
安全日志文件位置: /var/log/secure
linux中的PAM安全认证
su命令的安全隐患
- 默认情况下,任何用户都允许手机用su命令,从而有机会反复尝试其他用户的登陆密码
,带来安全风险 - 为了加强su命令的使用控制,可以借助PAM认证模块,只允许极个别用户使用su命令进行切换
PAM可插拔式认证模块,他是一种高效而且灵活便利的用户级别的认证方式,他也是当前linux服务器普遍使用的认证方式
PAM认证原理
- pam认证一般遵循的顺序—》PAM—》pam_*.so
- PAM认证首先要确认哪一项服务,然后相应的PAM的配置文件(位于/etc/pam.d),最后调用认证文件(位于/lib/security下)进行安全认证
- 用户访问服务区的时候,服务器的某一个服务程序把用户的请求发送到PAM模块进行认证
- 不同的应用程序说对应的PAM模块也是不同的
PAM认证构成流程
控制类型也可以称作ControlFlage,用于PAM验证类型的返回结果
- required验证失败时仍然继续,但返回Fail
- requisite验证失败则立即结束整个验证过程,返回Fail
- sufficient验证成功则立即返回,不再继续,否则忽略结果并继续
- optionalI不用于验证,只显示信息(通常用于sassion类型)
使用sudo机制提升权限
sudo命令的用途及用法
- 用途:以其他用户身份执行授权的命令
- 用法:sudo授权命令
进入 visudo
随便一行输入 lisi loclhost=/sbin/ifconfig
切换至lisi用户 sudo ifconfig ens33 192.168.10.10
系统弱口令检查
一款密码分析工具,支持字典式的暴力破解
通过对shadow文件的口令分析,可以检测密码强度
网络端口扫描NMAP
一款强大的网络扫描、安装检测工具
NMAP的扫描语法
选项
-sS:TCP SYN扫描
-sT:TCP连接扫描
-sF:TCP FIN扫描
-sU:UDP扫描
-sP:ICMP扫描
-p0:跳过ping检测
扫描常用的TCP端口
安装nmap:yum install nmap