12.WEB渗透测试-Linux系统管理、安全加固(下)

小明 2025-05-04 06:32:27 9

免责声���:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!

内容参考于: 易锦网校会员专享课

上一个内容:11.WEB渗透测试-Linux系统管理、安全加固(上)-CSDN博客

Linux任务调度

系统任务调度:系统周期性的要执行的任务,写数据到硬盘,日志清理等等

定时任务:/etc/crontab

 

定时任务图里的内容说明-不带#的:

1.首先是 #(井号)后面的内容表示注释,注释是用来描述一个东西的,系统不会执行,注释是为了给人看,让其它的人可以根据你写的注释看明白你写的代码或者配置等信息

2.SHELL 系统要使用哪个shell(终端窗口),SHELL=/bin/bash就表示系统使用/bin/bash这个shell

3.PATH 指定里系统执行命令的路径,PATH=/sbin:/bin:/usr/sbin:/usr/bin表示系统执行命令的路径是 /sbin:/bin:/usr/sbin:/usr/bin

4.MAILTO 指定了定时任务执行信息将通过电子邮件发送给什么用户,MAILTO=root就表示发送给root用户

定时任务图里的内容说明-带#的:

首先看user-name command to be executed这一行,如下图

第一个*表示分钟,范围0-59

第二个*表示小时,范围 0-23

第三个*表示日期,范围 1-31

第四个*表示月份,范围 1-12

第五个*表示星期几,范围 0-7

第六个位置表示要执行的命令或者脚本,也就是user-name


每一个时间字段,还可以通过特殊符号来进行设置

星号表示代表任何时间

逗号表示不连续的时间,比如0 8,12,16 7,8,9 * *

-(中杆)表示连续的时间,比如0 5 * * 1-6

/ (正斜线)表示每隔多久执行一次,比如* /5 * * *

例子1:在上午8点到11点的第5分和第15分执行 5,15 8-11 * * *

例子2:每月的1,10,22日的4:45分 45 4 1,10,22 * *

Linux相关日志:

日志文件说 明
/var/log/cron记录与系统定时任务相关的曰志
/var/log/cups/记录打印信息的曰志
/var/log/dmesg记录了系统在开机时内核自检的信总。也可以使用dmesg命令直接查看内核自检信息
/var/log/btmp记录错误登陆的日志。这个文件是二进制文件,不能直接用Vi查看,而要使用lastb命令查看。命令如下: [root@localhost log]#lastb root tty1 Tue Jun 4 22:38 - 22:38 (00:00) #有人在6月4 日 22:38便用root用户在本地终端 1 登陆错误
/var/log/lasllog记录系统中所有用户最后一次的登录时间的曰志。这个文件也是二进制文件.不能直接用Vi 查看。而要使用lastlog命令查看
/var/Iog/mailog记录邮件信息的曰志

linux安全加固:

1、口令锁定策略

设置口令认证失败后的锁定策略 为了保障用户系统的安全,建议用户设置口令出错次数的阈值,以及由于口令尝试被锁定用户的自动解锁时间。用户锁定期间,任何输入被判定为无效,锁定时间不因用户的再次输入而重新计时;解锁后,用户的错误输入记录被清空。通过上述设置可以有效防范口令被暴力破解,增强系统的安全性。


修改方法:例如设置口令最大的出错次数 5 次,系统锁定后的解锁时间为 180 秒 在配置文件/etc/pam.d/system-auth 中添加

使用的命令行:

vim /etc/pam.d/system-auth

auth required pam_tally2.so onerr=fail deny=5 unlock_time=600 root_unlock_time=600

解锁用户:

pam_tally2 -r -u 用户名

2.设置密码复杂度,编辑/etc/security/pwquality.conf 文件,修改以下内容:

minlen = 8 口令长度至少包含 8 个字符

dcredit = -1 口令包含N个数字

ucredit = -1 口令包含N大写字母

ocredit = -1 口令包含N个特殊字符

lcredit = -1 口令包含N个小写字母

3、设置密码有效期

编辑login.defs

vim /etc/login.defs

login.defs 配置项说明

#密码的最大有效期

PASS_MAX_DAYS 180

#是否可修改密码,多少天后可修改

PASS_MIN_DAYS 0

#密码最小长度,pam_pwquality设置优先

PASS_MIN_LEN 8

#密码失效前多少天在用户登录时通知用户修改密码

PASS_WARN_AGE 15

4、删除无关账户

在/etc/passwd 或者 /etc/shadow 文件下查找无关账户

5、禁止存在空密码的帐号

安全起见,在/etc/passwd 中用户的密码是被保护的状态,即使用了*号来隐藏。而实际的密码内容是加密后保存在/etc/shadow 文件中,我们确认是否存在空口令的用户就确认该文件中密码对应字段的长度是否为 0, 如果为 0 则证明该用户密码为空。通过使用命令来查找是否存在该字段长度为 0 的用户


awk -F: 'length($2)==0 {print $1}' /etc/shadow //查找空密码用户指令

6、禁止wheel组以外的用户使用 su root

使用 PAM 认证模块进行 su 权限控制,禁止 wheel 用户组之外的用户使用 su - root 命令

/etc/pam.d/su

修改或添加配置文件的条目:

auth sufficient pam_rootok.so auth required pam_wheel.so group=wheel

auth required pam_wheel.so use_uid

限制使用 su 命令的账户 说明:su 命令用于在不同账户之间切换。为了增强系统安全性,有必要对 su 命令的使用权进行控制,只允许 root 和 wheel 群组的账户使用 su 命令,限制其他账户使用。

7、限制root用户ssh远程登录

修改 /etc/ssh/sshd_config

PermitRootLogin no

8、一键安全加固脚本使用

通过shell编程把所有需要设置的地方。全部写成一个shell脚本。然后运行


The End
微信