系统安全与用户

it2024-10-26  38

文章目录

一、账号安全控制1.1 账号清理1.2 锁定账号文件chattr1.3 密码安全控制1.4 命令历史限制 二、su与sudo2.1 su命令2.1.1 su命令的安全隐患 2.2 sudo命令 三、安全控制3.1 PAM可插拔式认证模块3.1.1 PAM认证原理3.1.2 PAM认证的构成3.1.3 PAM安全认证类型 3.2 开关机安全控制3.2.1 调整BIOS引导设置3.2.2 GRUB限制3.2.3 命令过程 3.3 终端登录安全控制3.4 系统弱口令监测3.4.1 John简单密码暴力破解命令 3.5 网络端口扫描NMAP3.5.1 NMAP扫描3.5.2 常用的扫描类型

一、账号安全控制

1.1 账号清理

账号清理手段

将非登录的用户的shell设为 /sbin/nologin锁定长期不使用的账户删除无用的账号锁定账号文件passwd,shadow

账号清理的具体命令

useradd命令

useradd -s /sbin/nologin 用户名 ## 创建账户的时候设置为不可登录

usermod命令

usermod -L 用户名 ## 锁定已创建好的账户 usermod -U 用户名 ## 与 -L对应解锁锁定的账户

passwd命令

passwd -l 用户名 ## 锁定已创建的账户 passwd -u 用户名 ## 对 -l对应解锁锁定的账户

userdel命令

userdel [-r] 用户 ## 删除用户,加 -r删除用户时宿主目录也会被删除

1.2 锁定账号文件chattr

chattr的命令

[root@server1 ~]# chattr +i /[目录] ## 对该目录进行保护,不能对该目录进行删除、改名、设定链接关系,同时不能写入或新增内容 [root@server1 ~]# chattr -i /[目录] ## 解锁该目录的锁定,可正常对该目录进行操作 [root@server1 ~]# lsattr 目录 ## 与chattr搭配使用,查看chatte操作后的状态

chattr命令的用法

选项作用+在原有参数设定的基础上,追加参数-在原有参数设定基础上,移除参数=更新为指定参数设定

chattr的常用选项

选项作用i设定文件不能被删除、改名、设定链接关系,同时不能写入或新增内容a设定改参数后,只能向该文件中添加数据,而不能移除。多用于服务器日志文件安全。只有root才能设置这个属性

chattr的注意事项

chattr命令不能保护 /、/dev、/tmp、/var 目录

1.3 密码安全控制

设置密码有效期 要求用户下次登录时修改密码

[root@server1 ~]# chage -M 30 用户名 ## 设置该用户密码可用时间30天 [root@server1 ~]# chage -d 0 用户名 ## 设置该用户下次登录时修改密码

1.4 命令历史限制

减少记录的命令条数

[root@server1 ~]# vi /etc/profile ## 进入该文件 HISTSIZE = 100 ## 将命令条数限制为100,默认为1000

注销时自动清空命令历史

[root@server1 ~]# vi .bash_logout ## 进入注销设置命令 ~/.bash_logout ## 如果前面有#的需要将#去掉 history -c ## 清空历史 clear ## 清屏 echo ""> /root/.bash_history ## 将.bash_history目录清空 [root@server1 ~]#source .bash_history ## 不关机的情况下执行上述命令

二、su与sudo

2.1 su命令

作用

切换用户

格式

su 用户名称

密码验证

root用户切换到其他用户时不需要验证密码普通用户切换到其他用户时需要验证密码

除root用户外允许使用su命令的条件

默认注释掉执行非wheel组用户无法使用su命令

2.1.1 su命令的安全隐患

默认情况下,任何用户都允许使用su命令,有机会反复尝试其他用户(如root)的登录密码,会带来安全隐患。 为了加强su命令的使用控制,可借助于PAM认证模块,只允许极个别用户使用su命令进行切换。

2.2 sudo命令

配置sudo授权 在visudo 或者vi /etc/sudoers文件中修改记录格式 用户 主机名列表=命令程序列表

三、安全控制

3.1 PAM可插拔式认证模块

是一种高级且灵活便利的用户级别的认证方式也是当前linux服务器普遍使用的认证方式

3.1.1 PAM认证原理

service(服务)→PAM(配置文件)→PAM_*.so首先要确定哪一项服务,然后加载相应的PAM的配置文件(位于 /etc/pam.d下),最后调用认证文件(位于 /lib/security下)进行安全认证用于访问服务器时,服务器的某一个服务器程序把用户的请求发送到PAM模块进行认证不同的应用程序所对应的PAM模块是不同的

3.1.2 PAM认证的构成

查看某个程序是否支持PAM认证,可用ls命令

ls /etc/pam.d | grep su

查看su的PAM的配置文件

cat /etc/pam.d/su

每一行都是一个独立的认证过程,每行可以区分为3个字段 认证类型 控制类型 PAM模块及基参数

3.1.3 PAM安全认证类型

控制类型也称作Control Flags,用于PAM验证类型的返回结果

required验证失败时仍然继续,但返回Fail;requisite验证失败则立即结束整个验证过程,返回Fail;sufficient验证成功则立即返回,不在继续,否则忽略结果并继续;optional不用于验证,为显示信息(通常用于session类型)

3.2 开关机安全控制

3.2.1 调整BIOS引导设置

将第一引导设备设为当前系统所在硬盘禁止其它设备(光盘、U盘、网络)引导系统将安全级别setup并设置管理员密码

3.2.2 GRUB限制

使用grub2-mkpasswd-pbkdf2生成密钥修改 /etc/grub.d/00_header 文件中添加密码记录生成新的grub.cfg配置文件

3.2.3 命令过程

grub2-mkpasswd-pbkdf2 ## 生成密钥 复制is后的密码 cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak cp /etc/grub.d/00_header /etc/grub.d/00_header.bak vi /etc/grub.d/00_header ## 进入文件中 cat << EOF set superusers="root" password_pbkdf2 root 粘贴上面已复制的密码 EOF grub2-mkconfig -o /boot/grub2/grub.cfg ## 使密钥生效

3.3 终端登录安全控制

限制root只在安全终端登录

安全终端配置: /etc/securetty

禁止普通用户登录

在root目录下新建 /etc/nologin文件 删除nologin文件或重启即恢复正常

3.4 系统弱口令监测

Joth the Ripper,简称JR。是一款密码分析工具,支持字典式的暴力破解通过对shadow文件的口令分析,可以检测密码强度官方网站:http://www/openwall.com/john/

3.4.1 John简单密码暴力破解命令

方式一:

导入john.tar.gz压缩包 tar.zxvf john.tar.gz ## 解压john压缩包 cd john-1.8.0 cd src make clean linux-x86-64 ## 执行编译文件 ls .. /run/john ## 查看上一级目录是否生成john程序 cp /etc/shadow root/shadow.txt ## 复制密码文件 .john /root/shadow.txt ## 破译账户弱密码 .john --show /root/shadow.txt ## 查看已破译出的账户列表

方式二

:> john.pot ./john --wordlist=./password.lst /root/shadow.txt ./john --show /root/shadow.txt

3.5 网络端口扫描NMAP

一款强大的网络扫描,安全检测工具官网:http://nmap.org/CentOS7.3光盘中的安装包 nmap-6.40-7.e17.x86_64.rpm

3.5.1 NMAP扫描

nmap [扫描类型] [选项] <扫描目标>

3.5.2 常用的扫描类型

选项作用-sTtcp扫描连接-sUudp扫描连接-sPicmp扫描-sStcp syn扫描-sFtcp fin扫描-P指定端口扫描
最新回复(0)