Linux系统安全管理
1.系统账号清理
(1.)usermod -s
(2.)chsh 命令,交互式修改
(3.)chsh -s
(4.)vi /etc/passwd 进行修改
2.锁定账号
(1.)passwd -l :在密文前加两个“!” ,解锁:passwd -u ,查看:passwd -s
(2.)usermod -L:在密文前加一个“!”,解锁:usermod -U(需要进行两次操作)
(3.)vi /etc/shadow 进行修改
3.删除无用的用户
userdel -r 用户名
4.锁定账号文件 /etc/passwd 、/etc/shadow(锁定之后即使时管理员也不能修改内容)
加“i”锁:chattr +i /etc/passwd /etc/shadow
解除“i”锁:chattr -i /etc/passwd /etc/shadow
查看锁定情况:lsattr /etc/passwd /etc/shadow
5.设置密码有效期
(1.)chage -M 天数 用户名 (适用于以存在的用户密码)
(2.)passwd -x 天数 用户名
(3.)vim /etc/login.defs (适用于新建用户)
(4.)chage -d 0 用户名 (指定该用户登录时需更改密码)
6.历史命令调度
history 调出历史命令后 “!”加名利序列号可执行该命令
ctrl +R :查看历史命令
7.减少历史命令默认值
(1.)vim /etc/profile 进入编辑器后 找到 HISTORYSIZE 更改数值
保存退出后重新加载:soure /etc/profile
(2.)直接输入命令 export HISTORYSIZE=n(数值)进行修改
8.清空历史命令
(1.)vim .bash_logout 进入编辑器后
添加 history -c 保存退出即可
(2.)dd /dev/zero > .bash_history
将zero文件的空内容覆盖掉.bash_history文件内容,清空历史命令
9.设置自动注销
(1.)vim /etc/profile 进入编辑器后 将TMOUT数值修改成注销时间
TMOUT=600:终端将会在600秒后自动注销
(2.)直接输入 export TMOUT=600命令进行设置
输入 unset TMOUT 可取消变量
10.切换用户(易泄露root密码,造成不可估量的损失)
su - 目标用户=su --login 目标用户=su -l 目标用户
表示切换用户后进入目标用户的登录shell环境
su -root=su --login root=su -l root
普通用户切换到root用户(需要输入root密码)
11.提升用户执行权限
sudo命令:以root身份执行授权的命令
格式:sudo 授权命令
配置sudo授权
(1.)vim /etc/sudoers 进入编辑器 添加配置文件
格式:用户 主机名列表=命令程序列表(命令前加“!“表示除了此条命令)
(2.)配置文件 /etc/sndoers 中添加授权
格式:user MACHINE(主机名)=COMMANDS(可执行权限命令,多个命令用逗号隔开) %组名
12.查询授权操作
sudo -l
13.PAM认证
常见的四种认证类型
auth :认证管理 (接收用户名和密码,仅为进对该用户的密码进行认证)
account :账户管理 (检查账户是否被允许登录系统等各种权限)
password :密码管理 (修改用户的密码)
session :会话管理 (提供会话的记账和管理)
使用PAM认证模块,限制某个命令或服务的使用权限
(1.)vi /etc/pam.d/跟命令 (例:su命令、touch等命令) 启用pam_wheel模块
(2.)将可以使用该命令的授权用户添加到该组中
gpasswd -M 用户(例:tom,jerry)wheel
禁止普通用户登录:
touch /etc/nologin文件 ,删除该文件可恢复用户登录
14.开关机安全机制
禁用重启快捷键ctrl+alt+del
(1.)vi /etc/init/control-alt-delete.conf 进入编辑器后
将 #start on control-alt-delete
#exec /sbin/shutdown -r now “control-alt-delete pressed”
项前的#(注释)按x键删掉
(2.)输入命令 systemctl mask ctrl-alt-delete.target 禁用此项
再输入 systemctl dammon-reload 重新加载配置
15.grub菜单设置密码
输入命令:grub2-mkpasswd-pokdf2
reenter passwd :输入密码
进行备份: cp /boot/grub2/grub.cfg{,.bak}
cp /etc/grub.d/00_header{,.bak}
编辑00_header文件:vim /etc/grub.d/00_header
再编辑器末行插入:
cat <<EOF
set superusers=“root”
password-pbkdf2 root 加密后的密码密文
EOF
保存退出
重新生成grub.cfg 文件
grub2-mkconfig -o /boot/grub2/grub.cfg
sync 进行数据同步
16.弱口令检测 Joth the Ripper 软件工具
通过对shadow文件的口令分析,检测密码
官网:http://www.openwall.com/john/
(1.)解压该压缩包
tar -xf john-1.8.0.tar.xz
(2.)cd john-1.8.0/src
(3.)安装软件工具(前提是gcc gcc-c++ 已安装以及yum仓库已建好)
make clean linux-x86-64
(4.)复制密码文件
cp /etc/shadow ./shadow.txt
(5.)执行工具
./john shadow.txt
(6.)分析密码
./john --show shadow.txt
字典破解,可将内容添加到字典
vi password.lis
清空破解记录:
:>john.pot 命令
17.端口检测 NMAP 工具
格式:nmap 扫描类型 选项 扫描目标
扫描类型:-sT TCP链接扫描全开
-sU UDP扫描
-sP ICMP扫描
-sV 扫描服务版本信息(检查是否存活)
选项:-n 禁止DNS反向解析
-p 指定端口号