一、项目和任务描述:
假定你是某企业的网络安全工程师,对于企业的服务器系统,根据任务要求确保各服务正常运行,并通过综合运用登录和密码策略、数据库安全策略、流量完整性保护策略、事件监控策略、防火墙策略等多种安全策略来提升服务器系统的网络安全防御能力。本模块要求对具体任务的操作截图并加以相应的文字说明,以word文档的形式书写,以PDF格式保存,以赛位号作为文件名.
二、服务器环境说明
AServer08(Windows)系统:用户名administrator密码P@ssw0rd
AServer09(Linux)系统:用户名root密码123456
二、说明:
1.所有截图要求截图界面、字体清晰,并粘贴于相应题目要求的位置;
2.文件名命名及保存:网络安全模块A-XX(XX为工位号),PDF格式保存;
3.文件保存到U盘提交。
(为避免混淆,Windows系统我会用红色标明,Linux会用蓝色标明)
A-1 登录安全加固(Windows, Linux)
请对服务器Windows、Linux按要求进行相应的设置,提高服务器的安全性。
1.密码策略(Windows, Linux)
a.最小密码长度不少于13个字符(Windows),将密码长度最小值的属性配置界面截图:
登录虚拟机后,找到本地安全策略(可使用快捷键win+R输入secpol.msc进入),依次进入账户策略,密码策略,密码长度最小值,设置密码截图即可(不要忘记点击应用)
b.密码必须符合复杂性要求(Linux),将/etc/pam.d/system-auth配置文件中对应的部分截图:
Linux系统中,需要设置密码复杂性需要进入到/etc/pam.d/system-auth目录中,可以直接使用命令vi直接编辑文件
2.用户安全管理(Windows)
a.设置取得文件或其他对象的所有权,将该权限只指派给administrators组,将取得文件或其它对象的所有权属性的配置界面截图:
本题同样在本地安全策略中,点击本地策略,找到用户权限分配,点击取得文件所有权,只指派给administrator
b.禁止普通用户使用命令提示符,将阻止访问命令提示符配置界面截图:
本题在组策略中(可使用快捷键win+R,输入gpedit.msc进入),点击用户配置,依次点击管理模版,系统,阻止访问命令提示符
A-2 Nginx安全策略(Linux)
1.禁止目录浏览和隐藏服务器版本和信息显示,将/etc/nginx/nginx.conf配置文件相关配置项截图:
使用vi命令直接进入编辑界面,输入"i"命令编辑/etc/nginx/nginx.conf文件
2.限制HTTP请求方式,只允许GET、HEAD、POST,将/etc/nginx/conf.d/default.conf配置文件相关配置项截图:
还是和之前编辑文件的步骤一样,编辑/etc/nginx/conf.d/default.conf文件
3.设置客户端请求主体读取超时时间为10,将/etc/nginx/nginx.conf配置文件相关配置项截图:
进入编辑页面,找到client_body_timeout "client"意为客户端,"body"意为主体,"timeout"意为超时
4.设置客户端请求头读取超时时间为10将/etc/nginx/nginx.conf配置文件相关配置项截图:
这次找到client_header_timeout,"client"和"timeout"的意思都和上面一样,只有"header"意为头部,所以对应题目的“客户端请求头读取”,将超时时间设置为10
5.将Nginx服务降权,使用www用户启动服务,将/etc/nginx/nginx.conf配置文件相关配置项截图:
这次要进入新的目录,所以修改完其他目录的参数后要按组合键"shift+:"并输入wq保存并退出,再重复之前的步骤进入新文件的编辑页面,设置Nginx降权,可以理解为只分发普通用户的权限,所以可以写成user www
A-3日志监控(Windows)
1.安全日志文件最大大小为128MB,设置当达到最大的日志大小上限时,按需要覆盖事件(旧事件优先),将日志属性-安全(类型:管理的)配置界面截图:
这个就很简单了,打开事件查看器(可使用快捷键win+R输入eventvwr.msc打开,虽然命令有点长,但是做熟练之后也不会太难),点击Windows日志,在Windows日志中可以看到所有的日志,因为日志大小是按照KB计算的,所以按照1MB=1*1024kb计算就好,右击要配置的日志文件,点击属性,在属性界面配置即可
2.应用日志文件最大大小为64MB,设置当达到最大的日志大小上限时将其存档,不覆盖事件,将日志属性-应用程序(类型:管理的)配置界面截图:
配置完安全日志后,点击应用再回到日志界面,右击应用程序,点击属性进入配置界面
3.系统日志文件最大大小为32MB,设置当达到最大的日志大小上限时,不覆盖事件(手动清除日志),将日志属性-系统(类型:管理的)配置界面截图:
还是重复上面的步骤,进入系统日志属性界面,配置即可
要注意的是,三种日志配置中达到日志最大大小时覆盖时间的方式不一样,注意审题
A-4中间件服务加固SSHD\VSFTPD\IIS(Windows, Linux)
1.SSH服务加固(Linux)
a.修改ssh服务端口为2222,使用命令netstat -anltp | grep sshd查看SSH服务端口信息,将回显结果截图:
这个要在文件里先设置端口号然后重启,输入命令才能有回显信息,还是用熟悉的vi命令进入/etc/ssh/sshd_config文件的编辑页面,找到#port 22,注意要把“#”去掉,因为带#代表不执行,去掉#后,将端口号设置为2222,按组合键shift+:并输入wq保存退出,使用命令service sshd restart命令重启(service为服务,sshd就是要配置的ssh服务,restart就是重启),然后再输入回显命令得到结果
如果题目只要结果的话只截这张图就好了,要步骤的话就照上面做
b.ssh禁止root用户远程登录,将/etc/ssh/sshd_config配置文件中对应的部分截图:
这个和上面的文件一样,进入编辑页面,找到#PermitRootLogin yes,和上面一样去掉"#"然后将yes改为no
c.设置root用户的计划任务。每天早上7:50自动开启ssh服务,22:50关闭;每周六的7:30重新启动ssh服务,使用命令 crontab -l,将回显结果截图:
这题不在目录中的文件里编辑,需要输入命令 crontab -u root -e 进入文件,输入命令然后快捷键shift+:并输入wq保存退出,再输入crontab -l 得到回显效果
d.修改SSHD的PID档案存放地,将/etc/ssh/sshd_config配置文件中对应的部分截图;
进入文件编辑页面,找到PidFile,将后面的内容改为当前目录名称
2.VSFTPD服务加固(Linux)
a.设置运行vsftpd的非特权系统用户为pyftp,将/etc/vsftpd/vsftpd.conf配置文件下的相关配置项截图:
编辑/etc/vsftpd/vsftpd.conf,找到nopriv,将用户名改为pyftp
b.限制客户端连接的端口范围在50000-60000,将/etc/vsftpd/vsftpd.conf配置文件下的相关配置项截图:
编辑/etc/vsftpd/vsftpd.conf,限制端口最小为50000最大为60000(pasv_min_port=50000 pasv_max_port=60000)
c.限制本地用户登录活动范围限制在home目录,将/etc/vsftpd/vsftpd.conf配置文件下的相关配置项截图:
限制在home目录,可以理解为本地登录,所以可以写成这样:
d.设置数据连接的超时时间为2分钟,将/etc/vsftpd/vsftpd.conf配置文件中对应的部分截图:
编辑/etc/vsftpd/vsftpd.conf,找到data_connection_timeout,将数值修改为120(因为是按秒来计算,所以两分钟=120秒)
e.设置站点本地用户访问的最大传输速率为1M,将/etc/vsftpd/vsftpd.conf配置文件中对应的部分截图:
这个题要一点点理解来找,local为本地用户,max为最大,rate就是传输速率了,把数值改成1000000就可以
3.IIS加固(Windows)
a.开启IIS的日志审计记录(日志文件保存格式为W3C,只记录日期、时间、客户端IP地址、用户名、方法),将W3C日志记录字段配置页面截图:
点击开始,在开始页面有一个iis管理器,点击网站,再点击"main"(我的子选项名字是main,可能和其他的不一样,但是点击网站里的子选项就好了),点击日志,在日志界面里有格式和字段,按照题目所要求的来选择就好了
b.关闭IIS的WebDAV功能增强网站的安全性,将警报提示信息截图:
这个稍微有一点麻烦,需要重新安装iis管理器再重启一下,在服务器管理器中找到"角色",点击"删除角色",点击"下一步"然后取消勾选"web服务器",然后根据向导提示删除完成后,重启靶机,重启完成后,等待删除完成,然后还是在服务器管理器中找到"角色",点击"添加角色",然后再勾选web服务器,然后在"角色服务"这个页面里,勾选webdav发布,安装即可,安装成功后,打开iis管理器,点击网站,点击子选项,里面有一个webdav创作规则,点开就可以发现里面会有一个"webdav已禁用"
这个是最终答案
c.防止文件枚举漏洞枚举网络服务器根目录文件,禁止IIS短文件名泄露,将配置命令截图。
这个要通过cmd进入目录进行配置,直接来看命令吧
A-5本地安全策略(Windows)
A-5都是在本地安全策略里面的安全选项找的,只要眼够快那就做得快,注意审题即可,我就不一一发步骤了,直接上截图吧
1.禁止匿名枚举SAM帐户,将不允许SAM账户的匿名枚举的属性配置界面截图:
2.禁止系统在未登录的情况下关闭,将允许系统在未登录的情况下关闭的属性配置界面截图:
3.禁止存储网络身份验证的密码和凭据,将不允许存储网络身份验证的密码和凭据的属性配置界面截图:
4.禁止将Everyone权限应用于匿名用户,将Everyone权限应用于匿名用户的属性配置界面截图:
5.在超过登录时间后强制注销,将在超过登录时间后强制注销的属性配置界面截图:
6.关闭系统时清除虚拟内存页面文件,将关机:清除虚拟内存页面文件的属性配置界面截图:
7.禁止软盘复制并访问所有驱动器和所有文件夹,将恢复控制台:允许软盘复制并访问所有驱动器和所有文件夹的属性配置界面截图:
8.设置不显示上次登录的用户名,将交互式登录:不显示最后的用户名属性 配置界面截图:
A-6防火墙策略(Linux)
太好了又是Linux,和A-5一样,这个只需要配置防火墙就可以了,经常做的话会熟练的
1.设置防火墙允许本机转发除ICMP协议以外的所有数据包,将iptables配置命令截图:
我做的话-j后面是用ACCEPT的,不过还是按照这个来吧这个是标准答案
2.为防止SSH服务被暴力枚举,设置iptables防火墙策略仅允许172.16.10.0/24网段内的主机通过SSH连接本机,将iptables配置命令截图:
3.为防御拒绝服务攻击,设置iptables防火墙策略对传入的流量进行过滤,限制每分钟允许3个包传入,并将瞬间流量设定为一次最多处理6个数据包(超过上限的网络数据包将丢弃不予处理),将iptables配置命令截图:
4.只允许转发来自172.16.0.0/24局域网段的DNS解析请求数据包,将iptables配置命令截图:
5.为防御IP碎片攻击,设置iptables防火墙策略限制IP碎片的数量,仅允许每秒处理1000个,将iptables配置命令截图:
6.禁止转发来自MAC地址为29:0E:29:27:65:EF主机的数据包,将iptables配置命令截图:
7.禁止任何机器ping本机,将iptables配置命令截图:
8.禁止本机ping任何机器,将iptables配置命令截图:
有需要环境的可以去看看Kanyo236-CSDN博客 他那边有环境以及B模块赛题解析