目录
一,账号安全控制
账号安全基本措施
系统账号清理
将非登陆用户的Shell设为/sbin/nologin
usermod -s /sbin/nologin
锁定长期不使用的账号
usermod -L 用户名 passwd -l 用户名 passwd -S 用户名
锁定 锁定 显示密码信息
usermod -U passwd -u
解锁 解锁
删除无用的账号(userdel -r) -r是删除家目录
锁定账号文件账号文件passwd, shadow
用户 信息 密码信息
chattr +i/etc/passwd /etc/shadow 锁定文件信息
lsattr /stc/passwd /etc/shadow 查看文件信息
chattr -i /etc/passwd /etc/shadow 解锁文件信息
二,密码安全控制
设置密码有效期
要求用户下次登陆时修改密码
[root@localhost~]# vim /etc/login.defs
.....
PASS_MAX_DAYS 30
[root@localhost~]# chage -M 30 lisi
对于新建用户用此种方法
对于一键创立的用户:
如果需要每次登陆更改密码可以chage -b 0 账户
命令历史限制
减少记录的命令条数
history -c 可以临时清除记录
注销时自动清空命令历史
终端自动注销
闲置600秒后自动注销
su命令切换用户
用途及方法
用途:Substitute User,切换用户
格式 su -目标用户
系统引导和登陆控制
密码验证
root到任意用户,不用验证码
普通用户到其它用户,验证目标用户的密码
带-的时改变当前用户家目录,shell环境变成自己
限制使用su命令的用户
将允许使用su命令的用户加入wheel组
启动pam_wheel认证模块
查看看su操作记录
安全日志文件: cat /var/log/secure
三、Linux中的PAM安全认证
(一)、su命令的安全隐患
1、默认情况下,任何用户都允许使用su命令,有机会反复尝试其他用户(如root)的登录密码,带来安全风险。
2、为了加强su命令的使用控制,可借助于PAM认证模块,只允许极个别用户使用su命令进行切换。
(二)、PAM(Pluggable Authentication Modules)可插拔式认证模块
1、是一种高效而且灵活便利的用户级别的认证方式
2、也是当前Linux服务器普遍使用的认证方式
详细解释:Linux-PAM,是linux可插拔认证模块,是一套可定制、可动态加载的共享库,使本地系统管理员可以随意选择程序的认证方式。PAM使用 /etc/pam.d/ 下的配置文件来管理对程序的认证方式。应用程序调用相应的PAM配置文件,从而调用本地的认证模块,模块放置在 /lib64/security 下,以加载动态库的形式进行认证。比如使用su命令时,系统会提示输入root用户的密码,这就是su命令通过调用PAM模块实现的。
(三)、PAM认证原理
1、一般遵循的顺序 Service (服务) →PAM (配置文件) →pam_*.so(认证模块) 2、首先要确定哪一项服务,然后加载相应的PAM的配置文件(位于/etc/pam.d下),最后调用认证文件(位于/lib64/security下)进行安全认证 3、用户访问服务器时,服务器的某一个服务程序把用户的请求发送到PAM模块进行认证 4、不同的应用程序所对应的PAM模块是不同的 5、PAM的配置文件中的每一行都是一个独立的认证过程,它们按从上往下的顺序依次由PAM模块调用
(四),PAM认证的构成
1、查看某个程序是否支持PAM认证,可以用 Is 命令 示例:查看su是否支持PAM模块认证
ls /etc/pam.d | grep su
2、查看su的PAM配置文件:cat /etc/pam.d/su 每一行都是一个独立的认证过程 每一行可以区分为三个字段
认证类型
控制类型
РAM模块及其参数
(六)、PAM安全认证流程
1、控制类型也称做Control Flags,用于PAM验证类型的返回结果 1)、required 验证失败时仍然继续,但返回Fail 2)、requisite验证失败则立即结束整个验证过程,返回Fai 3)、sufficient验证成功则立即返回,不再继续,否则忽略结果并继续 4)、optional 不用于验证,只显示信息
(通常用于session类型)
四,使用sudo机制提升权限
1.sudo命令的用途及用法
用途:以其他用户身份(如root)执行授权的命令
用法:
sudo 授权命令
配置sudo授权
1、使用 visudo 或者 vim /etc/sudoers ( vim /etc/sudoers此文件的默认权限为440,保存退出时必须执行":wq!"命令来强制操作) 命令进行提权
给lgy用户配置sudo授权
五,开关机安全控制
调整BIOS引导设置
将第一引导设备设为当前系统所在硬盘
禁止从其他设备(光盘,u盘,网络)引导系统
将安全级别设为setup,并设置管理员密码
GRUB限制
使用grub2-mkpasswd-pbkdf2生成密钥
修改/etc/grub.d/00_header文件中,添加密码记录
生成新的grub.cfg配置文件
限制更改GRUB引导参数
方法一:
直接添加密码:grub2-setpassword 设置grub密码
方法二:
通常情况下在系统开机进入GRUB菜单时使用
可以为GRUB菜单设置一个密码,只有提供正确的密码才被允许修改引导参数。
grub2-mkpasswd-pbkdf2 #根据提示设置GRUB菜单的密码
PBKDF2 hash of your password is grub . pbkd..... #省略部分内容为经过加密生成的密码字符串
cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak
cp /etc/grub.d/00_header /etc/grub.d/00_header.bak
vim /etc/grub.d/00_header
cat << EOF
set superusers="root" #设置用户名为root
password_pbkdf2 root grub.pbkd2..... #设置密码,省略部分内容为经过加密生成的密码字符串
EOF
grub2-mkconfig -o /boot/grub2/grub.cfg #生成新的grub.cfg 文件
重启后进入GRUB菜单时,按e键将需要输入账号密码才能修改引导参数。
六,弱口令检测
七,端口扫描
需要安装软件yum install -y nmap可以下载。
八,总结
学习了如何自动注销终端,引导文件的密码设置。生产中需要用到,要求掌握。